forked from FFmpeg/FFmpeg
VC1: restore mistakenly removed code
The code was mistakenly removed in cad16562c8
.
It stored some motion vector data for future use in B-pictures.
This fixes Bugzilla bug #57.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
This commit is contained in:
parent
e53eecd0e7
commit
f18746528d
1 changed files with 4 additions and 0 deletions
|
@ -930,6 +930,8 @@ static void vc1_mc_4mv_chroma(VC1Context *v, int dir)
|
||||||
if (!v->field_mode || (v->field_mode && !v->numref)) {
|
if (!v->field_mode || (v->field_mode && !v->numref)) {
|
||||||
valid_count = get_chroma_mv(mvx, mvy, intra, 0, &tx, &ty);
|
valid_count = get_chroma_mv(mvx, mvy, intra, 0, &tx, &ty);
|
||||||
if (!valid_count) {
|
if (!valid_count) {
|
||||||
|
s->current_picture.f.motion_val[1][s->block_index[0]][0] = 0;
|
||||||
|
s->current_picture.f.motion_val[1][s->block_index[0]][1] = 0;
|
||||||
v->luma_mv[s->mb_x][0] = v->luma_mv[s->mb_x][1] = 0;
|
v->luma_mv[s->mb_x][0] = v->luma_mv[s->mb_x][1] = 0;
|
||||||
return; //no need to do MC for intra blocks
|
return; //no need to do MC for intra blocks
|
||||||
}
|
}
|
||||||
|
@ -941,6 +943,8 @@ static void vc1_mc_4mv_chroma(VC1Context *v, int dir)
|
||||||
if (dominant)
|
if (dominant)
|
||||||
chroma_ref_type = !v->cur_field_type;
|
chroma_ref_type = !v->cur_field_type;
|
||||||
}
|
}
|
||||||
|
s->current_picture.f.motion_val[1][s->block_index[0]][0] = tx;
|
||||||
|
s->current_picture.f.motion_val[1][s->block_index[0]][1] = ty;
|
||||||
uvmx = (tx + ((tx & 3) == 3)) >> 1;
|
uvmx = (tx + ((tx & 3) == 3)) >> 1;
|
||||||
uvmy = (ty + ((ty & 3) == 3)) >> 1;
|
uvmy = (ty + ((ty & 3) == 3)) >> 1;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue