Code cleanup for datarate tests.
Add/Remove static to functions. Name change. Change-Id: I5de3efc23cd151fe8e70fe67a7a11acfcfa707dc
This commit is contained in:
@@ -18,7 +18,7 @@
|
|||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
static void assign_layer_bitrates(vpx_codec_enc_cfg_t *const enc_cfg,
|
void AssignLayerBitrates(vpx_codec_enc_cfg_t *const enc_cfg,
|
||||||
const vpx_svc_extra_cfg_t *svc_params,
|
const vpx_svc_extra_cfg_t *svc_params,
|
||||||
int spatial_layers, int temporal_layers,
|
int spatial_layers, int temporal_layers,
|
||||||
int temporal_layering_mode,
|
int temporal_layering_mode,
|
||||||
@@ -66,10 +66,9 @@ static void assign_layer_bitrates(vpx_codec_enc_cfg_t *const enc_cfg,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void CheckLayerRateTargeting(vpx_codec_enc_cfg_t *const cfg,
|
void CheckLayerRateTargeting(vpx_codec_enc_cfg_t *const cfg,
|
||||||
int number_spatial_layers,
|
int number_spatial_layers,
|
||||||
int number_temporal_layers,
|
int number_temporal_layers, double *file_datarate,
|
||||||
double *file_datarate,
|
|
||||||
double thresh_overshoot,
|
double thresh_overshoot,
|
||||||
double thresh_undershoot) {
|
double thresh_undershoot) {
|
||||||
for (int sl = 0; sl < number_spatial_layers; ++sl)
|
for (int sl = 0; sl < number_spatial_layers; ++sl)
|
||||||
@@ -265,7 +264,7 @@ class DatarateOnePassCbrSvc
|
|||||||
// Buffer level should not reset on dynamic bitrate change.
|
// Buffer level should not reset on dynamic bitrate change.
|
||||||
memcpy(bits_in_buffer_model_tmp, bits_in_buffer_model_,
|
memcpy(bits_in_buffer_model_tmp, bits_in_buffer_model_,
|
||||||
sizeof(bits_in_buffer_model_));
|
sizeof(bits_in_buffer_model_));
|
||||||
assign_layer_bitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
AssignLayerBitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
||||||
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
||||||
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
||||||
memcpy(bits_in_buffer_model_, bits_in_buffer_model_tmp,
|
memcpy(bits_in_buffer_model_, bits_in_buffer_model_tmp,
|
||||||
@@ -503,7 +502,7 @@ TEST_P(DatarateOnePassCbrSvc, OnePassCbrSvc2SL1TLScreenContent1) {
|
|||||||
ResetModel();
|
ResetModel();
|
||||||
tune_content_ = 1;
|
tune_content_ = 1;
|
||||||
base_speed_setting_ = speed_setting_;
|
base_speed_setting_ = speed_setting_;
|
||||||
assign_layer_bitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
AssignLayerBitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
||||||
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
||||||
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
||||||
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
||||||
@@ -551,7 +550,7 @@ TEST_P(DatarateOnePassCbrSvc, OnePassCbrSvc2SL3TL) {
|
|||||||
for (int i = 200; i <= 800; i += 200) {
|
for (int i = 200; i <= 800; i += 200) {
|
||||||
cfg_.rc_target_bitrate = i;
|
cfg_.rc_target_bitrate = i;
|
||||||
ResetModel();
|
ResetModel();
|
||||||
assign_layer_bitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
AssignLayerBitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
||||||
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
||||||
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
||||||
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
||||||
@@ -604,7 +603,7 @@ TEST_P(DatarateOnePassCbrSvc, OnePassCbrSvc2SL3TLDenoiserOn) {
|
|||||||
cfg_.rc_target_bitrate = i;
|
cfg_.rc_target_bitrate = i;
|
||||||
ResetModel();
|
ResetModel();
|
||||||
denoiser_on_ = noise_sen;
|
denoiser_on_ = noise_sen;
|
||||||
assign_layer_bitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
AssignLayerBitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
||||||
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
||||||
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
||||||
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
||||||
@@ -656,7 +655,7 @@ TEST_P(DatarateOnePassCbrSvc, OnePassCbrSvc2SL3TLSmallKf) {
|
|||||||
cfg_.kf_max_dist = j;
|
cfg_.kf_max_dist = j;
|
||||||
key_frame_spacing_ = j;
|
key_frame_spacing_ = j;
|
||||||
ResetModel();
|
ResetModel();
|
||||||
assign_layer_bitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
AssignLayerBitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
||||||
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
||||||
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
||||||
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
||||||
@@ -706,7 +705,7 @@ TEST_P(DatarateOnePassCbrSvc, OnePassCbrSvc2SL3TL4Threads) {
|
|||||||
cfg_.rc_target_bitrate = i;
|
cfg_.rc_target_bitrate = i;
|
||||||
ResetModel();
|
ResetModel();
|
||||||
constrained_framedrop_ = k;
|
constrained_framedrop_ = k;
|
||||||
assign_layer_bitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
AssignLayerBitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
||||||
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
||||||
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
||||||
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
||||||
@@ -756,7 +755,7 @@ TEST_P(DatarateOnePassCbrSvc, OnePassCbrSvc3SL3TL) {
|
|||||||
top_sl_height_ = 480;
|
top_sl_height_ = 480;
|
||||||
cfg_.rc_target_bitrate = 800;
|
cfg_.rc_target_bitrate = 800;
|
||||||
ResetModel();
|
ResetModel();
|
||||||
assign_layer_bitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
AssignLayerBitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
||||||
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
||||||
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
||||||
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
||||||
@@ -804,7 +803,7 @@ TEST_P(DatarateOnePassCbrSvc, OnePassCbrSvc3SL3TLDynamicBitrateChange) {
|
|||||||
cfg_.rc_target_bitrate = 800;
|
cfg_.rc_target_bitrate = 800;
|
||||||
ResetModel();
|
ResetModel();
|
||||||
change_bitrate_ = true;
|
change_bitrate_ = true;
|
||||||
assign_layer_bitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
AssignLayerBitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
||||||
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
||||||
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
||||||
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
||||||
@@ -854,7 +853,7 @@ TEST_P(DatarateOnePassCbrSvc, OnePassCbrSvc3SL2TLDynamicPatternChange) {
|
|||||||
top_sl_height_ = 480;
|
top_sl_height_ = 480;
|
||||||
cfg_.rc_target_bitrate = 800;
|
cfg_.rc_target_bitrate = 800;
|
||||||
ResetModel();
|
ResetModel();
|
||||||
assign_layer_bitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
AssignLayerBitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
||||||
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
||||||
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
||||||
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
||||||
@@ -902,7 +901,7 @@ TEST_P(DatarateOnePassCbrSvc, OnePassCbrSvc3SL_DisableEnableLayers) {
|
|||||||
cfg_.rc_target_bitrate = 800;
|
cfg_.rc_target_bitrate = 800;
|
||||||
ResetModel();
|
ResetModel();
|
||||||
dynamic_drop_layer_ = true;
|
dynamic_drop_layer_ = true;
|
||||||
assign_layer_bitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
AssignLayerBitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
||||||
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
||||||
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
||||||
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
||||||
@@ -955,7 +954,7 @@ TEST_P(DatarateOnePassCbrSvc, OnePassCbrSvc3SL3TLSmallKf) {
|
|||||||
cfg_.kf_max_dist = j;
|
cfg_.kf_max_dist = j;
|
||||||
key_frame_spacing_ = j;
|
key_frame_spacing_ = j;
|
||||||
ResetModel();
|
ResetModel();
|
||||||
assign_layer_bitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
AssignLayerBitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
||||||
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
||||||
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
||||||
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
||||||
@@ -1007,7 +1006,7 @@ TEST_P(DatarateOnePassCbrSvc, OnePassCbrSvc3SL3TL4Threads) {
|
|||||||
cfg_.rc_target_bitrate = i;
|
cfg_.rc_target_bitrate = i;
|
||||||
ResetModel();
|
ResetModel();
|
||||||
constrained_framedrop_ = k;
|
constrained_framedrop_ = k;
|
||||||
assign_layer_bitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
AssignLayerBitrates(&cfg_, &svc_params_, cfg_.ss_number_layers,
|
||||||
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
cfg_.ts_number_layers, cfg_.temporal_layering_mode,
|
||||||
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
||||||
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
||||||
|
@@ -67,7 +67,7 @@ class DatarateTestVP9Large
|
|||||||
// LAST is always update on base/layer 0, GOLDEN is updated on layer 1.
|
// LAST is always update on base/layer 0, GOLDEN is updated on layer 1.
|
||||||
// For this 3 layer example, the 2nd enhancement layer (layer 2) updates
|
// For this 3 layer example, the 2nd enhancement layer (layer 2) updates
|
||||||
// the altref frame.
|
// the altref frame.
|
||||||
int SetFrameFlags(int frame_num, int num_temp_layers) {
|
static int GetFrameFlags(int frame_num, int num_temp_layers) {
|
||||||
int frame_flags = 0;
|
int frame_flags = 0;
|
||||||
if (num_temp_layers == 2) {
|
if (num_temp_layers == 2) {
|
||||||
if (frame_num % 2 == 0) {
|
if (frame_num % 2 == 0) {
|
||||||
@@ -95,7 +95,7 @@ class DatarateTestVP9Large
|
|||||||
return frame_flags;
|
return frame_flags;
|
||||||
}
|
}
|
||||||
|
|
||||||
int SetLayerId(int frame_num, int num_temp_layers) {
|
static int SetLayerId(int frame_num, int num_temp_layers) {
|
||||||
int layer_id = 0;
|
int layer_id = 0;
|
||||||
if (num_temp_layers == 2) {
|
if (num_temp_layers == 2) {
|
||||||
if (frame_num % 2 == 0) {
|
if (frame_num % 2 == 0) {
|
||||||
@@ -143,7 +143,7 @@ class DatarateTestVP9Large
|
|||||||
}
|
}
|
||||||
vpx_svc_layer_id_t layer_id;
|
vpx_svc_layer_id_t layer_id;
|
||||||
layer_id.spatial_layer_id = 0;
|
layer_id.spatial_layer_id = 0;
|
||||||
frame_flags_ = SetFrameFlags(video->frame(), cfg_.ts_number_layers);
|
frame_flags_ = GetFrameFlags(video->frame(), cfg_.ts_number_layers);
|
||||||
layer_id.temporal_layer_id =
|
layer_id.temporal_layer_id =
|
||||||
SetLayerId(video->frame(), cfg_.ts_number_layers);
|
SetLayerId(video->frame(), cfg_.ts_number_layers);
|
||||||
encoder->Control(VP9E_SET_SVC_LAYER_ID, &layer_id);
|
encoder->Control(VP9E_SET_SVC_LAYER_ID, &layer_id);
|
||||||
|
Reference in New Issue
Block a user