diff options
author | Ronald S. Bultje <rsbultje@gmail.com> | 2013-02-01 11:04:50 -0800 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-02-01 23:51:34 +0100 |
commit | 8af915c21b03187ebe11823676081f6311fdbe5e (patch) | |
tree | fe4a1133362ad6c6b1d2dca78481eba8ac168ca2 /libavcodec/vp56.c | |
parent | 6a50e8a190bc1329fd3e76e8497bb7f870b6e69b (diff) | |
download | ffmpeg-8af915c21b03187ebe11823676081f6311fdbe5e.tar.gz |
vp56: remove clear_blocks call, and clear alpha plane U/V DC only.
The non-alpha and alpha-Y planes are cleared in the idct_put/add()
calls. For the alpha U/V planes, we only care about the DC for entropy
context prediction purposes, the rest of the data is unused.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/vp56.c')
-rw-r--r-- | libavcodec/vp56.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/libavcodec/vp56.c b/libavcodec/vp56.c index 7df5adade3..6cc377036c 100644 --- a/libavcodec/vp56.c +++ b/libavcodec/vp56.c @@ -394,8 +394,6 @@ static void vp56_decode_mb(VP56Context *s, int row, int col, int is_alpha) mb_type = vp56_decode_mv(s, row, col); ref_frame = vp56_reference_frame[mb_type]; - s->dsp.clear_blocks(*s->block_coeff); - s->parse_coeff(s); vp56_add_predictors_dc(s, ref_frame); @@ -448,6 +446,11 @@ static void vp56_decode_mb(VP56Context *s, int row, int col, int is_alpha) } break; } + + if (is_alpha) { + s->block_coeff[4][0] = 0; + s->block_coeff[5][0] = 0; + } } static int vp56_size_changed(VP56Context *s) |