summaryrefslogtreecommitdiff
path: root/vp9/encoder/vp9_svc_layercontext.c
diff options
context:
space:
mode:
authorMarco Paniconi <marpan@google.com>2020-11-11 23:11:16 -0800
committerJerome Jiang <jianj@google.com>2020-12-11 10:54:56 -0800
commit1617fdeb6780b177e6be33a09e7ceeb18c656a9b (patch)
treeead90fb4fcd263bcbae8088b166dfc6fd5cd7ece /vp9/encoder/vp9_svc_layercontext.c
parent94384b5c685ad3baac8989f19ee587eb72093a7f (diff)
downloadlibvpx-1617fdeb6780b177e6be33a09e7ceeb18c656a9b.tar.gz
vp9: Allow for disabling loopfilter per spatial layer
For SVC: add parameter to the control SET_SVC_PARAMS to allow for disabling the loopfilter per spatial layer. Note this svc setting will override the setting via VP9E_SET_DISABLE_LOOPFILTER (which should only be used for non-SVC). Add unittest to handle both SVC (spatial or temporal layers) and non-SVC (single layer) case. Change-Id: I4092f01668bae42aac724a6df5b6f6a604337448 (cherry picked from commit 7beafefd16b9d41eaf0bfc09e6bbb843ada9e952)
Diffstat (limited to 'vp9/encoder/vp9_svc_layercontext.c')
-rw-r--r--vp9/encoder/vp9_svc_layercontext.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/vp9/encoder/vp9_svc_layercontext.c b/vp9/encoder/vp9_svc_layercontext.c
index d85b3632c..9c75d7726 100644
--- a/vp9/encoder/vp9_svc_layercontext.c
+++ b/vp9/encoder/vp9_svc_layercontext.c
@@ -357,6 +357,8 @@ void vp9_restore_layer_context(VP9_COMP *const cpi) {
if (is_one_pass_cbr_svc(cpi) && lc->speed > 0) {
cpi->oxcf.speed = lc->speed;
}
+ if (lc->loopfilter_ctrl >= 0 || lc->loopfilter_ctrl < 3)
+ cpi->loopfilter_ctrl = lc->loopfilter_ctrl;
// Reset the frames_since_key and frames_to_key counters to their values
// before the layer restore. Keep these defined for the stream (not layer).
if (cpi->svc.number_temporal_layers > 1 ||