[Live-devel] Mpeg1or2 Stream very jittery

Ross Finlayson finlayson at live555.com
Wed Feb 9 19:45:50 PST 2011


First, rather than 'polling' (with a 50 ms delay) 
to check whether new data can be read, it is 
better to use the new 'event trigger' mechanism. 
See "liveMedia/DeviceSource.cpp" for a model on 
how to do this.


>Ø       For MPEG2 we are using this class MPEG1or2VideoStreamDiscreteFramer.
>So when I see this code I observe that a lot of 
>manipulation is done to the presentation time. 
>So is it possible that the time stamp values are 
>getting jumbled here?

"MPEG1or2VideoStreamDiscreteFramer" assumes that 
its input frames are in 'decoding order' - i.e., 
the order in which frames should be fed into a 
decoder (at the receiving end).  This is the same 
order in which frames should be sent across the 
network (via RTP).

The 'preentation time' for each frame, however, 
will be different - it corresponds to the time 
that each frame will be displayed on the 
(receiver's) screen.  Therefore, the 
"MPEG1or2VideoStreamDiscreteFramer" code adjusts 
the presentation times as appropriate (if the 
stream contains "B" frames).

To summarize: If your input data frames are being 
delivered in decoding order, then everything 
should be OK; any 'jittery' behavior that you see 
must be due to something else (unrelated to our 
code).  However, if your input data frames are 
*not* being delivered (to 
"MPEG1or2VideoStreamDiscreteFramer") in decoding 
order, then you will need to fix this.
-- 

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20110209/ed3c3807/attachment.html>


More information about the live-devel mailing list