<div dir="ltr"><div>Hi Ross - <br><br>Thanks so much for getting back to me! <br><br>I see what you mean, and fDurationInMicroseconds is being calculated correctly. For my fragmentation issue, If I don't call afterGetting() then doGetNextFrame() is not ever re-invoked, so the server essentially stops on the first partial read. <br><br>Is there a method or variable I should set to indicate to Live555 that I want to continue accumulating data?</div><div><br></div> - James<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Oct 9, 2014 at 9:25 PM, Ross Finlayson <span dir="ltr"><<a href="mailto:finlayson@live555.com" target="_blank">finlayson@live555.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div><span class=""><blockquote type="cite"><div dir="ltr"><div>In my AudioBufferSource (based on AudioInputDevice) the doGetNextFrame happens at an extremely fast interval - which is sometimes causing my PCM audio running at 44.1 kHz to get fragmented. <br></div></div></blockquote><div><br></div></span>The frequency at which "doGetNextFrame()" gets called depends entirely on the value that you set for "fDurationInMicroseconds".  If you set this appropriately</div><div><span style="white-space:pre-wrap">    </span>i.e., fDurationInMicroseconds = (numSamplesDelivered*1000000)/samplesPerSecond</div><div>then "doGetNextFrame()" will get called at the appropriate frequency.</div><div><br></div><div>Alternatively, if you leave "fDurationInMicroseconds" at its default value of zero, then "doGetNextFrame()" will get called again immediately after you complete delivery of the previous frame, but that's OK, provided that you don't actually complete the delivery (i.e., call "FramedSource::afterGetting()") until you have accumulated however many samples you want to deliver each time.  (Of course, you shouldn't 'block' or 'spin' waiting for this to happen.)</div><span class="HOEnZb"><font color="#888888"><br><br><div>
<span style="border-collapse:separate;color:rgb(0,0,0);font-family:Helvetica;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:-webkit-auto;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="border-collapse:separate;color:rgb(0,0,0);font-family:Helvetica;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:-webkit-auto;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">Ross Finlayson<br>Live Networks, Inc.<br><a href="http://www.live555.com/" target="_blank">http://www.live555.com/</a></span></span>
</div>
<br></font></span></div><br>_______________________________________________<br>
live-devel mailing list<br>
<a href="mailto:live-devel@lists.live555.com">live-devel@lists.live555.com</a><br>
<a href="http://lists.live555.com/mailman/listinfo/live-devel" target="_blank">http://lists.live555.com/mailman/listinfo/live-devel</a><br>
<br></blockquote></div><br></div>