[FFmpeg-cvslog] r25208 - in trunk/libavcodec: vc1.c vc1.h

kostya subversion
Sun Sep 26 15:54:36 CEST 2010


Author: kostya
Date: Sun Sep 26 15:54:35 2010
New Revision: 25208

Log:
RES_SM in WMV3 is really two flags, so split it in decoder

Modified:
   trunk/libavcodec/vc1.c
   trunk/libavcodec/vc1.h

Modified: trunk/libavcodec/vc1.c
==============================================================================
--- trunk/libavcodec/vc1.c	Sun Sep 26 13:09:43 2010	(r25207)
+++ trunk/libavcodec/vc1.c	Sun Sep 26 15:54:35 2010	(r25208)
@@ -306,11 +306,16 @@ int vc1_decode_sequence_header(AVCodecCo
     {
         v->zz_8x4 = wmv2_scantableA;
         v->zz_4x8 = wmv2_scantableB;
-        v->res_sm = get_bits(gb, 2); //reserved
-        if (v->res_sm)
+        v->res_y411   = get_bits1(gb);
+        v->res_sprite = get_bits1(gb);
+        if (v->res_y411)
         {
             av_log(avctx, AV_LOG_ERROR,
-                   "Reserved RES_SM=%i is forbidden\n", v->res_sm);
+                   "Old interlaced mode is not supported\n");
+            return -1;
+        }
+        if (v->res_sprite) {
+            av_log(avctx, AV_LOG_ERROR, "WMVP is not supported\n");
             return -1;
         }
     }

Modified: trunk/libavcodec/vc1.h
==============================================================================
--- trunk/libavcodec/vc1.h	Sun Sep 26 13:09:43 2010	(r25207)
+++ trunk/libavcodec/vc1.h	Sun Sep 26 15:54:35 2010	(r25208)
@@ -160,7 +160,8 @@ typedef struct VC1Context{
 
     /** Simple/Main Profile sequence header */
     //@{
-    int res_sm;           ///< reserved, 2b
+    int res_sprite;       ///< reserved, sprite mode
+    int res_y411;         ///< reserved, old interlaced mode
     int res_x8;           ///< reserved
     int multires;         ///< frame-level RESPIC syntax element present
     int res_fasttx;       ///< reserved, always 1



More information about the ffmpeg-cvslog mailing list