<div dir="ltr">From 43207e8bd05a7e19579cec9f983b5064d9bde715 Mon Sep 17 00:00:00 2001<br>From: Kirithika <<a href="mailto:kirithika@multicorewareinc.com">kirithika@multicorewareinc.com</a>><br>Date: Fri, 13 Jan 2023 15:45:04 +0530<br>Subject: [PATCH] Fix re-initialization of VBV parameters when SBRC is not<br> enabled<br><br>---<br> source/encoder/ratecontrol.cpp | 6 ++++--<br> source/encoder/ratecontrol.h   | 1 -<br> 2 files changed, 4 insertions(+), 3 deletions(-)<br><br>diff --git a/source/encoder/ratecontrol.cpp b/source/encoder/ratecontrol.cpp<br>index 162c9dd7b..d3e2233de 100644<br>--- a/source/encoder/ratecontrol.cpp<br>+++ b/source/encoder/ratecontrol.cpp<br>@@ -428,11 +428,12 @@ void RateControl::initVBV(const SPS& sps)<br>     m_bufferExcess = 0;<br>     m_minBufferFill = m_param->minVbvFullness / 100;<br>     m_maxBufferFill = 1 - (m_param->maxVbvFullness / 100);<br>+    m_initVbv = true;<br> }<br> <br> bool RateControl::init(const SPS& sps)<br> {<br>-    if (m_isVbv)<br>+    if (m_isVbv && (!m_initVbv || m_param->bEnableSBRC))<br>         initVBV(sps);<br> <br>     if (!m_param->bResetZoneConfig && (m_relativeComplexity == NULL))<br>@@ -2430,7 +2431,8 @@ void RateControl::checkAndResetABR(RateControlEntry* rce, bool isFrameDone)<br>                 m_shortTermCplxCount = 1;<br>                 m_isAbrReset = true;<br>                 m_lastAbrResetPoc = rce->poc;<br>-                rce->blurredComplexity = m_shortTermCplxSum / m_shortTermCplxCount;<br>+                if(m_param->bEnableSBRC)<br>+                    rce->blurredComplexity = m_shortTermCplxSum / m_shortTermCplxCount;<br>             }<br>         }<br>         else if (m_isAbrReset && isFrameDone)<br>diff --git a/source/encoder/ratecontrol.h b/source/encoder/ratecontrol.h<br>index 9c2fe0ed6..7c3f60cc7 100644<br>--- a/source/encoder/ratecontrol.h<br>+++ b/source/encoder/ratecontrol.h<br>@@ -150,7 +150,6 @@ public:<br>     int    m_lastScenecutAwareIFrame;<br>     double m_rateTolerance;<br>     double m_frameDuration;     /* current frame duration in seconds */<br>-    double m_frameDurInGOP;     /* current frame duration when considered as a segment */<br>     double m_bitrate;<br>     double m_rateFactorConstant;<br>     double m_bufferSize;<br>-- <br>2.28.0.windows.1<br><br><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><i>Thanks,</i><div><i>Kirithika</i></div></div></div></div></div>