rtc-svc: Modify speed feature for non-reference frames
For non-reference frames at speed >= 8:
-set subpel_search_method = SUBPEL_TREE_PRUNED_MORE
-enable disable_cdf_update_non_reference_frame
-set subpel reduction
And disable subpel reduction on base temporal layer.
This brings the speed-gap for 3TL AV1 vs VP9 closer
to the 1 layer speed-gap.
Stats changed
For speed 9 3TL (lm=2 pattern with 55-20-25 rate split):
rtc-derf: ~0.8% loss, ~2% speedup
rtc: ~0.7% loss, ~2% speedup
Change-Id: I74dd330af08d6f1d27cc264dcfe9aea4a12ee47c
diff --git a/av1/encoder/speed_features.c b/av1/encoder/speed_features.c
index 95340cc..c4bb054 100644
--- a/av1/encoder/speed_features.c
+++ b/av1/encoder/speed_features.c
@@ -1366,10 +1366,15 @@
sf->mv_sf.search_method = NSTEP;
sf->mv_sf.subpel_search_method = SUBPEL_TREE;
sf->rt_sf.fullpel_search_step_param = 6;
+ sf->rt_sf.reduce_mv_pel_precision = 0;
}
- if (speed >= 9) {
+ if (speed >= 8) {
sf->rt_sf.disable_cdf_update_non_reference_frame = true;
- if (cpi->svc.non_reference_frame) sf->rt_sf.nonrd_agressive_skip = 1;
+ sf->rt_sf.reduce_mv_pel_precision = 2;
+ if (cpi->svc.non_reference_frame) {
+ sf->rt_sf.nonrd_agressive_skip = 1;
+ sf->mv_sf.subpel_search_method = SUBPEL_TREE_PRUNED_MORE;
+ }
}
if (cpi->svc.ref_frame_comp[0] || cpi->svc.ref_frame_comp[1] ||
cpi->svc.ref_frame_comp[2]) {