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 | vc1_mc_4mv_luma(v, i, 1, 1); | 4553 | vc1_mc_4mv_luma(v, i, 1, 1); |
| 4554 | } | 4554 | } |
| 4555 | vc1_mc_4mv_chroma4(v, 0, 0, 0); | 4555 | vc1_mc_4mv_chroma4(v, 0, 0, 0); |
| 4556 | vc1_mc_4mv_chroma4(v, 1, 1, 1); | ||
| 4556 | } else { | 4557 | } else { |
| 4557 | vc1_mc_1mv(v, 0); | 4558 | vc1_mc_1mv(v, 0); |
| 4558 | vc1_interp_mc(v); | 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 | vc1_mc_4mv_chroma4(v, 0, 0, 0); | 4576 | vc1_mc_4mv_chroma4(v, 0, 0, 0); |
| 4577 | vc1_mc_4mv_chroma4(v, 1, 1, 1); | ||
| 4576 | } else if (bmvtype == BMV_TYPE_INTERPOLATED) { | 4578 | } else if (bmvtype == BMV_TYPE_INTERPOLATED) { |
| 4577 | mvbp = v->twomvbp; | 4579 | mvbp = v->twomvbp; |
| 4578 | dmv_x = dmv_y = 0; | 4580 | dmv_x = dmv_y = 0; |
| @@ -4624,7 +4626,7 @@ static int vc1_decode_b_mb_intfr(VC1Context *v) · 45 unmodified lines | |||
| 4624 | vc1_mc_4mv_luma(v, 1, dir, 0); | 4626 | vc1_mc_4mv_luma(v, 1, dir, 0); |
| 4625 | vc1_mc_4mv_luma(v, 2, dir2, 0); | 4627 | vc1_mc_4mv_luma(v, 2, dir2, 0); |
| 4626 | vc1_mc_4mv_luma(v, 3, dir2, 0); | 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 | } else { | 4630 | } else { |
| 4629 | dir = bmvtype == BMV_TYPE_BACKWARD; | 4631 | dir = bmvtype == BMV_TYPE_BACKWARD; |
| 4630 | 4632 | ||