1000l to myself - get correct quantization for blocks 1 and 2
P.S. This condition could be also written as if(n==3 || n==(2-dc_pred_dir)) Originally committed as revision 8508 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
8509fc7b13
commit
b666151045
@ -2954,7 +2954,9 @@ static int vc1_decode_i_block_adv(VC1Context *v, DCTELEM block[64], int n, int c
|
||||
q1 = s->current_picture.qscale_table[mb_pos];
|
||||
if(dc_pred_dir && c_avail && mb_pos) q2 = s->current_picture.qscale_table[mb_pos - 1];
|
||||
if(!dc_pred_dir && a_avail && mb_pos >= s->mb_stride) q2 = s->current_picture.qscale_table[mb_pos - s->mb_stride];
|
||||
if(n && n<4) q2 = q1;
|
||||
if(dc_pred_dir && n==1) q2 = q1;
|
||||
if(!dc_pred_dir && n==2) q2 = q1;
|
||||
if(n==3) q2 = q1;
|
||||
|
||||
if(coded) {
|
||||
int last = 0, skip, value;
|
||||
@ -3159,7 +3161,9 @@ static int vc1_decode_intra_block(VC1Context *v, DCTELEM block[64], int n, int c
|
||||
q1 = s->current_picture.qscale_table[mb_pos];
|
||||
if(dc_pred_dir && c_avail && mb_pos) q2 = s->current_picture.qscale_table[mb_pos - 1];
|
||||
if(!dc_pred_dir && a_avail && mb_pos >= s->mb_stride) q2 = s->current_picture.qscale_table[mb_pos - s->mb_stride];
|
||||
if(n && n<4) q2 = q1;
|
||||
if(dc_pred_dir && n==1) q2 = q1;
|
||||
if(!dc_pred_dir && n==2) q2 = q1;
|
||||
if(n==3) q2 = q1;
|
||||
|
||||
if(coded) {
|
||||
int last = 0, skip, value;
|
||||
|
Loading…
Reference in New Issue
Block a user