[FFmpeg-devel] [RFC] Channel layouts
Peter Ross
pross
Tue Nov 4 07:23:12 CET 2008
On Sun, Nov 02, 2008 at 12:07:18AM +0100, Michael Niedermayer wrote:
> On Tue, Sep 23, 2008 at 10:43:22PM +1000, Peter Ross wrote:
> > On Sun, Sep 07, 2008 at 08:58:28PM +1000, Peter Ross wrote:
> > > On Sat, Aug 30, 2008 at 11:05:43AM +1000, Peter Ross wrote:
> > > > On Fri, Aug 29, 2008 at 04:28:00PM +1000, Peter Ross wrote:
> > > > > Hi.
> > > > >
> > > > > This patch adds the notion of channel layouts to libavcodec.
> > > >
> > > > Patch updated. Thanks for the feedback.
> > >
> > > Patch updated.
> >
> > Patch updated.
> >
> > -- Peter
> > (A907 E02F A6E5 0CD2 34CD 20D2 6760 79C5 AC40 DD6B)
>
> [...]
>
> > Index: libavformat/riff.c
> > ===================================================================
> > --- libavformat/riff.c (revision 15391)
> > +++ libavformat/riff.c (working copy)
> > @@ -213,6 +213,10 @@
> > { 0, 0 },
> > };
> >
> > +#define RIFF_SPEAKER_5POINT1_INCORRECT (CHANNEL_FRONT_LEFT|CHANNEL_FRONT_RIGHT|\
> > + CHANNEL_FRONT_CENTER|CHANNEL_LOW_FREQUENCY|\
> > + CHANNEL_BACK_LEFT|CHANNEL_BACK_RIGHT)
> > +
> > #ifdef CONFIG_MUXERS
> > offset_t start_tag(ByteIOContext *pb, const char *tag)
> > {
> > @@ -373,7 +377,11 @@
> > cbSize = FFMIN(size, cbSize);
> > if (cbSize >= 22 && id == 0xfffe) { /* WAVEFORMATEXTENSIBLE */
> > codec->bits_per_coded_sample = get_le16(pb);
> > - get_le32(pb); /* dwChannelMask */
> > + codec->channel_layout = get_le32(pb); /* dwChannelMask */
> > + /* Compensate for incorrect 5.1 configurations.
> > + See: http://msdn.microsoft.com/en-us/library/aa474707.aspx */
> > + if (codec->channel_layout == RIFF_SPEAKER_5POINT1_INCORRECT)
> > + codec->channel_layout = CHANNEL_LAYOUT_5POINT1;
>
> the text linked seems to be about MS APIs, these may be related to RIFF but
> then this is not clear ...
> Besides this would make storing 5p1 with back channels impossible
Fair enough. I have remvoed the MS API fixup from the patch.
-- Peter
(A907 E02F A6E5 0CD2 34CD 20D2 6760 79C5 AC40 DD6B)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: layout-riff-6.diff
Type: text/x-diff
Size: 621 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20081104/1f429ea4/attachment.diff>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20081104/1f429ea4/attachment.pgp>
More information about the ffmpeg-devel
mailing list