diff options
author | Ronald S. Bultje <rsbultje@gmail.com> | 2013-02-19 09:03:02 +0400 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-02-19 19:25:50 +0400 |
commit | 1acd7d594c15aa491729c837ad3519d3469e620a (patch) | |
tree | 4a515aa31c7483d8a2fdfa1d4399c9a9d2b29cae /libavcodec/h264addpx_template.c | |
parent | a1f1ca96b42698002920467c0aab9e636893088a (diff) |
h264: integrate clear_blocks calls with IDCT.
The non-intra-pcm branch in hl_decode_mb (simple, 8bpp) goes from 700
to 672 cycles, and the complete loop of decode_mb_cabac and hl_decode_mb
(in the decode_slice loop) goes from 1759 to 1733 cycles on the clip
tested (cathedral), i.e. almost 30 cycles per mb faster.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/h264addpx_template.c')
-rw-r--r-- | libavcodec/h264addpx_template.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libavcodec/h264addpx_template.c b/libavcodec/h264addpx_template.c index 1173766805..046b6c2e19 100644 --- a/libavcodec/h264addpx_template.c +++ b/libavcodec/h264addpx_template.c @@ -43,6 +43,8 @@ static void FUNCC(ff_h264_add_pixels4)(uint8_t *_dst, int16_t *_src, int stride) dst += stride; src += 4; } + + memset(_src, 0, sizeof(dctcoef) * 16); } static void FUNCC(ff_h264_add_pixels8)(uint8_t *_dst, int16_t *_src, int stride) @@ -65,4 +67,6 @@ static void FUNCC(ff_h264_add_pixels8)(uint8_t *_dst, int16_t *_src, int stride) dst += stride; src += 8; } + + memset(_src, 0, sizeof(dctcoef) * 64); } |