1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00

Double motion vector range for HPEL interlaced picture in proper place

The existing code is not in the right place and it should cover both
interlaced frame and field pictures.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
This commit is contained in:
Mashiat Sarker Shakkhar 2012-10-09 19:38:19 +00:00 committed by Derek Buitenhuis
parent eb657ecefd
commit 35a35d49d2
2 changed files with 5 additions and 4 deletions

View File

@ -1223,6 +1223,11 @@ int ff_vc1_parse_frame_header_adv(VC1Context *v, GetBitContext* gb)
break; break;
} }
if (v->fcm != PROGRESSIVE && !v->s.quarter_sample) {
v->range_x <<= 1;
v->range_y <<= 1;
}
/* AC Syntax */ /* AC Syntax */
v->c_ac_table_index = decode012(gb); v->c_ac_table_index = decode012(gb);
if (v->s.pict_type == AV_PICTURE_TYPE_I || v->s.pict_type == AV_PICTURE_TYPE_BI) { if (v->s.pict_type == AV_PICTURE_TYPE_I || v->s.pict_type == AV_PICTURE_TYPE_BI) {

View File

@ -1573,10 +1573,6 @@ static inline void vc1_pred_mv(VC1Context *v, int n, int dmv_x, int dmv_y,
} }
} }
if (v->field_mode && !s->quarter_sample) {
r_x <<= 1;
r_y <<= 1;
}
if (v->field_mode && v->numref) if (v->field_mode && v->numref)
r_y >>= 1; r_y >>= 1;
if (v->field_mode && v->cur_field_type && v->ref_field_type[dir] == 0) if (v->field_mode && v->cur_field_type && v->ref_field_type[dir] == 0)