In XAudio2, does the mastering voice map channels to speakers in the order they appear in the header file? I can't actually find documented what the 'meaning' of, say, the third input channel to the mastering voice is. Going by the order in the header, it would be the LFE for a 2.1 setup, or the back left for 4.0. You need to know this if you're not using X3DAudio for matrix coefficient calculations (unless I missed something.) -- Andy
This depends on the speaker configuration of the system for Windows, and is fixed on Xbox 360. If you look at the XAudio2Sound3D sample, you'll see that it uses IXAudio2::GetDeviceDetails to retrieve the output devices' channel mask (audio.cpp, PrepareAudio), and then uses the channelmask value to interpret the coefficients (XAudio2Sound3D.cpp, RenderText). -- -Chuck Walbourn SDE, XNA Developer Connection This posting is provided "AS IS" with no warrenties, and confers no rights.
Thanks Chuck. Looks like I was on the right track, the channel order is the same as they're defined in the headers for each speaker config. -- Andy "Chuck Walbourn [MSFT]" wrote... > This depends on the speaker configuration of the system for Windows, and > is fixed on Xbox 360. > > If you look at the XAudio2Sound3D sample, you'll see that it uses > IXAudio2::GetDeviceDetails to retrieve the output devices' channel mask > (audio.cpp, PrepareAudio), and then uses the channelmask value to > interpret the coefficients (XAudio2Sound3D.cpp, RenderText).