[SCM] libav/experimental: Set blkalign to maximum framesize to allow playback on WMP (see issue 2455 and issue 2446).

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 17:21:10 UTC 2013


The following commit has been merged in the experimental branch:
commit f6bf6e511d297f0b74085fc464d2743e704f6208
Author: Carl Eugen Hoyos <cehoyos at rainbow.studorg.tuwien.ac.at>
Date:   Thu Dec 30 14:21:14 2010 +0000

    Set blkalign to maximum framesize to allow playback on WMP (see issue 2455 and issue 2446).
    
    Originally committed as revision 26167 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavformat/riff.c b/libavformat/riff.c
index 3d584a3..7db1c87 100644
--- a/libavformat/riff.c
+++ b/libavformat/riff.c
@@ -373,6 +373,10 @@ int ff_put_wav_header(ByteIOContext *pb, AVCodecContext *enc)
     if (enc->codec_id == CODEC_ID_MP2 || enc->codec_id == CODEC_ID_MP3 || enc->codec_id == CODEC_ID_AC3) {
         blkalign = enc->frame_size; //this is wrong, but it seems many demuxers do not work if this is set correctly
         //blkalign = 144 * enc->bit_rate/enc->sample_rate;
+        //For high bitrate AC-3, set blkalign to maximum bytes per frame value
+        //to allow playback on WMP and MPlayer
+        if (enc->bit_rate > 384000)
+            blkalign = 3840;
     } else if (enc->codec_id == CODEC_ID_ADPCM_G726) { //
         blkalign = 1;
     } else if (enc->block_align != 0) { /* specified by the codec */

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list