summaryrefslogtreecommitdiff
path: root/vp9/encoder/vp9_pickmode.c
diff options
context:
space:
mode:
authorMarco <marpan@google.com>2017-03-30 17:08:44 -0700
committerMarco <marpan@google.com>2017-03-31 10:05:32 -0700
commitc824eda6ccf84ddbc55f2b78cb8ad57525db066b (patch)
treec37bb2eee02a92f3fe082665c690b7eaef114605 /vp9/encoder/vp9_pickmode.c
parent8e7c5a3c8db28b5367ae4431b5f2bf22b072b0b0 (diff)
downloadlibvpx-c824eda6ccf84ddbc55f2b78cb8ad57525db066b.tar
libvpx-c824eda6ccf84ddbc55f2b78cb8ad57525db066b.tar.gz
libvpx-c824eda6ccf84ddbc55f2b78cb8ad57525db066b.tar.bz2
libvpx-c824eda6ccf84ddbc55f2b78cb8ad57525db066b.zip
vp9: SVC: Fix issue with artifact for svc-denoising.
Issue/bug happens for denoising with spatial layers, where the golden (spatial) reference is used in pickmode, but denoising is only done wrt to last (temporal). Fix is to make sure set_ref_ptrs is set before build predictors in denoiser. Change-Id: I793cf441341edf7c4a88b8ab1e1b22b3cb0eb508
Diffstat (limited to 'vp9/encoder/vp9_pickmode.c')
-rw-r--r--vp9/encoder/vp9_pickmode.c15
1 files changed, 0 insertions, 15 deletions
diff --git a/vp9/encoder/vp9_pickmode.c b/vp9/encoder/vp9_pickmode.c
index 8874a5a41..fc5bfea22 100644
--- a/vp9/encoder/vp9_pickmode.c
+++ b/vp9/encoder/vp9_pickmode.c
@@ -1587,14 +1587,6 @@ void vp9_pick_inter_mode(VP9_COMP *cpi, MACROBLOCK *x, TileDataEnc *tile_data,
!svc_force_zero_mode[GOLDEN_FRAME - 1] && !force_skip_low_temp_var))
use_golden_nonzeromv = 0;
-#if CONFIG_VP9_TEMPORAL_DENOISING
- // TODO(marpan): Allowing golden as the (spatial) reference for SVC with
- // denoising causes bad artifact. Remove this condition when artifact issue
- // is resolved.
- if (cpi->use_svc && cpi->oxcf.noise_sensitivity > 0 && denoise_svc_pickmode)
- usable_ref_frame = LAST_FRAME;
-#endif
-
if (cpi->oxcf.speed >= 8 && !cpi->use_svc &&
((cpi->rc.frames_since_golden + 1) < x->last_sb_high_content ||
x->last_sb_high_content > 40))
@@ -2036,13 +2028,6 @@ void vp9_pick_inter_mode(VP9_COMP *cpi, MACROBLOCK *x, TileDataEnc *tile_data,
!(cpi->ref_frame_flags & flag_list[GOLDEN_FRAME]) ||
(!cpi->svc.layer_context[cpi->svc.temporal_layer_id].is_key_frame &&
svc_force_zero_mode[best_ref_frame - 1]);
-#if CONFIG_VP9_TEMPORAL_DENOISING
- // TODO(marpan): Temporary fix to keep intra prediction on as we currently
- // disallow golden as the (spatial) reference for SVC with denoising due to
- // artifact issue, Remove this condition when artifact issue is resolved.
- if (cpi->use_svc && cpi->oxcf.noise_sensitivity > 0 && denoise_svc_pickmode)
- perform_intra_pred = 1;
-#endif
inter_mode_thresh = (inter_mode_thresh << 1) + inter_mode_thresh;
}
if (cpi->oxcf.lag_in_frames > 0 && cpi->oxcf.rc_mode == VPX_VBR &&