avcodec/vc1: fix B predictor validity for 4-MV MBs
authorJerome Borsboom <jerome.borsboom@carpalis.nl>
Mon, 14 Jan 2019 08:05:24 +0000 (09:05 +0100)
committerCarl Eugen Hoyos <ceffmpeg@gmail.com>
Mon, 14 Jan 2019 12:37:37 +0000 (13:37 +0100)
The B predictor for 4-MV MBs in interlace field pictures is not used
for blocks 0 and 2 when the picture is 1 MB wide.

Signed-off-by: Jerome Borsboom <jerome.borsboom@carpalis.nl>
libavcodec/vc1_pred.c

index 8b5a9ea..9e29b44 100644 (file)
@@ -289,6 +289,8 @@ void ff_vc1_pred_mv(VC1Context *v, int n, int dmv_x, int dmv_y,
         case 3:
             off = -1;
         }
+        if (v->field_mode && s->mb_width == 1)
+            b_valid = b_valid && c_valid;
     }
 
     if (v->field_mode) {