<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"><<a href="mailto:kenneth.emerson@gmail.com">kenneth.emerson@gmail.com</a>></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"><<a href="mailto:scurtis@fixation.net" target="_blank">scurtis@fixation.net</a>></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"><<a href="mailto:kenneth.emerson@gmail.com" target="_blank">kenneth.emerson@gmail.com</a>></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 "stuttering" 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't studied the code that much, but I believe this is what is called the "Ring Buffer"? 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 > 5000) ? KB128 : rbs;</div>
<div> rbs = (estbitrate > 9000) ? KB256 : rbs;</div><div> rbs = (estbitrate > 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>