<html><head><meta http-equiv="content-type" content="text/html; charset=UTF-8"><style>body { line-height: 1.5; }blockquote { margin-top: 0px; margin-bottom: 0px; margin-left: 0.5em; }p { margin-top: 0px; margin-bottom: 0px; }body { font-size: 10.5pt; font-family: 'Segoe UI'; color: rgb(0, 0, 0); line-height: 1.5; }</style></head><body>
<div><span></span>hi Ross,</div><div><br></div><div>I followed your suggestion to use <span style="font-size: 10.5pt; line-height: 1.5; background-color: window;">“H264VideoStreamDiscreteFramer” instead of </span><span style="font-size: 10.5pt; line-height: 1.5; background-color: window;">“H264VideoStreamFramer”. Now that the data seems to be consumed right away after "afterGetting" callback, but VLC player can't set up session. </span></div><div><span style="font-size: 10.5pt; line-height: 1.5; background-color: window;"><br></span></div><div>For the start code, I have eleminated them all. My camera's working pattern is like this, when encoding key frame, it outputs SC+SPS+SC+PPS+SC+Frame, when encoding non-key frame, it outputs SC+Frame. So, after I eleminated the SC, what I sent to the sink object is SPS+PPS+FRAME for key frame, and FRAME alone for non-key frame.</div>
<div><br></div><div>Did I missed something here?</div><div><br></div><hr style="width: 210px; height: 1px;" color="#b5c4df" size="1" align="left">
<div><span><div style="margin: 10px;"><div style="line-height: normal;"><div style="margin: 7.5pt; position: static !important;"><div style="font-family: 'Segoe UI', Tahoma;"><p class="MsoNormal" style="margin: 0cm 0cm 0.0001pt; font-family: 宋体;"><font size="2">Xin</font></p></div><div style="font-size: 14px; font-family: 'Segoe UI', Tahoma;"><p class="MsoNormal" style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 宋体;"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif;">Mobile: +86 </span><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif;">186-1245-1524<o:p></o:p></span></p></div><div style="font-size: 14px;"><p class="MsoNormal" style="margin: 0cm 0cm 0.0001pt; font-size: 12pt;"><span lang="EN-US" style="font-family: Verdana, sans-serif; font-size: 10pt;">Email: </span><span lang="EN-US" style="font-family: Verdana, sans-serif; font-size: 10pt;"><a href="mailto:xliu@vscenevideo.com" style="color: purple;">xliu@vscenevideo.com</a><o:p></o:p></span></p></div><div style="font-size: 14px;"><p class="MsoNormal" style="margin: 0cm 0cm 0.0001pt; font-size: 12pt;"><span lang="EN-US" style="font-family: Verdana, sans-serif; font-size: 10pt;">QQ: </span><span lang="EN-US" style="font-family: Verdana, sans-serif; font-size: 10pt;">156678745</span></p></div></div></div></div></span></div>
<blockquote style="margin-top: 0px; margin-bottom: 0px; margin-left: 0.5em;"><div> </div><div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm"><div style="PADDING-RIGHT: 8px; PADDING-LEFT: 8px; FONT-SIZE: 12px;FONT-FAMILY:tahoma;COLOR:#000000; BACKGROUND: #efefef; PADDING-BOTTOM: 8px; PADDING-TOP: 8px"><div><b>From:</b> <a href="mailto:finlayson@live555.com">Ross Finlayson</a></div><div><b>Date:</b> 2017-01-13 01:30</div><div><b>To:</b> <a href="mailto:live-devel@ns.live555.com">LIVE555 Streaming Media - development & use</a></div><div><b>Subject:</b> Re: [Live-devel] how to make latency as low as possible</div></div></div><div><div>Your data source class (“FramedSource” subclass) looks mostly OK; however, I suspect that your problem is that you are not using the correct ‘framer’ class for your H.264 video ‘frames’ (in reality, H.264 NAL units).</div>
<div> </div>
<div>Look at your implementation of the “createNewStreamSource()” virtual function (in your “OnDemandServerMediaSubsession” subclass).  Because your data source - from your encoder - is discrete H.264 NAL units (i.e., one at a time), rather than a byte stream, you must use feed your input source to a “H264VideoStreamDiscreteFramer”, *not* a “H264VideoStreamFramer”.</div>
<div> </div>
<div>Note also that each ‘frame’ that come from your input source must be a single H.264 NAL unit, and MUST NOT be prepended by a 0x00 0x00 0x00 0x01 ‘start code’.</div>
<div> </div>
<div> </div>
<div>Ross Finlayson</div>
<div>Live Networks, Inc.</div>
<div>http://www.live555.com/</div>
<div> </div>
<div> </div>
<div>_______________________________________________</div>
<div>live-devel mailing list</div>
<div>live-devel@lists.live555.com</div>
<div>http://lists.live555.com/mailman/listinfo/live-devel</div>
</div></blockquote>
</body></html>