improved detection of "AVC1" style H.264 patch by (Måns Rullgård <mru inprovide com>)
authorMåns Rullgård <mans@mansr.com>
Sun, 6 Mar 2005 19:40:12 +0000 (19:40 +0000)
committerMichael Niedermayer <michaelni@gmx.at>
Sun, 6 Mar 2005 19:40:12 +0000 (19:40 +0000)
Originally committed as revision 4013 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/h264.c

index a059449..ae99418 100644 (file)
@@ -2632,15 +2632,13 @@ static int decode_init(AVCodecContext *avctx){
 
     decode_init_vlc(h);
     
-    if(avctx->codec_tag != 0x31637661 && avctx->codec_tag != 0x31435641) // avc1
-        h->is_avc = 0;
-    else {
-        if((avctx->extradata_size == 0) || (avctx->extradata == NULL)) {
-            av_log(avctx, AV_LOG_ERROR, "AVC codec requires avcC data\n");
-            return -1;
-        }
+    if(avctx->extradata_size > 0 && avctx->extradata &&
+       *(char *)avctx->extradata == 1){
+        av_log(avctx, AV_LOG_INFO, "assuming AVC1 format\n");
         h->is_avc = 1;
         h->got_avcC = 0;
+    } else {
+        h->is_avc = 0;
     }
 
     return 0;