[SCM] libav/experimental: try to demux even if codec is not recognized, should demux M1F1-float32C-AFsp.aif and fix #454

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 16:20:42 UTC 2013


The following commit has been merged in the experimental branch:
commit 3f60afad28eccc1d3e2bf55e537583b361ebdf2e
Author: Baptiste Coudurier <baptiste.coudurier at gmail.com>
Date:   Thu May 15 22:47:40 2008 +0000

    try to demux even if codec is not recognized, should demux M1F1-float32C-AFsp.aif and fix #454
    
    Originally committed as revision 13171 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavformat/aiff.c b/libavformat/aiff.c
index b9ebce5..55c47dd 100644
--- a/libavformat/aiff.c
+++ b/libavformat/aiff.c
@@ -366,7 +366,7 @@ static int aiff_read_header(AVFormatContext *s,
             offset = get_be32(pb);      /* Offset of sound data */
             get_be32(pb);               /* BlockSize... don't care */
             offset += url_ftell(pb);    /* Compute absolute data offset */
-            if (st->codec->codec_id)    /* Assume COMM already parsed */
+            if (st->codec->block_align)    /* Assume COMM already parsed */
                 goto got_sound;
             if (url_is_streamed(pb)) {
                 av_log(s, AV_LOG_ERROR, "file is not seekable\n");
@@ -390,8 +390,10 @@ static int aiff_read_header(AVFormatContext *s,
         }
     }
 
-    /* End of loop and didn't get sound */
-    return AVERROR_INVALIDDATA;
+    if (!st->codec->block_align) {
+        av_log(s, AV_LOG_ERROR, "could not find COMM tag\n");
+        return -1;
+    }
 
 got_sound:
     /* Now positioned, get the sound data start and end */

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list