[FFmpeg-devel] [RFC] Channel layouts

Andreas Öman andreas
Sun Sep 7 16:20:50 CEST 2008

M?ns Rullg?rd wrote:
> Don't forget that the channel layout must specify not only which
> components are present, but also their order.  Currently lavc tells
> you neither, making it practically useless for multi-channel audio.

The idea is that the order is the same as the CHANNEL_LAYOUT bits.
I.e. LEFT must be the first channel if it exists, then RIGHT, etc.
Still, this would only be mandatory for codecs (and formats) that
specifies channel_layout.

This is IMHO no more strange than that PIX_FMT_YUV always have
the planes in Y,U,V order. From an application perspective i find
this much more convenient. There might be more work in the decoders
though. Still, with float_to_int16_interleave() (that all of the
"popular" multi-channel codecs currently use (AC3, DTS and AAC))
this is just a matter of swizzling a few pointers at setup time.

For other codecs there might be more work involved. However,
that day ffmpeg gets planar audio formats this is even less
an issue.

> 2.1 and 4.1 are equally, if not more, likely.  I have such DVDs, but
> none with x.0 where x > 2.

Just for the record, i've stumbled across 5.0 AC3 in DVB content.

More information about the ffmpeg-devel mailing list