From 186bd4eb5234d22aa8e9f0a6a27d40743195b89c Mon Sep 17 00:00:00 2001 From: Yaowu Xu Date: Mon, 30 Jun 2014 12:48:21 -0700 Subject: [PATCH] change to not force interp_type as SWITCHABLE Encoder still uses SWITCHABLE as default via DEFAULT_INTERP_FILTER, but does not override the default if it is not SWITCHABLE. Change-Id: I3c0f6653bd228381a623a026c66599b0a87d01d5 --- vp9/encoder/vp9_encodeframe.c | 1 - vp9/encoder/vp9_pickmode.c | 6 +++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c index d41355136..0fb991d16 100644 --- a/vp9/encoder/vp9_encodeframe.c +++ b/vp9/encoder/vp9_encodeframe.c @@ -3275,7 +3275,6 @@ void vp9_encode_frame(VP9_COMP *cpi) { } } else { cm->reference_mode = SINGLE_REFERENCE; - cm->interp_filter = SWITCHABLE; encode_frame_internal(cpi); } } diff --git a/vp9/encoder/vp9_pickmode.c b/vp9/encoder/vp9_pickmode.c index d5a0fcde4..87e685be7 100644 --- a/vp9/encoder/vp9_pickmode.c +++ b/vp9/encoder/vp9_pickmode.c @@ -333,10 +333,10 @@ int64_t vp9_pick_inter_mode(VP9_COMP *cpi, MACROBLOCK *x, const int *const rd_thresh_freq_fact = cpi->rd.thresh_freq_fact[bsize]; // Mode index conversion form THR_MODES to PREDICTION_MODE for a ref frame. int mode_idx[MB_MODE_COUNT] = {0}; - INTERP_FILTER filter_ref = SWITCHABLE; + INTERP_FILTER filter_ref = cm->interp_filter; int bsl = mi_width_log2_lookup[bsize]; - const int pred_filter_search = (((mi_row + mi_col) >> bsl) + - get_chessboard_index(cm)) % 2; + const int pred_filter_search = cm->interp_filter == SWITCHABLE ? + (((mi_row + mi_col) >> bsl) + get_chessboard_index(cm)) % 2 : 0; int const_motion[MAX_REF_FRAMES] = { 0 }; // For speed 6, the result of interp filter is reused later in actual encoding -- 2.40.0