summaryrefslogtreecommitdiff
path: root/vp9/encoder
diff options
context:
space:
mode:
authorJerome Jiang <jianj@google.com>2018-08-15 17:15:45 -0700
committerJerome Jiang <jianj@google.com>2018-08-15 17:56:28 -0700
commit27106e507be4bd25686afd780d7c3c2e2467de38 (patch)
treeadf6267d5aab408fd2fcf361161e8436902d1b73 /vp9/encoder
parent47808645a8572dc799795aab45a6be7ee78a84fc (diff)
downloadlibvpx-27106e507be4bd25686afd780d7c3c2e2467de38.tar
libvpx-27106e507be4bd25686afd780d7c3c2e2467de38.tar.gz
libvpx-27106e507be4bd25686afd780d7c3c2e2467de38.tar.bz2
libvpx-27106e507be4bd25686afd780d7c3c2e2467de38.zip
svc: Force the quantizer to be same as that in encoder config.
Change-Id: I0377ca2ebf63792d7a27de4b8e7e08b38659ecde
Diffstat (limited to 'vp9/encoder')
-rw-r--r--vp9/encoder/vp9_svc_layercontext.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/vp9/encoder/vp9_svc_layercontext.c b/vp9/encoder/vp9_svc_layercontext.c
index 3fa25ae14..58eef9134 100644
--- a/vp9/encoder/vp9_svc_layercontext.c
+++ b/vp9/encoder/vp9_svc_layercontext.c
@@ -108,6 +108,8 @@ void vp9_init_layer_context(VP9_COMP *const cpi) {
lrc->ni_frames = 0;
lrc->decimation_count = 0;
lrc->decimation_factor = 0;
+ lrc->worst_quality = oxcf->worst_allowed_q;
+ lrc->best_quality = oxcf->best_allowed_q;
for (i = 0; i < RATE_FACTOR_LEVELS; ++i) {
lrc->rate_correction_factors[i] = 1.0;
@@ -816,7 +818,8 @@ int vp9_one_pass_cbr_svc_start_layer(VP9_COMP *const cpi) {
// Setting the worst/best_quality via the encoder control: SET_SVC_PARAMETERS,
// only for non-BYPASS mode for now.
- if (svc->temporal_layering_mode != VP9E_TEMPORAL_LAYERING_MODE_BYPASS) {
+ if (svc->temporal_layering_mode != VP9E_TEMPORAL_LAYERING_MODE_BYPASS ||
+ svc->use_set_ref_frame_config) {
RATE_CONTROL *const lrc = &lc->rc;
lrc->worst_quality = vp9_quantizer_to_qindex(lc->max_q);
lrc->best_quality = vp9_quantizer_to_qindex(lc->min_q);