Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(379)

Unified Diff: libvpx/source/libvpx/vp8/common/loopfilter.h

Issue 7624054: Revert r97185 "Update libvpx snapshot to v0.9.7-p1 (Cayuga)." (Closed) Base URL: svn://chrome-svn/chrome/trunk/deps/third_party
Patch Set: Created 9 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: libvpx/source/libvpx/vp8/common/loopfilter.h
diff --git a/libvpx/source/libvpx/vp8/common/loopfilter.h b/libvpx/source/libvpx/vp8/common/loopfilter.h
index 9887cf55b332af9891052ac13d313367e192c65b..2e5997c733feb21be93597427df0703ce579c309 100644
--- a/libvpx/source/libvpx/vp8/common/loopfilter.h
+++ b/libvpx/source/libvpx/vp8/common/loopfilter.h
@@ -13,7 +13,6 @@
#define loopfilter_h
#include "vpx_ports/mem.h"
-#include "vpx_config.h"
#define MAX_LOOP_FILTER 63
@@ -23,45 +22,26 @@ typedef enum
SIMPLE_LOOPFILTER = 1
} LOOPFILTERTYPE;
-#if ARCH_ARM
-#define SIMD_WIDTH 1
-#else
-#define SIMD_WIDTH 16
-#endif
-
-/* Need to align this structure so when it is declared and
+/* FRK
+ * Need to align this structure so when it is declared and
* passed it can be loaded into vector registers.
*/
typedef struct
{
- DECLARE_ALIGNED(SIMD_WIDTH, unsigned char, mblim[MAX_LOOP_FILTER + 1][SIMD_WIDTH]);
- DECLARE_ALIGNED(SIMD_WIDTH, unsigned char, blim[MAX_LOOP_FILTER + 1][SIMD_WIDTH]);
- DECLARE_ALIGNED(SIMD_WIDTH, unsigned char, lim[MAX_LOOP_FILTER + 1][SIMD_WIDTH]);
- DECLARE_ALIGNED(SIMD_WIDTH, unsigned char, hev_thr[4][SIMD_WIDTH]);
- unsigned char lvl[4][4][4];
- unsigned char hev_thr_lut[2][MAX_LOOP_FILTER + 1];
- unsigned char mode_lf_lut[10];
-} loop_filter_info_n;
-
-typedef struct
-{
- const unsigned char * mblim;
- const unsigned char * blim;
- const unsigned char * lim;
- const unsigned char * hev_thr;
+ DECLARE_ALIGNED(16, signed char, lim[16]);
+ DECLARE_ALIGNED(16, signed char, flim[16]);
+ DECLARE_ALIGNED(16, signed char, thr[16]);
+ DECLARE_ALIGNED(16, signed char, mbflim[16]);
} loop_filter_info;
#define prototype_loopfilter(sym) \
- void sym(unsigned char *src, int pitch, const unsigned char *blimit,\
- const unsigned char *limit, const unsigned char *thresh, int count)
+ void sym(unsigned char *src, int pitch, const signed char *flimit,\
+ const signed char *limit, const signed char *thresh, int count)
#define prototype_loopfilter_block(sym) \
- void sym(unsigned char *y, unsigned char *u, unsigned char *v, \
- int ystride, int uv_stride, loop_filter_info *lfi)
-
-#define prototype_simple_loopfilter(sym) \
- void sym(unsigned char *y, int ystride, const unsigned char *blimit)
+ void sym(unsigned char *y, unsigned char *u, unsigned char *v,\
+ int ystride, int uv_stride, loop_filter_info *lfi, int simpler)
#if ARCH_X86 || ARCH_X86_64
#include "x86/loopfilter_x86.h"
@@ -91,39 +71,38 @@ extern prototype_loopfilter_block(vp8_lf_normal_mb_h);
#endif
extern prototype_loopfilter_block(vp8_lf_normal_b_h);
+
#ifndef vp8_lf_simple_mb_v
-#define vp8_lf_simple_mb_v vp8_loop_filter_simple_vertical_edge_c
+#define vp8_lf_simple_mb_v vp8_loop_filter_mbvs_c
#endif
-extern prototype_simple_loopfilter(vp8_lf_simple_mb_v);
+extern prototype_loopfilter_block(vp8_lf_simple_mb_v);
#ifndef vp8_lf_simple_b_v
#define vp8_lf_simple_b_v vp8_loop_filter_bvs_c
#endif
-extern prototype_simple_loopfilter(vp8_lf_simple_b_v);
+extern prototype_loopfilter_block(vp8_lf_simple_b_v);
#ifndef vp8_lf_simple_mb_h
-#define vp8_lf_simple_mb_h vp8_loop_filter_simple_horizontal_edge_c
+#define vp8_lf_simple_mb_h vp8_loop_filter_mbhs_c
#endif
-extern prototype_simple_loopfilter(vp8_lf_simple_mb_h);
+extern prototype_loopfilter_block(vp8_lf_simple_mb_h);
#ifndef vp8_lf_simple_b_h
#define vp8_lf_simple_b_h vp8_loop_filter_bhs_c
#endif
-extern prototype_simple_loopfilter(vp8_lf_simple_b_h);
+extern prototype_loopfilter_block(vp8_lf_simple_b_h);
typedef prototype_loopfilter_block((*vp8_lf_block_fn_t));
-typedef prototype_simple_loopfilter((*vp8_slf_block_fn_t));
-
typedef struct
{
vp8_lf_block_fn_t normal_mb_v;
vp8_lf_block_fn_t normal_b_v;
vp8_lf_block_fn_t normal_mb_h;
vp8_lf_block_fn_t normal_b_h;
- vp8_slf_block_fn_t simple_mb_v;
- vp8_slf_block_fn_t simple_b_v;
- vp8_slf_block_fn_t simple_mb_h;
- vp8_slf_block_fn_t simple_b_h;
+ vp8_lf_block_fn_t simple_mb_v;
+ vp8_lf_block_fn_t simple_b_v;
+ vp8_lf_block_fn_t simple_mb_h;
+ vp8_lf_block_fn_t simple_b_h;
} vp8_loopfilter_rtcd_vtable_t;
#if CONFIG_RUNTIME_CPU_DETECT
@@ -136,33 +115,10 @@ typedef void loop_filter_uvfunction
(
unsigned char *u, /* source pointer */
int p, /* pitch */
- const unsigned char *blimit,
- const unsigned char *limit,
- const unsigned char *thresh,
+ const signed char *flimit,
+ const signed char *limit,
+ const signed char *thresh,
unsigned char *v
);
-/* assorted loopfilter functions which get used elsewhere */
-struct VP8Common;
-struct MacroBlockD;
-
-void vp8_loop_filter_init(struct VP8Common *cm);
-
-void vp8_loop_filter_frame_init(struct VP8Common *cm,
- struct MacroBlockD *mbd,
- int default_filt_lvl);
-
-void vp8_loop_filter_frame(struct VP8Common *cm, struct MacroBlockD *mbd);
-
-void vp8_loop_filter_partial_frame(struct VP8Common *cm,
- struct MacroBlockD *mbd,
- int default_filt_lvl);
-
-void vp8_loop_filter_frame_yonly(struct VP8Common *cm,
- struct MacroBlockD *mbd,
- int default_filt_lvl);
-
-void vp8_loop_filter_update_sharpness(loop_filter_info_n *lfi,
- int sharpness_lvl);
-
#endif
« no previous file with comments | « libvpx/source/libvpx/vp8/common/generic/systemdependent.c ('k') | libvpx/source/libvpx/vp8/common/loopfilter.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698