diff options
author | Jason Garrett-Glaser | 2010-07-23 00:07:16 +0000 |
---|---|---|
committer | Jason Garrett-Glaser | 2010-07-23 00:07:16 +0000 |
commit | c25c7767085297e4f6bf4171391b615b5bddc281 (patch) | |
tree | 4358d3117808ea7e00152aaf2a25d8bf4dcfe82d /libavcodec/vp8dsp.c | |
parent | b74f70d64699907717ec1620f683d31840a9e4e3 (diff) |
VP8: clear DCT blocks in iDCT instead of using clear_blocks.
~0.3% faster overall.
Originally committed as revision 24448 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/vp8dsp.c')
-rw-r--r-- | libavcodec/vp8dsp.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libavcodec/vp8dsp.c b/libavcodec/vp8dsp.c index 482d62af1b..3e6463d598 100644 --- a/libavcodec/vp8dsp.c +++ b/libavcodec/vp8dsp.c @@ -69,6 +69,10 @@ static void vp8_idct_add_c(uint8_t *dst, DCTELEM block[16], int stride) t1 = block[0*4+i] - block[2*4+i]; t2 = MUL_35468(block[1*4+i]) - MUL_20091(block[3*4+i]); t3 = MUL_20091(block[1*4+i]) + MUL_35468(block[3*4+i]); + block[0*4+i] = 0; + block[1*4+i] = 0; + block[2*4+i] = 0; + block[3*4+i] = 0; tmp[i*4+0] = t0 + t3; tmp[i*4+1] = t1 + t2; @@ -94,6 +98,7 @@ static void vp8_idct_dc_add_c(uint8_t *dst, DCTELEM block[16], int stride) { int i, dc = (block[0] + 4) >> 3; uint8_t *cm = ff_cropTbl + MAX_NEG_CROP + dc; + block[0] = 0; for (i = 0; i < 4; i++) { dst[0] = cm[dst[0]]; |