aiffdec: try #2 to fix bps
authorMichael Niedermayer <michaelni@gmx.at>
Mon, 27 Aug 2012 14:50:59 +0000 (16:50 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Mon, 27 Aug 2012 14:50:59 +0000 (16:50 +0200)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavformat/aiffdec.c

index d56ab53..728e1f7 100644 (file)
@@ -105,7 +105,7 @@ static unsigned int get_aiff_header(AVFormatContext *s, int size,
     codec->codec_type = AVMEDIA_TYPE_AUDIO;
     codec->channels = avio_rb16(pb);
     num_frames = avio_rb32(pb);
-    codec->bits_per_coded_sample = avio_rb16(pb) / FFMAX(codec->channels, 1);
+    codec->bits_per_coded_sample = avio_rb16(pb);
 
     exp = avio_rb16(pb);
     val = avio_rb64(pb);
@@ -160,7 +160,7 @@ static unsigned int get_aiff_header(AVFormatContext *s, int size,
     /* Block align needs to be computed in all cases, as the definition
      * is specific to applications -> here we use the WAVE format definition */
     if (!codec->block_align)
-        codec->block_align = (codec->bits_per_coded_sample * codec->channels) >> 3;
+        codec->block_align = (av_get_bits_per_sample(codec->codec_id) * codec->channels) >> 3;
 
     if (aiff->block_duration) {
         codec->bit_rate = codec->sample_rate * (codec->block_align << 3) /