summaryrefslogtreecommitdiffstats
path: root/armv7a-neon
diff options
context:
space:
mode:
authorhkuang <hkuang@google.com>2013-08-06 11:07:19 -0700
committerHangyu Kuang <hkuang@google.com>2013-08-06 18:31:37 +0000
commitf3bed9137f66ef693bd406e43b17e9a1114f1e14 (patch)
treecd1bea0cd923c6d125cb5b3e7b3404d7c2f70208 /armv7a-neon
parenta8b927ab4f06e2fc0d16d9606b57672df9899ac1 (diff)
downloadandroid_external_libvpx-f3bed9137f66ef693bd406e43b17e9a1114f1e14.tar.gz
android_external_libvpx-f3bed9137f66ef693bd406e43b17e9a1114f1e14.tar.bz2
android_external_libvpx-f3bed9137f66ef693bd406e43b17e9a1114f1e14.zip
Roll latest libvpx into Android.
The latest libvpx just added initial multithread vp9 decoding support and more neon optimization. Checkout is from master branch(hash:33afddadb9af6569bd8296ef1d48d0511b651e9d). Change-Id: I54be2f48bc033c00876b6b1d0a3ff1eccb92a2fa
Diffstat (limited to 'armv7a-neon')
-rw-r--r--armv7a-neon/libvpx_srcs.txt3
-rw-r--r--armv7a-neon/vp9_rtcd.h21
-rw-r--r--armv7a-neon/vpx_config.h1
3 files changed, 13 insertions, 12 deletions
diff --git a/armv7a-neon/libvpx_srcs.txt b/armv7a-neon/libvpx_srcs.txt
index 7f331c0..25ca5e0 100644
--- a/armv7a-neon/libvpx_srcs.txt
+++ b/armv7a-neon/libvpx_srcs.txt
@@ -208,6 +208,7 @@ vp9/common/arm/neon/vp9_convolve8_neon.asm.s
vp9/common/arm/neon/vp9_convolve_neon.c
vp9/common/arm/neon/vp9_dc_only_idct_add_neon.asm.s
vp9/common/arm/neon/vp9_loopfilter_neon.asm.s
+vp9/common/arm/neon/vp9_mb_lpf_neon.asm.s
vp9/common/arm/neon/vp9_short_idct8x8_add_neon.asm.s
vp9/common/generic/vp9_systemdependent.c
vp9/common/vp9_alloccommon.c
@@ -282,6 +283,8 @@ vp9/decoder/vp9_onyxd.h
vp9/decoder/vp9_onyxd_if.c
vp9/decoder/vp9_onyxd_int.h
vp9/decoder/vp9_read_bit_buffer.h
+vp9/decoder/vp9_thread.c
+vp9/decoder/vp9_thread.h
vp9/decoder/vp9_treereader.h
vp9/vp9_common.mk
vp9/vp9_dx_iface.c
diff --git a/armv7a-neon/vp9_rtcd.h b/armv7a-neon/vp9_rtcd.h
index 6e6ff71..4ebb497 100644
--- a/armv7a-neon/vp9_rtcd.h
+++ b/armv7a-neon/vp9_rtcd.h
@@ -14,9 +14,7 @@
#include "vpx/vpx_integer.h"
#include "vp9/common/vp9_enums.h"
-struct loop_filter_info;
struct macroblockd;
-struct loop_filter_info;
/* Encoder forward decls */
struct macroblock;
@@ -207,7 +205,8 @@ void vp9_add_constant_residual_32x32_neon(const int16_t diff, uint8_t *dest, int
#define vp9_add_constant_residual_32x32 vp9_add_constant_residual_32x32_neon
void vp9_mb_lpf_vertical_edge_w_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
-#define vp9_mb_lpf_vertical_edge_w vp9_mb_lpf_vertical_edge_w_c
+void vp9_mb_lpf_vertical_edge_w_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vp9_mb_lpf_vertical_edge_w vp9_mb_lpf_vertical_edge_w_neon
void vp9_mbloop_filter_vertical_edge_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
void vp9_mbloop_filter_vertical_edge_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
@@ -218,7 +217,8 @@ void vp9_loop_filter_vertical_edge_neon(uint8_t *s, int pitch, const uint8_t *bl
#define vp9_loop_filter_vertical_edge vp9_loop_filter_vertical_edge_neon
void vp9_mb_lpf_horizontal_edge_w_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
-#define vp9_mb_lpf_horizontal_edge_w vp9_mb_lpf_horizontal_edge_w_c
+void vp9_mb_lpf_horizontal_edge_w_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
+#define vp9_mb_lpf_horizontal_edge_w vp9_mb_lpf_horizontal_edge_w_neon
void vp9_mbloop_filter_horizontal_edge_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
void vp9_mbloop_filter_horizontal_edge_neon(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
@@ -273,6 +273,9 @@ void vp9_short_idct4x4_1_add_c(int16_t *input, uint8_t *dest, int dest_stride);
void vp9_short_idct4x4_add_c(int16_t *input, uint8_t *dest, int dest_stride);
#define vp9_short_idct4x4_add vp9_short_idct4x4_add_c
+void vp9_short_idct8x8_1_add_c(int16_t *input, uint8_t *dest, int dest_stride);
+#define vp9_short_idct8x8_1_add vp9_short_idct8x8_1_add_c
+
void vp9_short_idct8x8_add_c(int16_t *input, uint8_t *dest, int dest_stride);
void vp9_short_idct8x8_add_neon(int16_t *input, uint8_t *dest, int dest_stride);
#define vp9_short_idct8x8_add vp9_short_idct8x8_add_neon
@@ -280,8 +283,8 @@ void vp9_short_idct8x8_add_neon(int16_t *input, uint8_t *dest, int dest_stride);
void vp9_short_idct10_8x8_add_c(int16_t *input, uint8_t *dest, int dest_stride);
#define vp9_short_idct10_8x8_add vp9_short_idct10_8x8_add_c
-void vp9_short_idct1_8x8_c(int16_t *input, int16_t *output);
-#define vp9_short_idct1_8x8 vp9_short_idct1_8x8_c
+void vp9_short_idct16x16_1_add_c(int16_t *input, uint8_t *dest, int dest_stride);
+#define vp9_short_idct16x16_1_add vp9_short_idct16x16_1_add_c
void vp9_short_idct16x16_add_c(int16_t *input, uint8_t *dest, int dest_stride);
#define vp9_short_idct16x16_add vp9_short_idct16x16_add_c
@@ -289,18 +292,12 @@ void vp9_short_idct16x16_add_c(int16_t *input, uint8_t *dest, int dest_stride);
void vp9_short_idct10_16x16_add_c(int16_t *input, uint8_t *dest, int dest_stride);
#define vp9_short_idct10_16x16_add vp9_short_idct10_16x16_add_c
-void vp9_short_idct1_16x16_c(int16_t *input, int16_t *output);
-#define vp9_short_idct1_16x16 vp9_short_idct1_16x16_c
-
void vp9_short_idct32x32_add_c(int16_t *input, uint8_t *dest, int dest_stride);
#define vp9_short_idct32x32_add vp9_short_idct32x32_add_c
void vp9_short_idct1_32x32_c(int16_t *input, int16_t *output);
#define vp9_short_idct1_32x32 vp9_short_idct1_32x32_c
-void vp9_short_idct10_32x32_add_c(int16_t *input, uint8_t *dest, int dest_stride);
-#define vp9_short_idct10_32x32_add vp9_short_idct10_32x32_add_c
-
void vp9_short_iht4x4_add_c(int16_t *input, uint8_t *dest, int dest_stride, int tx_type);
#define vp9_short_iht4x4_add vp9_short_iht4x4_add_c
diff --git a/armv7a-neon/vpx_config.h b/armv7a-neon/vpx_config.h
index 6f45f7e..d132e4d 100644
--- a/armv7a-neon/vpx_config.h
+++ b/armv7a-neon/vpx_config.h
@@ -39,6 +39,7 @@
#define CONFIG_INSTALL_BINS 1
#define CONFIG_INSTALL_LIBS 1
#define CONFIG_INSTALL_SRCS 0
+#define CONFIG_USE_X86INC 1
#define CONFIG_DEBUG 0
#define CONFIG_GPROF 0
#define CONFIG_GCOV 0