[MPlayer-users] liba52 downmixing 6ch audio
Nicholas Schell
nschell at gmail.com
Thu Sep 27 07:58:54 CEST 2007
Someone pointed out to me that my mplayer builds (for win32) for some
reason had offset downmixing of 6ch AC3 content. The audio seemed to
be much more prevalent in the right speakers then in the left. I
checked into it myself, and it definitely did not sound right. I
checked in other more well known win32 mplayer builds, and they all
had the same issue. Which at least discounted me making some huge
monumental error while building. So then I was poking around in the
liba52 sources and noticed there were two modes to downmix to 2
channels. Either A52_DOLBY or A52_STEREO. I then proceeded to build
a52dec and tried a 6ch sample with normal stereo output -o win (or
also wav) and then with -o windolby (or wavdolby). The samples with
the dolby downmixing had the exact same weird issue as with mplayer,
more sound being shifted to the right channels then the left. But the
normal stereo downmixing sounded correct, and equivalent to what one
would get using ffdshow with 2/0 stereo downmixing.
In "libmpcodecs\ad_liba52.c" all downmixing to 2ch is forced to the
A52_DOLBY mode, and A52_STEREO is commented out. This doesn't seem
right. The only reason to use dolby surround mixing would be if you
are outputting to a receiver. But if the file is already real 5.1
dolby, it would be foolish to downmix to dolby surround then output to
the receiver. So I'm just wondering, shouldn't this be set to use
A52_STEREO for downmixing to 2 channels? Or was there some reason it
was originally set to A52_DOLBY, it has apparently been like that for
ages. I'm guessing this is somehow a win32 build issue of liba52, as
it makes no sense that something like this could have been overlooked
for so long on *nix. Though somehow the issue has been equally
overlooked on win32 builds for so long. Or I just have made some
mistake myself. I've uploaded an AC3 6ch sample to the mplayer ftp
(liba52-6ch-downmixing.ac3). Can anyone else confirm this on
non-windows builds with a52dec? When the vocals hit it should be quite
noticeable.
In my own builds now at least I have uncommented A52_STEREO and
commented A52_DOLBY to fix the issue. Just thought I would share these
strange exploits. Though I'm guessing mplayer will be saying goodbye
to liba52 soon anyways with the new ffmpeg ac3 decoder on the way.
More information about the MPlayer-users
mailing list