vp9 svc frame drop: enable adaptive rd for row mt.
adaptive_rd_threshold_mt is set to 1 when speed >= 7 for SVC. QVGA in SVC uses speed 5 which set adaptive_rd_threshold_mt to 0. If VGA or HD is dropped for the last super frame, the flag is still 0 when the encoder is destroyed. Thus memory won't be released. Change the bitrate threshold in datarate test. Change-Id: I55352cc0b030568d38eb735d99c2fa29058d3690
This commit is contained in:
parent
4a20caef78
commit
1ae97b4a4d
@ -2230,7 +2230,7 @@ TEST_P(DatarateOnePassCbrSvc, OnePassCbrSvc3SL3TL4Threads) {
|
||||
layer_target_avg_bandwidth_, bits_in_buffer_model_);
|
||||
ASSERT_NO_FATAL_FAILURE(RunLoop(&video));
|
||||
CheckLayerRateTargeting(&cfg_, number_spatial_layers_,
|
||||
number_temporal_layers_, file_datarate_, 0.75, 1.2);
|
||||
number_temporal_layers_, file_datarate_, 0.73, 1.2);
|
||||
#if CONFIG_VP9_DECODER
|
||||
// The non-reference frames are expected to be mismatched frames as the
|
||||
// encoder will avoid loopfilter on these frames.
|
||||
|
@ -146,11 +146,9 @@ void vp9_row_mt_mem_dealloc(VP9_COMP *cpi) {
|
||||
TileDataEnc *this_tile =
|
||||
&cpi->tile_data[tile_row * multi_thread_ctxt->allocated_tile_cols +
|
||||
tile_col];
|
||||
if (cpi->sf.adaptive_rd_thresh_row_mt) {
|
||||
if (this_tile->row_base_thresh_freq_fact != NULL) {
|
||||
vpx_free(this_tile->row_base_thresh_freq_fact);
|
||||
this_tile->row_base_thresh_freq_fact = NULL;
|
||||
}
|
||||
if (this_tile->row_base_thresh_freq_fact != NULL) {
|
||||
vpx_free(this_tile->row_base_thresh_freq_fact);
|
||||
this_tile->row_base_thresh_freq_fact = NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -667,11 +667,6 @@ static void set_rt_speed_feature_framesize_independent(
|
||||
(uint8_t *)vpx_calloc((cm->mi_stride >> 3) * ((cm->mi_rows >> 3) + 1),
|
||||
sizeof(*cpi->count_lastgolden_frame_usage));
|
||||
}
|
||||
// Disable adaptive_rd_thresh for row_mt for SVC with frame dropping.
|
||||
// This is causing some tests to fail.
|
||||
// TODO(marpan/jianj): Look into this failure and re-enable later.
|
||||
if (cpi->use_svc && cpi->oxcf.drop_frames_water_mark)
|
||||
sf->adaptive_rd_thresh_row_mt = 0;
|
||||
}
|
||||
|
||||
void vp9_set_speed_features_framesize_dependent(VP9_COMP *cpi) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user