<blockquote class="webkit-indent-blockquote" style="margin: 0 0 0 40px; border: none; padding: 0px;"><br><br><div class="gmail_quote">On Tue, May 3, 2011 at 12:46 PM, Kenneth Emerson <span dir="ltr">&lt;<a href="mailto:kenneth.emerson@gmail.com">kenneth.emerson@gmail.com</a>&gt;</span> wrote:</div>
<div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><br></blockquote></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br></blockquote></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="gmail_quote"><div class="im">On Tue, May 3, 2011 at 6:28 AM, Steve Curtis <span dir="ltr">&lt;<a href="mailto:scurtis@fixation.net" target="_blank">scurtis@fixation.net</a>&gt;</span> wrote:</div>
</div></blockquote></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="gmail_quote"><div><div class="h5"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="gmail_quote"><div>On 24 March 2011 15:03, Kenneth Emerson <span dir="ltr">&lt;<a href="mailto:kenneth.emerson@gmail.com" target="_blank">kenneth.emerson@gmail.com</a>&gt;</span> wrote:</div></div></blockquote>
</div></div></div></blockquote></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="gmail_quote"><div><div class="h5"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="gmail_quote"><div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


I have been following several of the threads on this list (and the commit list) that have talked about &quot;stuttering&quot; during playback. </blockquote></div></div></blockquote></div></div></div></blockquote></div><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="gmail_quote"><div><div class="h5"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="gmail_quote"><div><div><br></div></div></div></blockquote></div></div></div></blockquote></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="gmail_quote"><div><div class="h5"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_quote"><div>I get this too.  I notice that it will always stutter in between programmes such as when the news is about to start - almost without fail.  This leads me to think that it must be recording related as one programme ends and new one starts.  </div>
</div></blockquote></div></div></div></blockquote></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="gmail_quote"><div><div class="h5">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_quote"><div><br></div></div></blockquote></div></div></div></blockquote></div><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="gmail_quote"><div><div class="h5"><div><br></div></div></div></div></blockquote></div><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="gmail_quote"><div>IIRC, there have been numerous complaints about pauses/stuttering while watching recordings when other recordings started/stopped.  This is really starting to look like disk contention where the recording being watched is not buffering enough to get through the (perfect storm?) disruption.  I haven&#39;t studied the code that much, but I believe this is what is called the &quot;Ring Buffer&quot;?  I have seen several commits regarding the size of it, and I was asked (by Taylor Ralph) to apply a patch that affected how the size was determined.</div>
</div></blockquote></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="gmail_quote"><div><br></div></div></blockquote></div><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="gmail_quote"><div>Maybe one of the devs can point me to a place where I can try making this larger or at least putting some debug in to see if this is the problem.</div>
</div></blockquote></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><br></blockquote></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div>-- Ken E.</div></blockquote></div></blockquote><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="gmail_quote"><div><div></div>
</div>
</div>
</blockquote></div><br><div>Last night I modified the routine RingBuffer.cpp (method: RingBuffer::CalcReadAheadThresh) to always choose the largest read block size.  Whether this was a proper change or not it did seem to eliminate the pauses I had been seeing.  I watched approximately four hours of recordings without any pausing of the video or audio.  I will leave this change in for a week to see if it has really solved the symptoms (if not the problem). At that point I might open a ticket with the patch.</div>
<div><br></div><div>Here is the diff for anyone else brave enough to give it a try:</div><div><br></div><div><div>diff --git a/mythtv/libs/libmythtv/RingBuffer.cpp b/mythtv/libs/libmythtv/RingBu</div><div>index 8b59616..d4613d6 100644</div>
<div>--- a/mythtv/libs/libmythtv/RingBuffer.cpp</div><div>+++ b/mythtv/libs/libmythtv/RingBuffer.cpp</div><div>@@ -816,7 +816,10 @@ void RingBuffer::CalcReadAheadThresh(void)</div><div>     rbs            = (estbitrate &gt; 5000)  ? KB128 : rbs;</div>
<div>     rbs            = (estbitrate &gt; 9000)  ? KB256 : rbs;</div><div>     rbs            = (estbitrate &gt; 18000) ? KB512 : rbs;</div><div>-    readblocksize  = max(rbs,readblocksize);</div><div>+    // readblocksize  = max(rbs,readblocksize); Ticket #8706: 8706_debug.diff</div>
<div>+    //  Try to maximize readahead buffer. By KRE 05/04/2011</div><div>+    rbs = KB512;</div><div>+    readblocksize  = rbs;</div><div><br></div><div>     // minumum seconds of buffering before allowing read</div><div>
     float secs_min = 0.25;</div></div><div><br></div><div>Regards,</div><div><br></div><div>Ken E.</div>