diff options
author | Ben Avison | 2013-08-05 13:12:48 +0100 |
---|---|---|
committer | Martin Storsjö | 2013-08-08 12:08:34 +0300 |
commit | 45e10e5c8d3df09c80a4d80483bff2712367f3fa (patch) | |
tree | a2969ab18ca59c9c0bbe15deecaa2c90d84322a2 /libavcodec/arm/h264dsp_init_arm.c | |
parent | 218d6844b37d339ffbf2044ad07d8be7767e2734 (diff) |
arm: Add assembly version of h264_find_start_code_candidate
Before After
Mean StdDev Mean StdDev Change
This function 508.8 23.4 185.4 9.0 +174.4%
Overall 3068.5 31.7 2752.1 29.4 +11.5%
In combination with the preceding patch:
Before After
Mean StdDev Mean StdDev Change
Overall 2925.6 26.2 2752.1 29.4 +6.3%
Signed-off-by: Martin Storsjö <martin@martin.st>
Diffstat (limited to 'libavcodec/arm/h264dsp_init_arm.c')
-rw-r--r-- | libavcodec/arm/h264dsp_init_arm.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libavcodec/arm/h264dsp_init_arm.c b/libavcodec/arm/h264dsp_init_arm.c index bb8b3b98b6..b206a1b3ba 100644 --- a/libavcodec/arm/h264dsp_init_arm.c +++ b/libavcodec/arm/h264dsp_init_arm.c @@ -24,6 +24,8 @@ #include "libavutil/arm/cpu.h" #include "libavcodec/h264dsp.h" +int ff_h264_find_start_code_candidate_armv6(const uint8_t *buf, int size); + void ff_h264_v_loop_filter_luma_neon(uint8_t *pix, int stride, int alpha, int beta, int8_t *tc0); void ff_h264_h_loop_filter_luma_neon(uint8_t *pix, int stride, int alpha, @@ -102,6 +104,8 @@ av_cold void ff_h264dsp_init_arm(H264DSPContext *c, const int bit_depth, { int cpu_flags = av_get_cpu_flags(); + if (have_armv6(cpu_flags)) + c->h264_find_start_code_candidate = ff_h264_find_start_code_candidate_armv6; if (have_neon(cpu_flags)) h264dsp_init_neon(c, bit_depth, chroma_format_idc); } |