aiffdec: support QDM2
authorMichael Niedermayer <michaelni@gmx.at>
Tue, 28 Aug 2012 01:18:21 +0000 (03:18 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Tue, 28 Aug 2012 01:18:21 +0000 (03:18 +0200)
Fixes ticket204

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavformat/aiffdec.c

index 728e1f7..a4606a6 100644 (file)
@@ -19,6 +19,7 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#include "libavutil/intreadwrite.h"
 #include "libavutil/mathematics.h"
 #include "libavutil/dict.h"
 #include "avformat.h"
@@ -273,6 +274,8 @@ static int aiff_read_header(AVFormatContext *s)
                 return AVERROR(ENOMEM);
             st->codec->extradata_size = size;
             avio_read(pb, st->codec->extradata, size);
+            if (st->codec->codec_id == AV_CODEC_ID_QDM2 && size>=12*4 && !st->codec->block_align)
+                st->codec->block_align = AV_RB32(st->codec->extradata+11*4);
             break;
         case MKTAG('C','H','A','N'):
             if(ff_mov_read_chan(s, st, size) < 0)