diff --git a/aom_dsp/noise_model.c b/aom_dsp/noise_model.c
index 5975c62..2faee85 100644
--- a/aom_dsp/noise_model.c
+++ b/aom_dsp/noise_model.c
@@ -1135,7 +1135,9 @@
     fprintf(stderr, "params.lag = %d > 3\n", noise_model->params.lag);
     return 0;
   }
+  uint16_t random_seed = film_grain->random_seed;
   memset(film_grain, 0, sizeof(*film_grain));
+  film_grain->random_seed = random_seed;
 
   film_grain->apply_grain = 1;
   film_grain->update_parameters = 1;
@@ -1633,7 +1635,7 @@
       return 0;
     }
     if (!film_grain->random_seed) {
-      film_grain->random_seed = 1071;
+      film_grain->random_seed = 7391;
     }
     memcpy(raw_data[0], ctx->denoised[0],
            (strides[0] * sd->y_height) << use_highbd);
diff --git a/av1/encoder/bitstream.c b/av1/encoder/bitstream.c
index f8d05e4..2c4acdb 100644
--- a/av1/encoder/bitstream.c
+++ b/av1/encoder/bitstream.c
@@ -2544,9 +2544,9 @@
 
   aom_wb_write_literal(wb, pars->random_seed, 16);
 
-  pars->random_seed += 3245;  // For film grain test vectors purposes
+  pars->random_seed += 3381;  // Changing random seed for film grain
   if (!pars->random_seed)     // Random seed should not be zero
-    pars->random_seed += 1735;
+    pars->random_seed += 7391;
   if (cm->frame_type == INTER_FRAME)
     aom_wb_write_bit(wb, pars->update_parameters);
   else
diff --git a/build/cmake/aom_config_defaults.cmake b/build/cmake/aom_config_defaults.cmake
index 278d876..a07438c 100644
--- a/build/cmake/aom_config_defaults.cmake
+++ b/build/cmake/aom_config_defaults.cmake
@@ -97,7 +97,7 @@
 set_aom_config_var(CONFIG_ANALYZER 0 NUMBER "Enables bit stream analyzer.")
 set_aom_config_var(CONFIG_COEFFICIENT_RANGE_CHECKING 0 NUMBER
                    "Coefficient range check.")
-set_aom_config_var(CONFIG_DENOISE 0 NUMBER
+set_aom_config_var(CONFIG_DENOISE 1 NUMBER
                    "Denoise/noise modeling support in encoder.")
 set_aom_config_var(CONFIG_FILEOPTIONS 1 NUMBER
                    "Enables encoder config file support.")
diff --git a/examples/noise_model.c b/examples/noise_model.c
index 56fd87e..5cc6003 100644
--- a/examples/noise_model.c
+++ b/examples/noise_model.c
@@ -179,7 +179,7 @@
                              int block_size, aom_film_grain_t *grain) {
   aom_image_t renoised;
   grain->apply_grain = 1;
-  grain->random_seed = 1071;
+  grain->random_seed = 7391;
   aom_img_alloc(&renoised, raw->fmt, raw->w, raw->h, 1);
 
   if (av1_add_film_grain(grain, denoised, &renoised)) {
@@ -329,7 +329,7 @@
   const int num_blocks_h = (info.frame_height + block_size - 1) / block_size;
   uint8_t *flat_blocks = (uint8_t *)aom_malloc(num_blocks_w * num_blocks_h);
   // Sets the random seed on the first entry in the output table
-  int16_t random_seed = 1071;
+  int16_t random_seed = 7391;
   aom_noise_model_t noise_model;
   aom_noise_model_params_t params = { AOM_NOISE_SHAPE_SQUARE, 3, args.bit_depth,
                                       high_bd };
