<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Sep 26, 2013 at 10:55 AM, Deepthi Devaki Akkoorath <span dir="ltr"><<a href="mailto:deepthidevaki@multicorewareinc.com" target="_blank">deepthidevaki@multicorewareinc.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><br><div>The current implementation is like this:</div>
<div><br></div><div>numNegPics + numPosPics = maxNumReferences. </div><div>For P slices: numNegPics = maxNumReferences</div><div>For B slices: numNegPics = maxNumReferences - 1, numPosPics = 1</div>
<div><br></div><div>With the above logic ,    maxDecPicBuffering = 1(current) + maxNumReferences    seems to be correct  </div><span class=""><font color="#888888"><div> </div></font></span></div></blockquote><div><br></div>
<div><br></div><div>Does it make more sense if it is   (like Olivier mentioned)<div><br></div><div>numNegPics = maxNumReferences (for both P and B)</div><div>numPosPics = 1</div><div>then maxDecPicBuffering = 1(current) + maxNumReferences + 1</div>
<div><br></div><div><br></div></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">
<span class=""><font color="#888888"><div>- Deepthi</div></font></span></div><div class="gmail_extra"><br><br><div class="gmail_quote"><div><div class="h5">
On Thu, Sep 26, 2013 at 7:05 AM, Steve Borho <span dir="ltr"><<a href="mailto:steve@borho.org" target="_blank">steve@borho.org</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div><div class="h5">
<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote"><div>On Wed, Sep 25, 2013 at 6:22 PM, Olivier Lapicque <span dir="ltr"><<a href="mailto:olapicque@nvidia.com" target="_blank">olapicque@nvidia.com</a>></span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div lang="EN-US" link="blue" vlink="purple"><div><p>
<span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">Yeah, it seems like it should be more like:<u></u><u></u></span></p><p><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">MaxDecPicBuffering = 1 (Current) + MaxNumNegativePics (=MaxForwardRefs) + MaxNumPositivePics (=MaxBackwardRefs)<u></u><u></u></span></p>


<p><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"><u></u> <u></u></span></p><p><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">With assuming <u></u><u></u></span></p>


<p><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">MaxNumNegativePics = maxNumReferences (really MaxNumForwardReferences)<u></u><u></u></span></p><p><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">MaxNumPositivePics = limited by gop structure (reordering) <u></u><u></u></span></p>


<p><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"><u></u> <u></u></span></p><p><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">For a standard GOP structure with non-reference B-frames (coded order=Pbbb):<u></u><u></u></span></p>


<p><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">MaxDecPicBuffering = 1 (Current) + maxNumReferences + 1 ( 1P available as backward reference, limiting NumPositivePics to 1) = 2+maxNumReferences<u></u><u></u></span></p>


<p><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"><u></u> <u></u></span></p><p><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">For 1-deep B-pyramid where the middle-B is a reference (display order=bBbP, coded order=PBbb):<u></u><u></u></span></p>


<p><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">MaxDecPicBuffering = 1 (Current) + maxNumReferences + 2 (1P + 1B available as backward references, limiting NumPositivePics to 1) = 3+maxNumReferences</span></p>


</div></div></blockquote><br></div>I think the current logic is correct.  We don't yet support B-pyramid so I believe:</div><div class="gmail_quote"><br></div><div class="gmail_quote">maxPositivePics = 1</div><div class="gmail_quote">


maxNegativePics = max(1, maxNumReferences - maxPositivePics).<br><br>The max consecutive bframes count (--bframes) doesn't influence MaxDecPicBuffering since non-referenced B frames can be flushed from the DPB as soon as they are displayed.</div>


<div class="gmail_quote"><br></div><div class="gmail_quote">Deepthi D, can you confirm this is true?<br><div><br></div><div>Thanks,</div><div><br></div><div>--</div><div>Steve Borho</div></div></div></div>
<br></div></div><div class="im">_______________________________________________<br>
x265-devel mailing list<br>
<a href="mailto:x265-devel@videolan.org" target="_blank">x265-devel@videolan.org</a><br>
<a href="https://mailman.videolan.org/listinfo/x265-devel" target="_blank">https://mailman.videolan.org/listinfo/x265-devel</a><br>
<br></div></blockquote></div><br></div>
</blockquote></div><br></div></div>