2019-01-14 9:05 GMT+01:00, Jerome Borsboom <jerome.borsb...@carpalis.nl>: > 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.borsb...@carpalis.nl> > --- > My 'shuffle calculation of MV predictor candidates' patch overlooked the > corner case of 1 MB wide field interlace pictures. According to VC-1 spec > and the reference decoder, the B predictor is not used for for block 0 and > block 2 when the picture is 1 MB wide. This patch corrects this. > > libavcodec/vc1_pred.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/libavcodec/vc1_pred.c b/libavcodec/vc1_pred.c > index e1758a3817..77dda86cd0 100644 > --- a/libavcodec/vc1_pred.c > +++ b/libavcodec/vc1_pred.c > @@ -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;
I will push this if you don't request commit rights but shouldn't this be "b_valid &= c_valid;"? Carl Eugen _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel