From 62844c3fd66940c7747e9b2bb7804e265319f43f Mon Sep 17 00:00:00 2001 From: "Ronald S. Bultje" Date: Mon, 18 Feb 2013 21:03:02 -0800 Subject: h264: Integrate clear_blocks calls with IDCT MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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: Martin Storsjö --- libavcodec/h264addpx_template.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'libavcodec/h264addpx_template.c') diff --git a/libavcodec/h264addpx_template.c b/libavcodec/h264addpx_template.c index d1babc54e5..cdbfc67dfe 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); } -- cgit v1.2.3