[Live-devel] [PATCH 2/2] MPEG, H264, H265: add option to preserve presentation time from source

Stas Tsymbalov tsymbalov at trueconf.ru
Fri May 29 01:52:29 PDT 2015


> Yes, but the way to deliver these is through the “*DiscreteFramer” classes.  Specifically, if your input source consists of H.264 NAL units - each with a known presentation time - then you should feed your input source into a “H264VideoStreamDiscreteFramer” (and from there into a “H264VideoRTPSink”).  Note, BTW, that each H.264 NAL unit that you feed into a “H264VideoStreamDiscreteFramer” must *not* begin with a ‘start code’.

In my case encoder provides all NAL units corresponding for 1 frame of video in a byte stream, so I can't use DiscreteFramer.

> If - for whatever reason - you want to have your H.264 video source as a byte stream, but with pre-computed presentation times stored separately, then you could implement this by having your H.264 video byte stream feed into a “H264VideoStreamFramer”, which in turn would feed into your own “FramedFilter” subclass that would also get presentation times from your separate source.  Your “FramedFilter” subclass would then feed these H.264 NAL units, along with the presentation times, into a “H264VideoStreamDiscreteFramer”.  Again, no change to the supplied code is needed to do this.

Thanks for advise, but passing presentation times separately from frames and around H264VideoStreamFramer seems far more complicated and clunky than this small change to framer, so I will stick with my solution.

-- 
Stas Tsymbalov
TrueConf LLC
http://trueconf.com/


More information about the live-devel mailing list