Commit ff0aca4f authored by kostya's avatar kostya

Fix one case of choosing MV for chroma


git-svn-id: file:///var/local/repositories/ffmpeg/trunk@5635 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
parent c45b4a93
...@@ -1080,7 +1080,7 @@ static void vc1_mc_4mv_chroma(VC1Context *v) ...@@ -1080,7 +1080,7 @@ static void vc1_mc_4mv_chroma(VC1Context *v)
} }
/* calculate chroma MV vector from four luma MVs */ /* calculate chroma MV vector from four luma MVs */
idx = (intra[0] << 3) | (intra[1] << 2) | (intra[2] << 1) | intra[3]; idx = (intra[3] << 3) | (intra[2] << 2) | (intra[1] << 1) | intra[0];
if(!idx) { // all blocks are inter if(!idx) { // all blocks are inter
tx = median4(mvx[0], mvx[1], mvx[2], mvx[3]); tx = median4(mvx[0], mvx[1], mvx[2], mvx[3]);
ty = median4(mvy[0], mvy[1], mvy[2], mvy[3]); ty = median4(mvy[0], mvy[1], mvy[2], mvy[3]);
...@@ -1088,19 +1088,19 @@ static void vc1_mc_4mv_chroma(VC1Context *v) ...@@ -1088,19 +1088,19 @@ static void vc1_mc_4mv_chroma(VC1Context *v)
switch(idx) { switch(idx) {
case 0x1: case 0x1:
tx = mid_pred(mvx[1], mvx[2], mvx[3]); tx = mid_pred(mvx[1], mvx[2], mvx[3]);
tx = mid_pred(mvy[1], mvy[2], mvy[3]); ty = mid_pred(mvy[1], mvy[2], mvy[3]);
break; break;
case 0x2: case 0x2:
tx = mid_pred(mvx[0], mvx[2], mvx[3]); tx = mid_pred(mvx[0], mvx[2], mvx[3]);
tx = mid_pred(mvy[0], mvy[2], mvy[3]); ty = mid_pred(mvy[0], mvy[2], mvy[3]);
break; break;
case 0x4: case 0x4:
tx = mid_pred(mvx[0], mvx[1], mvx[3]); tx = mid_pred(mvx[0], mvx[1], mvx[3]);
tx = mid_pred(mvy[0], mvy[1], mvy[3]); ty = mid_pred(mvy[0], mvy[1], mvy[3]);
break; break;
case 0x8: case 0x8:
tx = mid_pred(mvx[0], mvx[1], mvx[2]); tx = mid_pred(mvx[0], mvx[1], mvx[2]);
tx = mid_pred(mvy[0], mvy[1], mvy[2]); ty = mid_pred(mvy[0], mvy[1], mvy[2]);
break; break;
} }
} else if(count[idx] == 2) { } else if(count[idx] == 2) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment