<!doctype html public "-//W3C//DTD W3 HTML//EN">
<html><head><style type="text/css"><!--
blockquote, dl, ul, ol, li { padding-top: 0 ; padding-bottom: 0 }
--></style><title>Re: [Live-devel] Program flow
question</title></head><body>
<blockquote type="cite" cite><font face="Arial" size="-1">I imagine it
is because there is no delay function in my code. At the moment the
'fTimePerFrame' is set in the constructor for ElphelJPEGDeviceSource
but not used anywhere.</font></blockquote>
<div><br></div>
<div>Yes, because the original code read from a live source (a
camera), it was not necessary to set the
"fDurationInMicroseconds" variable in your
"doGetNextFrame()" function. (By not setting this
variable, it remains at its default value of 0.) However,
because you are now reading from a pre-recorded file - rather than
from a live source - you must now set that variable.</div>
<div><br></div>
<div>You should add the following line to your
"ElphelJPEGDeviceSource::deliverFrameToClient()" function,
sometime before the
"envir().taskScheduler().scheduleDelayedTask()" call:</div>
<div><br></div>
<div><x-tab>
</x-tab>fDurationInMicroseconds = fTimePerFrame;</div>
<div><br></div>
<blockquote type="cite" cite><font face="Arial" size="-1">Within the
doEventLoop() what is telling the process to only call
doGetNextFrame() regularly (5 times per second say) rather than
continuously?</font></blockquote>
<div><br></div>
<div>The "fDurationInMicroseconds" variable (which is
ultimately used by "MultiFramedRTPSink", when rescheduling
the next outgoing RTP packet after sending one).</div>
<x-sigsep><pre>--
</pre></x-sigsep>
<div><br>
Ross Finlayson<br>
Live Networks, Inc.<br>
http://www.live555.com/</div>
</body>
</html>