Merge "Fix segmentation fault caused by denoiser working with spatial SVC."

This commit is contained in:
Jerome Jiang 2017-02-22 04:44:55 +00:00 committed by Gerrit Code Review
commit b1dcaf7f1e
3 changed files with 6 additions and 5 deletions

View File

@ -1228,7 +1228,7 @@ TEST_P(DatarateOnePassCbrSvc, OnePassCbrSvc2SpatialLayers) {
// Check basic rate targeting for 1 pass CBR SVC with denoising. // Check basic rate targeting for 1 pass CBR SVC with denoising.
// 2 spatial layers and 3 temporal layer. Run CIF clip with 1 thread. // 2 spatial layers and 3 temporal layer. Run CIF clip with 1 thread.
TEST_P(DatarateOnePassCbrSvc, DISABLED_OnePassCbrSvc2SpatialLayersDenoiserOn) { TEST_P(DatarateOnePassCbrSvc, OnePassCbrSvc2SpatialLayersDenoiserOn) {
cfg_.rc_buf_initial_sz = 500; cfg_.rc_buf_initial_sz = 500;
cfg_.rc_buf_optimal_sz = 500; cfg_.rc_buf_optimal_sz = 500;
cfg_.rc_buf_sz = 1000; cfg_.rc_buf_sz = 1000;

View File

@ -3000,8 +3000,9 @@ static void set_size_dependent_vars(VP9_COMP *cpi, int *q, int *bottom_index,
case 6: l = 150; break; case 6: l = 150; break;
} }
if (!cpi->common.postproc_state.limits) { if (!cpi->common.postproc_state.limits) {
cpi->common.postproc_state.limits = vpx_calloc( cpi->common.postproc_state.limits =
cpi->common.width, sizeof(*cpi->common.postproc_state.limits)); vpx_calloc(cpi->un_scaled_source->y_width,
sizeof(*cpi->common.postproc_state.limits));
} }
vp9_denoise(cpi->Source, cpi->Source, l, cpi->common.postproc_state.limits); vp9_denoise(cpi->Source, cpi->Source, l, cpi->common.postproc_state.limits);
} }

View File

@ -78,8 +78,8 @@
%endmacro %endmacro
%macro UPDATE_FLIMIT 0 %macro UPDATE_FLIMIT 0
movdqa xmm2, XMMWORD PTR [rbx] movdqu xmm2, XMMWORD PTR [rbx]
movdqa [rsp], xmm2 movdqu [rsp], xmm2
add rbx, 16 add rbx, 16
%endmacro %endmacro