diff --git a/vp9/common/vp9_reconinter.c b/vp9/common/vp9_reconinter.c index 7cc66c8b4fdce0dff24027f96833b302faa39a18..3add81b99ee306a3e16648705187e19656201e25 100644 --- a/vp9/common/vp9_reconinter.c +++ b/vp9/common/vp9_reconinter.c @@ -20,25 +20,6 @@ #include "vp9/common/vp9_reconinter.h" #include "vp9/common/vp9_reconintra.h" -void vp9_setup_interp_filters(MACROBLOCKD *xd, - INTERPOLATION_TYPE mcomp_filter_type, - VP9_COMMON *cm) { - if (xd->mi_8x8 && xd->mi_8x8[0]) { - MB_MODE_INFO *const mbmi = &xd->mi_8x8[0]->mbmi; - - set_scale_factors(xd, mbmi->ref_frame[0] - LAST_FRAME, - mbmi->ref_frame[1] - LAST_FRAME, - cm->active_ref_scale); - } else { - set_scale_factors(xd, -1, -1, cm->active_ref_scale); - } - - xd->subpix.filter_x = xd->subpix.filter_y = - vp9_get_filter_kernel(mcomp_filter_type == SWITCHABLE ? - EIGHTTAP : mcomp_filter_type); - - assert(((intptr_t)xd->subpix.filter_x & 0xff) == 0); -} static void inter_predictor(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, diff --git a/vp9/common/vp9_reconinter.h b/vp9/common/vp9_reconinter.h index 2c8a6e4d92dd18016bb8ef9e6228ba53c8a18396..b328754e797ea013107ca9368e6b6603e87610fd 100644 --- a/vp9/common/vp9_reconinter.h +++ b/vp9/common/vp9_reconinter.h @@ -24,10 +24,6 @@ void vp9_build_inter_predictors_sbuv(MACROBLOCKD *xd, int mi_row, int mi_col, void vp9_build_inter_predictors_sb(MACROBLOCKD *xd, int mi_row, int mi_col, BLOCK_SIZE bsize); -void vp9_setup_interp_filters(MACROBLOCKD *xd, - INTERPOLATION_TYPE filter, - VP9_COMMON *cm); - void vp9_build_inter_predictor(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, const MV *mv_q3, diff --git a/vp9/encoder/vp9_encodemb.c b/vp9/encoder/vp9_encodemb.c index 0d089ce82753c256504f3e5fde67799de8602558..0e1523b84270284fcf9741fbcf352e0e0c319d63 100644 --- a/vp9/encoder/vp9_encodemb.c +++ b/vp9/encoder/vp9_encodemb.c @@ -25,6 +25,26 @@ #include "vp9/encoder/vp9_rdopt.h" #include "vp9/encoder/vp9_tokenize.h" +void vp9_setup_interp_filters(MACROBLOCKD *xd, + INTERPOLATION_TYPE mcomp_filter_type, + VP9_COMMON *cm) { + if (xd->mi_8x8 && xd->mi_8x8[0]) { + MB_MODE_INFO *const mbmi = &xd->mi_8x8[0]->mbmi; + + set_scale_factors(xd, mbmi->ref_frame[0] - LAST_FRAME, + mbmi->ref_frame[1] - LAST_FRAME, + cm->active_ref_scale); + } else { + set_scale_factors(xd, -1, -1, cm->active_ref_scale); + } + + xd->subpix.filter_x = xd->subpix.filter_y = + vp9_get_filter_kernel(mcomp_filter_type == SWITCHABLE ? + EIGHTTAP : mcomp_filter_type); + + assert(((intptr_t)xd->subpix.filter_x & 0xff) == 0); +} + void vp9_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, diff --git a/vp9/encoder/vp9_encodemb.h b/vp9/encoder/vp9_encodemb.h index 8fbc4a0bce0456d23f6c7b82796b39eb08715f5f..7be66210ca7c0cd9ac3da02c94938a2a8fb33753 100644 --- a/vp9/encoder/vp9_encodemb.h +++ b/vp9/encoder/vp9_encodemb.h @@ -54,5 +54,7 @@ void vp9_encode_intra_block_y(MACROBLOCK *x, BLOCK_SIZE bsize); void vp9_encode_intra_block_uv(MACROBLOCK *x, BLOCK_SIZE bsize); int vp9_encode_intra(MACROBLOCK *x, int use_16x16_pred); - +void vp9_setup_interp_filters(MACROBLOCKD *xd, + INTERPOLATION_TYPE mcomp_filter_type, + VP9_COMMON *cm); #endif // VP9_ENCODER_VP9_ENCODEMB_H_