This fixes several chroma artifacts in several videos
Unified · Split
| @@ -4553,6 +4553,7 @@ static int vc1_decode_b_mb_intfr(VC1Context *v) · 4552 unmodified lines | ||
| 4553 | 4553 | vc1_mc_4mv_luma(v, i, 1, 1); |
| 4554 | 4554 | } |
| 4555 | 4555 | vc1_mc_4mv_chroma4(v, 0, 0, 0); |
| 4556 | + vc1_mc_4mv_chroma4(v, 1, 1, 1); | |
| 4556 | 4557 | } else { |
| 4557 | 4558 | vc1_mc_1mv(v, 0); |
| 4558 | 4559 | vc1_interp_mc(v); |
| @@ -4573,6 +4574,7 @@ static int vc1_decode_b_mb_intfr(VC1Context *v) · 14 unmodified lines | ||
| 4573 | 4574 | } |
| 4574 | 4575 | |
| 4575 | 4576 | vc1_mc_4mv_chroma4(v, 0, 0, 0); |
| 4577 | + vc1_mc_4mv_chroma4(v, 1, 1, 1); | |
| 4576 | 4578 | } else if (bmvtype == BMV_TYPE_INTERPOLATED) { |
| 4577 | 4579 | mvbp = v->twomvbp; |
| 4578 | 4580 | dmv_x = dmv_y = 0; |
| @@ -4624,7 +4626,7 @@ static int vc1_decode_b_mb_intfr(VC1Context *v) · 45 unmodified lines | ||
| 4624 | 4626 | vc1_mc_4mv_luma(v, 1, dir, 0); |
| 4625 | 4627 | vc1_mc_4mv_luma(v, 2, dir2, 0); |
| 4626 | 4628 | vc1_mc_4mv_luma(v, 3, dir2, 0); |
| 4627 | − vc1_mc_4mv_chroma4(v, 0, 0, 0); | |
| 4629 | + vc1_mc_4mv_chroma4(v, dir, dir2, 0); | |
| 4628 | 4630 | } else { |
| 4629 | 4631 | dir = bmvtype == BMV_TYPE_BACKWARD; |
| 4630 | 4632 | |