Always check and free denoiser buffer memory space
authorJingning Han <jingning@google.com>
Wed, 7 Jan 2015 00:17:05 +0000 (16:17 -0800)
committerGerrit Code Review <gerrit@gerrit.golo.chromium.org>
Wed, 7 Jan 2015 16:50:13 +0000 (08:50 -0800)
The vp9_denoiser_free() function will internally check if the
buffer pointers are NULL. This commit makes the encoder always
call vp9_denoiser_free() after finishing encoding. It protects the
case where noise_sensitivity_level is changed during encoding
process and happen to be turned off towards the end of sequence,
which could result memory space allocated to denoiser not being
released.

Change-Id: Ie20dc2f2e6e5fb6333fbab3356bc153978a6a0f8

vp9/encoder/vp9_encoder.c

index 628660b..230df1f 100644 (file)
@@ -1780,9 +1780,7 @@ void vp9_remove_compressor(VP9_COMP *cpi) {
   }
 
 #if CONFIG_VP9_TEMPORAL_DENOISING
-  if (cpi->oxcf.noise_sensitivity > 0) {
-    vp9_denoiser_free(&(cpi->denoiser));
-  }
+  vp9_denoiser_free(&(cpi->denoiser));
 #endif
 
   for (t = 0; t < cpi->num_workers; ++t) {