From 5ef063ed275a61afc467e4f48350e7c0f29af3c0 Mon Sep 17 00:00:00 2001 From: Jingning Han Date: Thu, 14 Jun 2018 10:04:03 -0700 Subject: [PATCH] Add temporal model control as a speed feature The model construction would incur 15% slowdown for speed 2. The speed change on speed 0 is unnoticeable. The current speed features set up would DISABLE temporal dependency model for all speed settings. Change-Id: Ic45dd962f3a54a8f5f0452502dc05e352dc09ca1 --- vp9/encoder/vp9_speed_features.c | 3 +++ vp9/encoder/vp9_speed_features.h | 3 +++ 2 files changed, 6 insertions(+) diff --git a/vp9/encoder/vp9_speed_features.c b/vp9/encoder/vp9_speed_features.c index 09d45b769..8005f4ea5 100644 --- a/vp9/encoder/vp9_speed_features.c +++ b/vp9/encoder/vp9_speed_features.c @@ -183,6 +183,7 @@ static void set_good_speed_feature_framesize_independent(VP9_COMP *cpi, } if (speed >= 1) { + sf->enable_tpl_model = 0; if (oxcf->pass == 2) { TWO_PASS *const twopass = &cpi->twopass; if ((twopass->fr_content_type == FC_GRAPHICS_ANIMATION) || @@ -377,6 +378,7 @@ static void set_rt_speed_feature_framesize_independent( sf->re_encode_overshoot_rt = 0; sf->disable_16x16part_nonkey = 0; sf->disable_golden_ref = 0; + sf->enable_tpl_model = 0; if (speed >= 1) { sf->allow_txfm_domain_distortion = 1; @@ -810,6 +812,7 @@ void vp9_set_speed_features_framesize_independent(VP9_COMP *cpi) { sf->allow_quant_coeff_opt = sf->optimize_coefficients; sf->quant_opt_thresh = 99.0; sf->allow_acl = 1; + sf->enable_tpl_model = 0; for (i = 0; i < TX_SIZES; i++) { sf->intra_y_mode_mask[i] = INTRA_ALL; diff --git a/vp9/encoder/vp9_speed_features.h b/vp9/encoder/vp9_speed_features.h index 251cfdbcd..f468fba85 100644 --- a/vp9/encoder/vp9_speed_features.h +++ b/vp9/encoder/vp9_speed_features.h @@ -274,6 +274,9 @@ typedef struct SPEED_FEATURES { // alternate reference frames. int allow_acl; + // Temporal dependency model based encoding mode optimization + int enable_tpl_model; + // Use transform domain distortion. Use pixel domain distortion in speed 0 // and certain situations in higher speed to improve the RD model precision. int allow_txfm_domain_distortion; -- 2.40.0