[Ffmpeg-devel] channel ordering and downmixing

Justin Ruggles justinruggles
Thu Apr 5 10:47:56 CEST 2007


Justin Ruggles wrote:
> I need some advice on a channel ordering and downmixing framework.  I've
> been trying to figure out the best solution for a while and keep running
> into road blocks.

After spending too much time just pondering different ideas, I decided
to give it a go and try one out.

The attached patch isn't really meant to be a working patch, but more of
a conceptual sketch of a basic design.  I want to get ideas and comments
before taking the time to implement it in full.

The general concept is:

 - add an AVChannelLayout struct to AVCodecContext
 - have the muxer set its preferred channel layout in read_header()
 - have the decoder override the channel layout if it wants to
 - user-level API: av_channel_mix_init(), av_channel_mix(),
 - the encoder can set the channel layout in encode_init or just set the
   number of channels and set the mask to CHANNEL_MASK_NONE to let the
   muxer decide
 - if avctx->channel_layout.mask is CHANNEL_MASK_NONE, the muxer should
   set the channel layout

Any suggestions/critiques would be great. :)


-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: channelmix_sketch_1.diff
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20070405/edb792a0/attachment.txt>

More information about the ffmpeg-devel mailing list