From 531f9288150bfbc56cd79a3d67d6a8b4aa532749 Mon Sep 17 00:00:00 2001
From: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Date: Thu, 19 Sep 2019 14:40:23 -0800
Subject: [PATCH] gen9_vp9_encoder: Ensure brc-reset irrespective of the frame
 type

If bitrate control is enabled (CBR & VBR), it is legal to
have a bitrate change/reset even for non-key frame.
Currently the bitrate change is not submitting to the gpu
if it is an inter-prediction frame.
This patch ensures that all internal structures are
getting the updated bitrate values whenever user request.
This patch is expected to fix the issue #473
---
 src/gen9_vp9_encoder.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/gen9_vp9_encoder.c b/src/gen9_vp9_encoder.c
index 8aeeb9e497f0..0180235a4e58 100644
--- a/src/gen9_vp9_encoder.c
+++ b/src/gen9_vp9_encoder.c
@@ -3587,6 +3587,7 @@ gen9_encode_vp9_check_parameter(VADriverContextP ctx,
     struct object_surface *obj_surface;
     struct object_buffer *obj_buffer;
     struct gen9_surface_vp9 *vp9_priv_surface;
+    bool need_brc_reset = false;
 
     vp9_state = (struct gen9_vp9_state *) encoder_context->enc_priv_state;
 
@@ -3715,7 +3716,13 @@ gen9_encode_vp9_check_parameter(VADriverContextP ctx,
         return VA_STATUS_ERROR_UNIMPLEMENTED;
 
     if (vp9_state->brc_enabled) {
-        if (vp9_state->first_frame || vp9_state->picture_coding_type == KEY_FRAME) {
+
+        if (encoder_context->rate_control_mode == VA_RC_CBR)
+            need_brc_reset = vp9_state->target_bit_rate != encoder_context->brc.bits_per_second[0] ? true : false;
+        else if (encoder_context->rate_control_mode == VA_RC_VBR)
+            need_brc_reset = vp9_state->max_bit_rate != encoder_context->brc.bits_per_second[0] ? true : false;
+
+        if (vp9_state->first_frame || vp9_state->picture_coding_type == KEY_FRAME || need_brc_reset) {
             vp9_state->brc_reset = encoder_context->brc.need_reset || vp9_state->first_frame;
 
             if (!encoder_context->brc.framerate[0].num || !encoder_context->brc.framerate[0].den ||
-- 
2.17.1

