diff options
author | Yaowu Xu <yaowu@google.com> | 2012-02-28 17:11:12 -0800 |
---|---|---|
committer | Yaowu Xu <yaowu@google.com> | 2012-03-01 12:59:11 -0800 |
commit | 89ee68b1f719a40f698d5793901da52fb8a3a852 (patch) | |
tree | 2a1326a6a3c914ce8d8b7df85a0ad7d1afed809e /vp8/common | |
parent | 3ceb43104fc379ffed0416e11c256012cc62732a (diff) | |
download | libvpx-89ee68b1f719a40f698d5793901da52fb8a3a852.tar libvpx-89ee68b1f719a40f698d5793901da52fb8a3a852.tar.gz libvpx-89ee68b1f719a40f698d5793901da52fb8a3a852.tar.bz2 libvpx-89ee68b1f719a40f698d5793901da52fb8a3a852.zip |
Merge t8x8 experiments
Change-Id: I8e9b6b154e1a0d0cb42d596366380d69c00ac15f
Diffstat (limited to 'vp8/common')
-rw-r--r-- | vp8/common/alloccommon.c | 2 | ||||
-rw-r--r-- | vp8/common/blockd.c | 3 | ||||
-rw-r--r-- | vp8/common/blockd.h | 2 | ||||
-rw-r--r-- | vp8/common/coefupdateprobs.h | 2 | ||||
-rw-r--r-- | vp8/common/entropy.c | 11 | ||||
-rw-r--r-- | vp8/common/entropy.h | 6 | ||||
-rw-r--r-- | vp8/common/generic/systemdependent.c | 2 | ||||
-rw-r--r-- | vp8/common/idct.h | 6 | ||||
-rw-r--r-- | vp8/common/idctllm.c | 3 | ||||
-rw-r--r-- | vp8/common/invtrans.c | 7 | ||||
-rw-r--r-- | vp8/common/invtrans.h | 2 | ||||
-rw-r--r-- | vp8/common/loopfilter.c | 17 | ||||
-rw-r--r-- | vp8/common/onyxc_int.h | 6 |
13 files changed, 7 insertions, 62 deletions
diff --git a/vp8/common/alloccommon.c b/vp8/common/alloccommon.c index 4d15fcb8c..5a7c79c8f 100644 --- a/vp8/common/alloccommon.c +++ b/vp8/common/alloccommon.c @@ -209,9 +209,7 @@ void vp8_create_common(VP8_COMMON *oci) vp8_default_bmode_probs(oci->fc.bmode_prob); -#if CONFIG_T8X8 oci->txfm_mode = ONLY_4X4; -#endif oci->mb_no_coeff_skip = 1; oci->comp_pred_mode = HYBRID_PREDICTION; oci->no_lpf = 0; diff --git a/vp8/common/blockd.c b/vp8/common/blockd.c index 843a19635..60ef31217 100644 --- a/vp8/common/blockd.c +++ b/vp8/common/blockd.c @@ -22,7 +22,6 @@ const unsigned char vp8_block2above[25] = 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 4, 5, 4, 5, 6, 7, 6, 7, 8 }; -#if CONFIG_T8X8 const unsigned char vp8_block2left_8x8[25] = { 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 4, 4, 4, 4, 6, 6, 6, 6, 8 @@ -31,6 +30,4 @@ const unsigned char vp8_block2above_8x8[25] = { 0, 0, 0, 0, 2, 2, 2, 2, 0, 0, 0, 0, 2, 2, 2, 2, 4, 4, 4, 4, 6, 6, 6, 6, 8 }; -#endif - diff --git a/vp8/common/blockd.h b/vp8/common/blockd.h index 30ea8c05b..89fe03516 100644 --- a/vp8/common/blockd.h +++ b/vp8/common/blockd.h @@ -183,9 +183,7 @@ typedef struct MB_PREDICTION_MODE second_mode, second_uv_mode; #endif MV_REFERENCE_FRAME ref_frame, second_ref_frame; -#if CONFIG_T8X8 TX_SIZE txfm_size; -#endif int_mv mv, second_mv; unsigned char partitioning; unsigned char mb_skip_coeff; /* does this mb has coefficients at all, 1=no coefficients, 0=need decode tokens */ diff --git a/vp8/common/coefupdateprobs.h b/vp8/common/coefupdateprobs.h index 6fe5fcc6f..05e456393 100644 --- a/vp8/common/coefupdateprobs.h +++ b/vp8/common/coefupdateprobs.h @@ -183,7 +183,6 @@ const vp8_prob vp8_coef_update_probs [BLOCK_TYPES] [COEF_BANDS] [PREV_COEF_CONTE }, }, }; -#if CONFIG_T8X8 const vp8_prob vp8_coef_update_probs_8x8 [BLOCK_TYPES] [COEF_BANDS] [PREV_COEF_CONTEXTS] @@ -359,4 +358,3 @@ const vp8_prob vp8_coef_update_probs_8x8 [BLOCK_TYPES] }, }; -#endif
\ No newline at end of file diff --git a/vp8/common/entropy.c b/vp8/common/entropy.c index b2cfb354f..2c1667225 100644 --- a/vp8/common/entropy.c +++ b/vp8/common/entropy.c @@ -60,7 +60,6 @@ DECLARE_ALIGNED(16, const int, vp8_default_zig_zag1d[16]) = 9, 12, 13, 10, 7, 11, 14, 15, }; -#if CONFIG_T8X8 DECLARE_ALIGNED(64, cuchar, vp8_coef_bands_8x8[64]) = { 0, 1, 2, 3, 5, 4, 4, 5, 5, 3, 6, 3, 5, 4, 6, 6, 6, 5, 5, 6, 6, 6, 6, 6, @@ -77,7 +76,6 @@ DECLARE_ALIGNED(64, const int, vp8_default_zig_zag1d_8x8[64]) = 35, 42, 49, 56, 57, 50, 43, 36, 29, 22, 15, 23, 30, 37, 44, 51, 58, 59, 52, 45, 38, 31, 39, 46, 53, 60, 61, 54, 47, 55, 62, 63, }; -#endif DECLARE_ALIGNED(16, const short, vp8_default_inv_zig_zag[16]) = { @@ -88,9 +86,7 @@ DECLARE_ALIGNED(16, const short, vp8_default_inv_zig_zag[16]) = }; DECLARE_ALIGNED(16, short, vp8_default_zig_zag_mask[16]); -#if CONFIG_T8X8 DECLARE_ALIGNED(64, short, vp8_default_zig_zag_mask_8x8[64]);//int64_t -#endif /* Array indices are identical to previously-existing CONTEXT_NODE indices */ @@ -132,12 +128,10 @@ void vp8_init_scan_order_mask() { vp8_default_zig_zag_mask[vp8_default_zig_zag1d[i]] = 1 << i; } -#if CONFIG_T8X8 for (i = 0; i < 64; i++) { vp8_default_zig_zag_mask_8x8[vp8_default_zig_zag1d_8x8[i]] = 1 << i; } -#endif } static void init_bit_tree(vp8_tree_index *p, int n) @@ -184,12 +178,9 @@ vp8_extra_bit_struct vp8_extra_bits[12] = void vp8_default_coef_probs(VP8_COMMON *pc) { -#if CONFIG_T8X8 int h; -#endif vpx_memcpy(pc->fc.coef_probs, default_coef_probs, sizeof(default_coef_probs)); -#if CONFIG_T8X8 h = 0; do { @@ -213,7 +204,7 @@ void vp8_default_coef_probs(VP8_COMMON *pc) while (++i < COEF_BANDS); } while (++h < BLOCK_TYPES); -#endif + } void vp8_coef_tree_initialize() diff --git a/vp8/common/entropy.h b/vp8/common/entropy.h index 541aa4d4c..c7a41f58b 100644 --- a/vp8/common/entropy.h +++ b/vp8/common/entropy.h @@ -63,9 +63,7 @@ extern vp8_extra_bit_struct vp8_extra_bits[12]; /* indexed by token value */ #define COEF_BANDS 8 extern DECLARE_ALIGNED(16, const unsigned char, vp8_coef_bands[16]); -#if CONFIG_T8X8 extern DECLARE_ALIGNED(64, const unsigned char, vp8_coef_bands_8x8[64]); -#endif /* Inside dimension is 3-valued measure of nearby complexity, that is, the extent to which nearby coefficients are nonzero. For the first @@ -89,18 +87,14 @@ extern DECLARE_ALIGNED(64, const unsigned char, vp8_coef_bands_8x8[64]); extern DECLARE_ALIGNED(16, const unsigned char, vp8_prev_token_class[MAX_ENTROPY_TOKENS]); extern const vp8_prob vp8_coef_update_probs [BLOCK_TYPES] [COEF_BANDS] [PREV_COEF_CONTEXTS] [ENTROPY_NODES]; -#if CONFIG_T8X8 extern const vp8_prob vp8_coef_update_probs_8x8 [BLOCK_TYPES] [COEF_BANDS] [PREV_COEF_CONTEXTS] [ENTROPY_NODES]; -#endif struct VP8Common; void vp8_default_coef_probs(struct VP8Common *); extern DECLARE_ALIGNED(16, const int, vp8_default_zig_zag1d[16]); extern DECLARE_ALIGNED(16, const short, vp8_default_inv_zig_zag[16]); extern short vp8_default_zig_zag_mask[16]; -#if CONFIG_T8X8 extern DECLARE_ALIGNED(64, const int, vp8_default_zig_zag1d_8x8[64]); extern short vp8_default_zig_zag_mask_8x8[64];//int64_t -#endif void vp8_coef_tree_initialize(void); #endif diff --git a/vp8/common/generic/systemdependent.c b/vp8/common/generic/systemdependent.c index 0adefe54c..6168dc5ef 100644 --- a/vp8/common/generic/systemdependent.c +++ b/vp8/common/generic/systemdependent.c @@ -30,11 +30,9 @@ void vp8_machine_specific_config(VP8_COMMON *ctx) rtcd->idct.idct1_scalar_add = vp8_dc_only_idct_add_c; rtcd->idct.iwalsh1 = vp8_short_inv_walsh4x4_1_c; rtcd->idct.iwalsh16 = vp8_short_inv_walsh4x4_c; -#if CONFIG_T8X8 rtcd->idct.idct8 = vp8_short_idct8x8_c; rtcd->idct.idct1_scalar_add_8x8 = vp8_dc_only_idct_add_8x8_c; rtcd->idct.ihaar2 = vp8_short_ihaar2x2_c; -#endif rtcd->recon.copy16x16 = vp8_copy_mem16x16_c; rtcd->recon.copy8x8 = vp8_copy_mem8x8_c; rtcd->recon.avg16x16 = vp8_avg_mem16x16_c; diff --git a/vp8/common/idct.h b/vp8/common/idct.h index d1890b9e5..e8ca23d66 100644 --- a/vp8/common/idct.h +++ b/vp8/common/idct.h @@ -31,7 +31,7 @@ #include "arm/idct_arm.h" #endif -#if CONFIG_T8X8 + #ifndef vp8_idct_idct8 #define vp8_idct_idct8 vp8_short_idct8x8_c #endif @@ -57,7 +57,7 @@ extern prototype_idct(vp8_idct_ihaar2_1); #endif extern prototype_idct_scalar_add(vp8_idct_idct1_scalar_add_8x8); -#endif + #ifndef vp8_idct_idct1 #define vp8_idct_idct1 vp8_short_idct4x4llm_1_c @@ -98,13 +98,11 @@ typedef struct vp8_second_order_fn_t iwalsh1; vp8_second_order_fn_t iwalsh16; -#if CONFIG_T8X8 vp8_idct_fn_t idct8; vp8_idct_fn_t idct8_1; vp8_idct_scalar_add_fn_t idct1_scalar_add_8x8; vp8_idct_fn_t ihaar2; vp8_idct_fn_t ihaar2_1; -#endif } vp8_idct_rtcd_vtable_t; #if CONFIG_RUNTIME_CPU_DETECT diff --git a/vp8/common/idctllm.c b/vp8/common/idctllm.c index c87012466..f0536d5e4 100644 --- a/vp8/common/idctllm.c +++ b/vp8/common/idctllm.c @@ -200,7 +200,7 @@ void vp8_short_inv_walsh4x4_1_c(short *input, short *output) } } -#if CONFIG_T8X8 + void vp8_dc_only_idct_add_8x8_c(short input_dc, unsigned char *pred_ptr, unsigned char *dst_ptr, @@ -408,4 +408,3 @@ void vp8_short_ihaar2x2_c(short *input, short *output, int pitch) op[8] = (ip[0] - ip[1] - ip[4] + ip[8])>>1; } -#endif diff --git a/vp8/common/invtrans.c b/vp8/common/invtrans.c index 11361c16c..eed8363a3 100644 --- a/vp8/common/invtrans.c +++ b/vp8/common/invtrans.c @@ -24,7 +24,6 @@ static void recon_dcblock(MACROBLOCKD *x) } } -#if CONFIG_T8X8 static void recon_dcblock_8x8(MACROBLOCKD *x) { BLOCKD *b = &x->block[24]; //for coeff 0, 2, 8, 10 @@ -34,7 +33,7 @@ static void recon_dcblock_8x8(MACROBLOCKD *x) x->block[12].dqcoeff[0] = b->diff[8]; } -#endif + void vp8_inverse_transform_b(const vp8_idct_rtcd_vtable_t *rtcd, BLOCKD *b, int pitch) { @@ -99,7 +98,7 @@ void vp8_inverse_transform_mb(const vp8_idct_rtcd_vtable_t *rtcd, MACROBLOCKD *x } -#if CONFIG_T8X8 + void vp8_inverse_transform_b_8x8(const vp8_idct_rtcd_vtable_t *rtcd, short *input_dqcoeff, short *output_coeff, int pitch)//pay attention to use when 8x8 { // int b,i; @@ -171,4 +170,4 @@ void vp8_inverse_transform_mb_8x8(const vp8_idct_rtcd_vtable_t *rtcd, MACROBLOCK } } -#endif + diff --git a/vp8/common/invtrans.h b/vp8/common/invtrans.h index 1466a5844..4c4f0d3d2 100644 --- a/vp8/common/invtrans.h +++ b/vp8/common/invtrans.h @@ -20,11 +20,9 @@ extern void vp8_inverse_transform_mb(const vp8_idct_rtcd_vtable_t *rtcd, MACROBL extern void vp8_inverse_transform_mby(const vp8_idct_rtcd_vtable_t *rtcd, MACROBLOCKD *x); extern void vp8_inverse_transform_mbuv(const vp8_idct_rtcd_vtable_t *rtcd, MACROBLOCKD *x); -#if CONFIG_T8X8 extern void vp8_inverse_transform_b_8x8(const vp8_idct_rtcd_vtable_t *rtcd, short *input_dqcoeff, short *output_coeff, int pitch); extern void vp8_inverse_transform_mb_8x8(const vp8_idct_rtcd_vtable_t *rtcd, MACROBLOCKD *x); extern void vp8_inverse_transform_mby_8x8(const vp8_idct_rtcd_vtable_t *rtcd, MACROBLOCKD *x); extern void vp8_inverse_transform_mbuv_8x8(const vp8_idct_rtcd_vtable_t *rtcd, MACROBLOCKD *x); -#endif #endif diff --git a/vp8/common/loopfilter.c b/vp8/common/loopfilter.c index 759133423..1cac063e0 100644 --- a/vp8/common/loopfilter.c +++ b/vp8/common/loopfilter.c @@ -72,7 +72,6 @@ void vp8_loop_filter_bh_c(unsigned char *y_ptr, unsigned char *u_ptr, vp8_loop_filter_horizontal_edge_c(v_ptr + 4 * uv_stride, uv_stride, lfi->blim, lfi->lim, lfi->hev_thr, 1); } -#if CONFIG_T8X8 void vp8_loop_filter_bh8x8_c(unsigned char *y_ptr, unsigned char *u_ptr, unsigned char *v_ptr, int y_stride, int uv_stride, loop_filter_info *lfi) @@ -80,7 +79,6 @@ void vp8_loop_filter_bh8x8_c(unsigned char *y_ptr, unsigned char *u_ptr, vp8_mbloop_filter_horizontal_edge_c( y_ptr + 8 * y_stride, y_stride, lfi->blim, lfi->lim, lfi->hev_thr, 2); } -#endif void vp8_loop_filter_bhs_c(unsigned char *y_ptr, int y_stride, const unsigned char *blimit) @@ -106,7 +104,6 @@ void vp8_loop_filter_bv_c(unsigned char *y_ptr, unsigned char *u_ptr, vp8_loop_filter_vertical_edge_c(v_ptr + 4, uv_stride, lfi->blim, lfi->lim, lfi->hev_thr, 1); } -#if CONFIG_T8X8 void vp8_loop_filter_bv8x8_c(unsigned char *y_ptr, unsigned char *u_ptr, unsigned char *v_ptr, int y_stride, int uv_stride, loop_filter_info *lfi) @@ -115,8 +112,6 @@ void vp8_loop_filter_bv8x8_c(unsigned char *y_ptr, unsigned char *u_ptr, y_ptr + 8, y_stride, lfi->blim, lfi->lim, lfi->hev_thr, 2); } -#endif - void vp8_loop_filter_bvs_c(unsigned char *y_ptr, int y_stride, const unsigned char *blimit) { @@ -348,9 +343,7 @@ void vp8_loop_filter_frame const int mode_index = lfi_n->mode_lf_lut[mode_info_context->mbmi.mode]; const int seg = mode_info_context->mbmi.segment_id; const int ref_frame = mode_info_context->mbmi.ref_frame; -#if CONFIG_T8X8 int tx_type = mode_info_context->mbmi.txfm_size; -#endif filter_level = lfi_n->lvl[seg][ref_frame][mode_index]; if (filter_level) @@ -369,12 +362,10 @@ void vp8_loop_filter_frame if (!skip_lf) { -#if CONFIG_T8X8 if(tx_type == TX_8X8) vp8_loop_filter_bv8x8_c (y_ptr, u_ptr, v_ptr, post->y_stride, post->uv_stride, &lfi); else -#endif LF_INVOKE(&cm->rtcd.loopfilter, normal_b_v) (y_ptr, u_ptr, v_ptr, post->y_stride, post->uv_stride, &lfi); @@ -387,12 +378,10 @@ void vp8_loop_filter_frame if (!skip_lf) { -#if CONFIG_T8X8 if(tx_type == TX_8X8) vp8_loop_filter_bh8x8_c (y_ptr, u_ptr, v_ptr, post->y_stride, post->uv_stride, &lfi); else -#endif LF_INVOKE(&cm->rtcd.loopfilter, normal_b_h) (y_ptr, u_ptr, v_ptr, post->y_stride, post->uv_stride, &lfi); } @@ -479,9 +468,7 @@ void vp8_loop_filter_frame_yonly const int mode_index = lfi_n->mode_lf_lut[mode_info_context->mbmi.mode]; const int seg = mode_info_context->mbmi.segment_id; const int ref_frame = mode_info_context->mbmi.ref_frame; -#if CONFIG_T8X8 int tx_type = mode_info_context->mbmi.txfm_size; -#endif filter_level = lfi_n->lvl[seg][ref_frame][mode_index]; @@ -501,12 +488,10 @@ void vp8_loop_filter_frame_yonly if (!skip_lf) { -#if CONFIG_T8X8 if(tx_type == TX_8X8) vp8_loop_filter_bv8x8_c (y_ptr, 0, 0, post->y_stride, 0, &lfi); else -#endif LF_INVOKE(&cm->rtcd.loopfilter, normal_b_v) (y_ptr, 0, 0, post->y_stride, 0, &lfi); } @@ -518,12 +503,10 @@ void vp8_loop_filter_frame_yonly if (!skip_lf) { -#if CONFIG_T8X8 if(tx_type == TX_8X8) vp8_loop_filter_bh8x8_c (y_ptr, 0, 0, post->y_stride, 0, &lfi); else -#endif LF_INVOKE(&cm->rtcd.loopfilter, normal_b_h) (y_ptr, 0, 0, post->y_stride, 0, &lfi); } diff --git a/vp8/common/onyxc_int.h b/vp8/common/onyxc_int.h index a65123b23..535eabb42 100644 --- a/vp8/common/onyxc_int.h +++ b/vp8/common/onyxc_int.h @@ -53,9 +53,7 @@ typedef struct frame_contexts #endif vp8_prob sub_mv_ref_prob [VP8_SUBMVREFS-1]; vp8_prob coef_probs [BLOCK_TYPES] [COEF_BANDS] [PREV_COEF_CONTEXTS] [ENTROPY_NODES]; -#if CONFIG_T8X8 vp8_prob coef_probs_8x8 [BLOCK_TYPES] [COEF_BANDS] [PREV_COEF_CONTEXTS] [ENTROPY_NODES]; -#endif MV_CONTEXT mvc[2]; MV_CONTEXT pre_mvc[2]; /* not to caculate the mvcost for the frame if mvc doesn't change. */ #if CONFIG_HIGH_PRECISION_MV @@ -84,14 +82,12 @@ typedef enum NB_PREDICTION_TYPES = 3, } COMPPREDMODE_TYPE; -#if CONFIG_T8X8 /* TODO: allows larger transform */ typedef enum { ONLY_4X4 = 0, ALLOW_8X8 = 1 } TXFM_MODE; -#endif /* CONFIG_T8X8 */ typedef struct VP8_COMMON_RTCD { @@ -150,9 +146,7 @@ typedef struct VP8Common /* profile settings */ int experimental; int mb_no_coeff_skip; -#if CONFIG_T8X8 TXFM_MODE txfm_mode; -#endif COMPPREDMODE_TYPE comp_pred_mode; int no_lpf; int use_bilinear_mc_filter; |