Commit e45f1172 authored by kostya's avatar kostya

33l Fix applying residue condition in RV30/40 decoder

git-svn-id: file:///var/local/repositories/ffmpeg/trunk@15891 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
parent d84fd72a
......@@ -1046,7 +1046,7 @@ static int rv34_decode_mb_header(RV34DecContext *r, int8_t *intra_types)
* mask for retrieving all bits in coded block pattern
* corresponding to one 8x8 block
*/
#define LUMA_CBP_BLOCK_MASK 0x303
#define LUMA_CBP_BLOCK_MASK 0x33
#define U_CBP_MASK 0x0F0000
#define V_CBP_MASK 0xF00000
......@@ -1059,7 +1059,7 @@ static void rv34_apply_differences(RV34DecContext *r, int cbp)
int i;
for(i = 0; i < 4; i++)
if(cbp & (LUMA_CBP_BLOCK_MASK << shifts[i]))
if((cbp & (LUMA_CBP_BLOCK_MASK << shifts[i])) || r->block_type == RV34_MB_P_MIX16x16)
s->dsp.add_pixels_clamped(s->block[i], s->dest[0] + (i & 1)*8 + (i&2)*4*s->linesize, s->linesize);
if(cbp & U_CBP_MASK)
s->dsp.add_pixels_clamped(s->block[4], s->dest[1], s->uvlinesize);
......
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