vp9-svc: Fix to allow setting qp-max/min per spatial and temporal layer.
Change-Id: Ic0ec32c1d7f7c08c9f956592dccbfd9060b1f624
This commit is contained in:
parent
16eba81f69
commit
b0027b96ae
@ -770,7 +770,7 @@ class DatarateOnePassCbrSvc : public ::libvpx_test::EncoderTest,
|
||||
::libvpx_test::Encoder *encoder) {
|
||||
if (video->frame() == 0) {
|
||||
int i;
|
||||
for (i = 0; i < 2; ++i) {
|
||||
for (i = 0; i < VPX_MAX_LAYERS; ++i) {
|
||||
svc_params_.max_quantizers[i] = 63;
|
||||
svc_params_.min_quantizers[i] = 0;
|
||||
}
|
||||
|
@ -1393,8 +1393,8 @@ static vpx_codec_err_t ctrl_set_svc_parameters(vpx_codec_alg_priv_t *ctx,
|
||||
LAYER_IDS_TO_IDX(sl, tl, cpi->svc.number_temporal_layers);
|
||||
LAYER_CONTEXT *lc =
|
||||
&cpi->svc.layer_context[layer];
|
||||
lc->max_q = params->max_quantizers[sl];
|
||||
lc->min_q = params->min_quantizers[sl];
|
||||
lc->max_q = params->max_quantizers[layer];
|
||||
lc->min_q = params->min_quantizers[layer];
|
||||
lc->scaling_factor_num = params->scaling_factor_num[sl];
|
||||
lc->scaling_factor_den = params->scaling_factor_den[sl];
|
||||
}
|
||||
|
@ -385,7 +385,7 @@ vpx_codec_err_t vpx_svc_init(SvcContext *svc_ctx, vpx_codec_ctx_t *codec_ctx,
|
||||
vpx_codec_iface_t *iface,
|
||||
vpx_codec_enc_cfg_t *enc_cfg) {
|
||||
vpx_codec_err_t res;
|
||||
int i;
|
||||
int i, sl , tl;
|
||||
SvcInternal_t *const si = get_svc_internal(svc_ctx);
|
||||
if (svc_ctx == NULL || codec_ctx == NULL || iface == NULL ||
|
||||
enc_cfg == NULL) {
|
||||
@ -423,11 +423,14 @@ vpx_codec_err_t vpx_svc_init(SvcContext *svc_ctx, vpx_codec_ctx_t *codec_ctx,
|
||||
svc_ctx->temporal_layers = 2;
|
||||
}
|
||||
|
||||
for (i = 0; i < VPX_SS_MAX_LAYERS; ++i) {
|
||||
for (tl = 0; tl < svc_ctx->temporal_layers; ++tl) {
|
||||
for (sl = 0; sl < svc_ctx->spatial_layers; ++sl) {
|
||||
i = sl * svc_ctx->temporal_layers + tl;
|
||||
si->svc_params.max_quantizers[i] = MAX_QUANTIZER;
|
||||
si->svc_params.min_quantizers[i] = 0;
|
||||
si->svc_params.scaling_factor_num[i] = DEFAULT_SCALE_FACTORS_NUM[i];
|
||||
si->svc_params.scaling_factor_den[i] = DEFAULT_SCALE_FACTORS_DEN[i];
|
||||
si->svc_params.scaling_factor_num[sl] = DEFAULT_SCALE_FACTORS_NUM[sl];
|
||||
si->svc_params.scaling_factor_den[sl] = DEFAULT_SCALE_FACTORS_DEN[sl];
|
||||
}
|
||||
}
|
||||
|
||||
// Parse aggregate command line options. Options must start with
|
||||
|
Loading…
Reference in New Issue
Block a user