rawnar Posted September 1, 2010 Share Posted September 1, 2010 (edited) While playing games that are supported by the positional audio plug-ins, some people complained about the sounds coming from the back being to soft. So I went into the positional audio code of mumble and found on implementation fault. But I did found that setting up you speaker system can have the effect of lower volume sounds from the back.Let first explain how mumble takes care of positional audio. I will explain it for a 2D case and one can extrapolate it into 3D when it is needed. Lets first start of were mumble positions the speakers. The picture below gives the positions of the speakers in the x-z plane(x is to the right of you and z is to the front of you), were I left out the sub woofer.http://www.plaatjesupload.nl/bekijk/2010/09/01/1283321594-860.gifThe full names of the speakers are:FL = FRONT_LEFTFR = FRONT_RIGHTFC = FRONT_CENTERBL = BACK_LEFTBR = BACK_RIGHTBC = BACK_CENTERSL = SIDE_LEFTSR = SIDE_RIGHTFLC = FRONT_LEFT_OF_CENTERFRC = FRONT_RIGTH_OF_CENTERWithin mumble the direction of the sound source is calculate, here illustrated in the figure with the vector "dir". A dot product is performed between the "dir" vector and the unit vector pointing at a speaker, here I used the SR speaker. The dot product result is given by the green line "dot" and will range from -1 to 1. Where -1 will mean no sound output to this speaker and 1 means full sound output to this speaker. For instance when the sound is coming from the rear "dot" will be 0 for SL and SR so there volume will be put to half strength, and "dot" will be close to -1 for the front speakers giving them almost no output.Now we have to talk about how Windows configures were you speakers are. Windows has a pre-set of different speaker configurations, which you can find here. There are two configurations which are of particular interest.SPEAKER 5.1 =SPEAKER_FRONT_LEFT,SPEAKER_FRONT_RIGHT,SPEAKER_FRONT_CENTER,SPEAKER_LOW_FREQUENCY,SPEAKER_BACK_LEFT,SPEAKER_BACK_RIGHTSPEAKER 5.1 SURROUND =SPEAKER_FRONT_LEFT,SPEAKER_FRONT_RIGHT,SPEAKER_FRONT_CENTER,SPEAKER_LOW_FREQUENCY,SPEAKER_SIDE_LEFT,SPEAKER_SIDE_RIGHTAs you can see the speaker configuration 5.1 surround has no back speakers only side speakers, will the standard 5.1 has no side speakers but back speakers. This will mean that when you picked in windows the speaker configuration 5.1 surround the sounds from the rear will be giving less volume, but that is expected as you don't have any speakers behind you to represent this sound. So my opinion is that is you want better positional awareness use the standard 5.1 speaker configuration when you don't have a 7.1 system. If you want to know how the speakers are positioned, according to the info mumble gets from windows, go through the Audio wizard of mumble. At the end there is a page dedicated to positional audio, this will show the real position of the speakers.Then there is that option of headphones in the positional audio configuration. This option will positional all the speakers on the x-axis, which will make the volumes of sound coming from the front the same a sound coming from the back. But the side effect of it is that there is not front, back, up, down awareness any more. Edited September 1, 2010 by rawnar Quote Computer specs: AMD FX-8320, 8GB DDR3-SDRAM, AMD Radeon HD 7950, Asus Xonar D1, Windows 7 Ultimate 64bit/Debian Jessie AMD64. Link to comment Share on other sites More sharing options...
Administrators kissaki Posted September 1, 2010 Administrators Share Posted September 1, 2010 Nice investigation.Thanks for sharing.I enabled headset-mode, didn’t try it since then though.But with just 2 Boxes/Headset I don’t have real positional anyway. Will only be able to distinguish left and right (so, have to turn). Other than that, a specific volume could mean different things; specific front- or back-distance, or up- or down-distance.But I wouldn’t know where to put 4 Satellites and do wonder if it would be that much of an improvement. :P Quote Link to comment Share on other sites More sharing options...
rawnar Posted September 1, 2010 Author Share Posted September 1, 2010 Some sound cards support HTRF (Head related transfer function). You could try to set speaker configuration of windows to 7.1 or 5.1 and use the headphone option of your sound card to extend the headphone into a full 7.1 or 5.1 speaker configuration. It will be called something like CMSS-3D or Dobly Headphone or DTS Surround Sensation Headphone. Quote Computer specs: AMD FX-8320, 8GB DDR3-SDRAM, AMD Radeon HD 7950, Asus Xonar D1, Windows 7 Ultimate 64bit/Debian Jessie AMD64. Link to comment Share on other sites More sharing options...
rawnar Posted September 2, 2010 Author Share Posted September 2, 2010 One problem with this method, of the dot product between the direction vector and the vectors to the speakers, is that when more speakers are located in the front (like 5.1 and 7.1) the sound from the front will have more volume. The method works good for evenly distributed speakers over the unit circle, but not when the centre of mass of the speakers is not located at your head. At the moment slicer is working on a better implementation for the positional audio, that will solve this problem and give an even better representation of the source direction.I found out that on my system when I pick a speaker configuration of 5.1 I got 5.1 surround(there was no option for 5.1 surround). :-( This is not what one wants wants, but could be related to my sound-card. People that use the standard 5.1 or 7.1 surround muting your centre speaker will give a better representation of the direction. You must turn the centre speaker back on when you start using slicer improved positional audio, otherwise you will start to miss sound coming from the front. Quote Computer specs: AMD FX-8320, 8GB DDR3-SDRAM, AMD Radeon HD 7950, Asus Xonar D1, Windows 7 Ultimate 64bit/Debian Jessie AMD64. Link to comment Share on other sites More sharing options...
Administrators hacst Posted September 2, 2010 Administrators Share Posted September 2, 2010 Very nice writeup. I wonder if we shouldn't make this a technical post on our blog or at least put it in the wiki (of course only with your consent). Quote Link to comment Share on other sites More sharing options...
rawnar Posted September 3, 2010 Author Share Posted September 3, 2010 You may use this information freely, dD0T. But slicer will change the method in the near future. Off course we could also add the method used for the new implementation.I just found out why the 5.1 surround is picked. The 5.1 configuration with side speakers and no rear/back speaker comes from the Dobly and DTS standards. Quote Computer specs: AMD FX-8320, 8GB DDR3-SDRAM, AMD Radeon HD 7950, Asus Xonar D1, Windows 7 Ultimate 64bit/Debian Jessie AMD64. Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.