]> git.sesse.net Git - ffmpeg/commitdiff
Support channel layout when demuxing aif files.
authorCarl Eugen Hoyos <cehoyos@ag.or.at>
Sat, 23 Apr 2011 08:31:03 +0000 (10:31 +0200)
committerCarl Eugen Hoyos <cehoyos@ag.or.at>
Sat, 23 Apr 2011 08:31:03 +0000 (10:31 +0200)
libavformat/Makefile
libavformat/aiffdec.c

index 45871721b64d242cd787c87b5daeda2e3d1f7c1f..f83642f30c51cb97ee78be1d42e520040018d924 100644 (file)
@@ -23,7 +23,7 @@ OBJS-$(CONFIG_AC3_DEMUXER)               += ac3dec.o rawdec.o
 OBJS-$(CONFIG_AC3_MUXER)                 += rawenc.o
 OBJS-$(CONFIG_ADTS_MUXER)                += adtsenc.o
 OBJS-$(CONFIG_AEA_DEMUXER)               += aea.o pcm.o
-OBJS-$(CONFIG_AIFF_DEMUXER)              += aiffdec.o riff.o pcm.o
+OBJS-$(CONFIG_AIFF_DEMUXER)              += aiffdec.o riff.o pcm.o caf.o
 OBJS-$(CONFIG_AIFF_MUXER)                += aiffenc.o riff.o
 OBJS-$(CONFIG_AMR_DEMUXER)               += amr.o
 OBJS-$(CONFIG_AMR_MUXER)                 += amr.o
index 25a93f5fb9220368dbf1a48fc811e0fc134f659c..a3aecee0a8f05b5840d376b3e4caf2d2739bcb99 100644 (file)
@@ -23,6 +23,7 @@
 #include "avformat.h"
 #include "pcm.h"
 #include "aiff.h"
+#include "caf.h"
 
 #define AIFF                    0
 #define AIFF_C_VERSION1         0xA2805140
@@ -253,6 +254,11 @@ static int aiff_read_header(AVFormatContext *s,
             st->codec->extradata_size = size;
             avio_read(pb, st->codec->extradata, size);
             break;
+        case MKTAG('C','H','A','N'):
+            if (size < 12)
+                return AVERROR_INVALIDDATA;
+            ff_read_chan_chunk(s, size, st->codec);
+            break;
         default: /* Jump */
             if (size & 1)   /* Always even aligned */
                 size++;