Skip to main content


Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Virtual Surround Plugin (Read 5758 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Virtual Surround Plugin

Hello everyone,

I have whipped up a quick hack based on the foo_dsp_extra plugin that is distributed with the SDK.

I have added another DSP entry similar to the Convert 5.1 to Stereo called Virtual 5.1. I have added HRTF processing to create a virtualization of the 5 surround channels. Sadly I don't have many 5.1 media files to test it. Also I would like to hear of people who have a surround system (I don't have one) and how good or bad the effect of surround is conveyed using HRTF synthesis.

To install place the foo_dsp_hrtf.dll in the components directory of f2bk.

There is also a file called hrtf.bin. Here are the coefficients of all the HRTF filters based on the Gardner and Martin measurements of the Kemar dummy at MIT. My implementation is very raw, so it will read the hrtf.bin where the working directory for foobar is. Usually it will be in the foobar2000 directory. Also I will not check if the file is available for reading or not, so make sure it is there. I hope that in the future I can improve the plugin in these matters and others. For now it has very very very (I mean VERY!!) basic functionalities.

Virtual 5.1 DSP processor will take a sound stream from a files that has a 6 channels (And preferably that abides by the 5.1 standard), process each channel by an HRTF filter and then mix it to a stereo stream. To experiment the auralization effect correctly you should listen to the audio using headphones.

This is the third delivery for the plugin. An LFE has been corrected and it has been compiled in order it won't ask for any library from VS2003.Net.

You can find the file attached to this post.

Anyway I expect some comments to improve it.


Virtual Surround Plugin

Reply #1
Hello everyone,

I've noticed and fixed the first bug. There was an error handling the LFE channel. That has been fixed now. So please download the file again. It has an updated version of the dll.

Anyway I would like to hear your comments of anyone that has tried it. Thanx!

Virtual Surround Plugin

Reply #2
I have recompiled the DLL in order to be statically linked to libraries. If you had some errors regarding some missing DLLs I think this should have solved it.

Virtual Surround Plugin

Reply #3
Anyway I expect some comments to improve it.
[a href="index.php?act=findpost&pid=227044"][{POST_SNAPBACK}][/a]

Hmm.. "feature" request: move your plugin into an own dll (call it foo_dsp_hrtf or whatever), for reasons that should be obvious (updating etc)
A riddle is a short sword attached to the next 2000 years.

Virtual Surround Plugin

Reply #4
Done ...

I've been having problems using the plugin with formats that suppor 5.1 channels other than WAV. I've tried Ogg and FLAC. Both compressed formats were derived from the same 5.1 WAV I have used for testing.

With ogg the audio stream is filled with cracking noises. Although CPU usage rises considerably when using Oggs it never reaches 100% ... So I wonder what the problem might be.

On the other hand, when using FLAC, the sound of each channel sounds different from the original. Sometimes one channel has more gain than other. It's also weird.

Has anyone tried it with AC3 files?

But using 5.1 WAVs I get less than 15% CPU usage and everything works fine.

For thesting I've used the DTS files located in here, and used dtsdec to decode them.

Virtual Surround Plugin

Reply #5
I have added a test file that comes from the Swedish Radio DTS test file. A word of warning the content of the audio file in swedish.

Get it here.