Thanks for the reply<div><br></div><div>I went ahead and re-implemented MPEG4VideoFileServerMediaSubsession (as MPEG4VideoFileServerMediaSubsession2) using a preferredFrameSize of 200. I did this before you responded, and it turned out it works relatively well. VLC still has some hiccoughs here and there with the video, but the OCU software that is the actual client that we will use in production is relatively well behaved. (Turns out they use the live555 library also... :-) ) Latency is good and connections setup quickly.</div>
<div><br></div><div>We're in somewhat of a time crunch here, so I'm going to put this under the "well-enough" category for now since I have to move on to getting 3DS Max imports working and creating the new UGV in software. But when I have the time to spend on it I'll come back and see if I can my on On demand subsession working. Hopefully it will let me put the encoder and streamer functions in one executable.</div>
<div><br></div><div>Chris V.<br>
<br><div class="gmail_quote">On Tue, Mar 5, 2013 at 7:08 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><div><blockquote type="cite"><div>What kind of problems can crop up if I set preferredFrameSize to something on the order of 200 bytes?</div></blockquote><div><br></div></div>
</div>This might not work, because you are reading/parsing a byte stream source. Our stream parsing code might not be able to handle reads that small.<div><br></div><div>But a much better solution would be to have your input source class deliver *discrete* MPEG-4 video frames - one at a time - directly to the server, instead of delivering an arbitrary-sized byte stream (via a pipe). If you do this, your "OnDemandServerMediaSubsession" subclass will need to use a "MPEG4VideoStreamDiscreteFramer" (instead of a "MPEG4VideoStreamFramer"). But your latency should be lowered considerably (and your code will be much more efficient).</div>
<span><font color="#888888"><br><div>
<span style="text-indent:0px;letter-spacing:normal;font-variant:normal;text-align:-webkit-auto;font-style:normal;font-weight:normal;line-height:normal;border-collapse:separate;text-transform:none;font-size:medium;white-space:normal;font-family:Helvetica;word-spacing:0px"><span style="text-indent:0px;letter-spacing:normal;font-variant:normal;text-align:-webkit-auto;font-style:normal;font-weight:normal;line-height:normal;border-collapse:separate;text-transform:none;font-size:medium;white-space:normal;font-family:Helvetica;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" target="_blank">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>