aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/vp8.c
diff options
context:
space:
mode:
authorMans Rullgard <mans@mansr.com>2011-02-01 22:38:15 +0000
committerMans Rullgard <mans@mansr.com>2011-02-11 15:48:11 +0000
commita7878c9f73c12cfa685bd8af8f3afcca85f56a8b (patch)
tree8d78fafcffa217021277ffe000f35edaa9e9adae /libavcodec/vp8.c
parent7da48fd0111adf504cfcfc5ebda7fd0681968041 (diff)
downloadffmpeg-a7878c9f73c12cfa685bd8af8f3afcca85f56a8b.tar.gz
VP8: ARM optimised decode_block_coeffs_internal
Approximately 5% faster on Cortex-A8. Signed-off-by: Mans Rullgard <mans@mansr.com>
Diffstat (limited to 'libavcodec/vp8.c')
-rw-r--r--libavcodec/vp8.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/libavcodec/vp8.c b/libavcodec/vp8.c
index 8de8968d6e..3cd76249d0 100644
--- a/libavcodec/vp8.c
+++ b/libavcodec/vp8.c
@@ -30,6 +30,10 @@
#include "h264pred.h"
#include "rectangle.h"
+#if ARCH_ARM
+# include "arm/vp8.h"
+#endif
+
typedef struct {
uint8_t filter_level;
uint8_t inner_limit;
@@ -801,6 +805,7 @@ void decode_mb_mode(VP8Context *s, VP8Macroblock *mb, int mb_x, int mb_y, uint8_
}
}
+#ifndef decode_block_coeffs_internal
/**
* @param c arithmetic bitstream reader context
* @param block destination for block coefficients
@@ -854,7 +859,7 @@ skip_eob:
int b = vp56_rac_get_prob(c, token_prob[9+a]);
int cat = (a<<1) + b;
coeff = 3 + (8<<cat);
- coeff += vp8_rac_get_coeff(c, vp8_dct_cat_prob[cat]);
+ coeff += vp8_rac_get_coeff(c, ff_vp8_dct_cat_prob[cat]);
}
}
token_prob = probs[i+1][2];
@@ -864,6 +869,7 @@ skip_eob:
return i;
}
+#endif
static av_always_inline
int decode_block_coeffs(VP56RangeCoder *c, DCTELEM block[16],