Virtual Sterioscope Recording

I need to develop a virtual platform where i sound objects play different sounds and is listten by a single listner object. The trick is the listning object should be able to determine the location of the sound object that plays the sound, just like we identify the location where a sound is coming from when we hear. I need to be able to have multiple objects playing multiple sounds and listen to it through a set of head phones.
Who is Participating?
fredshovelConnect With a Mentor Commented:
Listening to the end result through headphones would only give you an either left /right or the Psychoacoustic centering of the audio. The way the human ear determin sound direction is much more complex that just left right centre.  Take a look at Psychoacoustics:
Are you inventing this or do you know of it in practice?
wdfdo1986Author Commented:
I want to do this for a client. I know this was not a thing that has been done earlier. So I want try it rather than saying it's impossible. I know its possible but difficult. So I want some help from u guys.
Cloud Class® Course: Ruby Fundamentals

This course will introduce you to Ruby, as well as teach you about classes, methods, variables, data structures, loops, enumerable methods, and finishing touches.

wdfdo1986Author Commented:
Using a head-related transfer functions (HRTFs) I managed to generate two audios relevant to two ears. I want mix them and generate one audio file. What I want to do is put one audio file to channel of one ear and other one to channel of other ear. Although I found an algorithm to mix it, it doesn't mix in the way I want. So can anyone help me in that matter.
fredshovelConnect With a Mentor Commented:
I would put each track on a multitrack recorder.  I use Cool Edit but you can even use the free Audacity
Adjust the mix of each track until it sounds exactly the way you want it to and then save it to a stereo file.
wdfdo1986Author Commented:
I don't understood all of your answer. But as I understood u r talking about a way of doing it physically. Don't u know how to it programatically.
And also I felt when I am reading it that I haven't made myself clear. I want to create a wave file that make the listener hear from the headphone, two wave files I created from two ears separately. In other words one from left ear only and other from other ear only.
Jesse HouwingConnect With a Mentor Scrum Trainer | Microsoft MVP | ALM Ranger | ConsultantCommented:
I'd look into DirectX, this technology is used in almost every 3D game.

There is a managed wrapper for DirectX which allows you to access these API's directly in.NET.
wdfdo1986Author Commented:
I tried with that library. But I couldn't find a good way of doing that. However i want a virtual platform.
And as I said earlier I found hrtfs and I created two wave files that related to two ears. But I couldn't mix them and create one wave file. I want to do it in the way I said earlier.
Danushka Fernando
GrandSlamFXConnect With a Mentor Commented:
Hi wdfdo 1986.

I am not a programmer, but work with audio/video production.

After reading this:

" I found hrtfs and I created two wave files that related to two ears. But I couldn't mix them and create one wave file"

I think what you are trying to create in your program is what is called "binaural audio recording" or "3d audio recording". I found a couple of wikipedia articles and some sound samples.  A simple binaural recording can be stored in a standard stereo wave file with left and right track. Each track will represent one ear and normally the technicians use a "dummy head" with small microphones inside the dummy's head to achieve the effect. To hear it correctly the listener will have to use head phones.

The links:

this is about 3d audio and includes some other tricks.. :

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.