[Live-devel] how to make latency as low as possible

xliu at vscenevideo.com xliu at vscenevideo.com
Fri Jan 13 05:06:21 PST 2017


hi Ross,

I followed your suggestion to use “H264VideoStreamDiscreteFramer” instead of “H264VideoStreamFramer”. Now that the data seems to be consumed right away after "afterGetting" callback, but VLC player can't set up session. 

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.

Did I missed something here?



Xin
Mobile: +86 186-1245-1524
Email: xliu at vscenevideo.com
QQ: 156678745
 
From: Ross Finlayson
Date: 2017-01-13 01:30
To: LIVE555 Streaming Media - development & use
Subject: Re: [Live-devel] how to make latency as low as possible
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).
 
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”.
 
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’.
 
 
Ross Finlayson
Live Networks, Inc.
http://www.live555.com/
 
 
_______________________________________________
live-devel mailing list
live-devel at lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20170113/c4fa4f43/attachment.html>


More information about the live-devel mailing list