I think everyone is kinda barking up the wrong tree with this. I've run some tests, and I've concluded: it's not a Mac thing, it's not an encoding thing. It's VLC either misreading a channel identifier in the audio stream/file header, or making an erroneous assumption about the how the channel assignments should be. In any case, I can show it's VLC that's the problem. To wit:
I'm playing the stock Microsoft test identifier 5.1 surround WAV ("Front Left, Front Right, Center..." you've heard the guy; it's here:
http://download.microsoft.com/download/ ... hannel.exe). 48kHz, 6 mono channels in a WAV wrapper. No encoding, straight PCM wave audio. Channels are assigned according to the "Zero-based order within multi-channel datastream" (see
http://en.wikipedia.org/wiki/Surround_s ... o_speakers) i.e, L, R, C, LFE, Ls, Rs.
VLC 2.1.1 plays this WAV correctly. Audio comes out the correct channels. So it is possible for VLC to do it.
Take that same 6-channel WAV, play it with QuickTime (I have Pro). QT Player also plays the WAV correctly. Check the Movie Properties in QuickTime Pro, the Audio Settings tab. Channels appear in the same order.
In QuickTime, save the WAV as a MOV. Play the MOV in QuickTime. It plays correctly. Channels still appear in the same order.
Play the MOV in VLC -- and it screws up the order of the channels as people have been complaining about for years.
If you look at that table in the Wikipedia article, you see that under the DTS/AAC spec, the Left Surround channel has an ID of 3. Sure enough, that's the third channel down, the center channel in the other numbering scheme. The Right Surround under DTS/AAC is ID'ed 4 -- which is the fourth channel down, the LFE channel in the other scheme.
Notice how everyone's been bitching about how their center channel audio comes out the Left Surround, and there's virtually no Right Surround? Q.E.D.
I predict that VLC is (and has been for years) making an assumption that any QuickTime MOV it plays must be using the DTS/AAC channel assignment scheme, and it applies their weird channel mapping for it, regardless of whether that may truly be the case or not.
We can rule out a Mac/PC thing. I have VLC 2.1.1 installed on both a Mac and a PC. It functions the same way on both platforms. VLC *can* play a surround WAV with channels assigned correctly. But It mis-assigns the channels when that same WAV is inside a QT MOV, when QuickTime plays it properly.
it's not an encoding thing; no DTS/AAC, AC3, SPDIF, HDMI, none of that is involved. All the other issues mentioned in this thread and others are probably false leads. It's VLC that's simply assigning channels wrong, at least with QuickTime MOVs. It's probably the same error occurring with the encoded formats too, so having the end-user trying various encoding settings and OS versions to fix an inherent problem higher up in the program code is certainly an exercise in futility.
I wish I knew how to fix it -- but I'm not a coder. It's up to the programmer team to suss out what they're doing -- and come up with a way to stop doing it!
Team -- what say you?
>> Mark