[MPlayer-dev-eng] [PATCH] Support 32-bit samples in ad_ffmpeg (fixes improper channel ordering in flac)

Jason Tackaberry tack at urandom.ca
Sat Aug 8 04:50:55 CEST 2009


On Fri, 2009-08-07 at 14:52 -0400, Jason Tackaberry wrote:
> After some fairly cursory testing, it does appear that the ffmpeg audio
> decoders might have standardized on SMPTE/ITU channel ordering, because
> setting AF_CHANNEL_LAYOUT_LAVC_DCA_6CH_DEFAULT and
> AF_CHANNEL_LAYOUT_LAVC_AC3_6CH_DEFAULT in libaf/reorder_ch.h both to
> AF_CHANNEL_LAYOUT_5_1_A fixes the channel ordering.  I've not yet had a
> chance to test other content.
> 
> Those tracking ffmpeg commits, does this sound familiar?

Answering my own question, this is exactly what happened, and it began
with the "Channel layouts" thread on ffmpeg-devel:

http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2008-August/052382.html

Some months of discussion ensued and eventually the multichannel audio
api got merged.  The end result is that ffmpeg audio codecs now are
supposed to output in a determined channel order which looks like a
superset of SMPTE/ITU.

This should simplify things in mplayer a bit.

I've tested 6ch aac, wav, ac3, dts, flac and 5ch vorbis, flac, and they
all work properly with AF_CHANNEL_LAYOUT_5_1_A.  Unfortunately 5.1
channel vorbis seems to be an utterly hopeless cause.  Different version
of oggenc have different channel orders, none of which end up being
decoded (by either ffvorbis or tremor) in an order that can be treated
by the existing defined 5.1 A-E layouts.

Cheers,
Jason.




More information about the MPlayer-dev-eng mailing list