[Live-devel] RTP stream retransmit

Zvika Meiseles zvika.meiseles at gmail.com
Sun Feb 3 10:17:11 PST 2013


This looks correct.  Note that - as I noted earlier - it's the
"MPEG2TransportStreamFramer" that computes the 'presentation times' of the
outgoing packets.  It does this by inspecting the PCR timestamps in the
Transport Stream packets that are fed to it.

Ok, I got that.

Assuming that the input Transport Stream packets have (occasional) PCR
timestamps (as all Transport Streams should have), I suspect that the
problem is in the implementation of your 'FrameQueue'.  You can verify this
by replacing the "SimpleRTPSink" with a "FileSink" - and then trying to
play the output file (with a media player).

My queue does not do anything with the video packets except store them in a
list, and feed them into the "MPEG2TransportStreamFramer".
My problem, I think, is in the PCR timestamps of the incoming packets.
The incoming RTP packets are not in TS format - they are Elementary
streams, which are "multiplexed" (not exactly, as there is only 1 source)
and converted into TS.

If I'm not mistaken, then "MultiFramedRTPSource" is the one giving the
incoming packets their presentation-time (via "receptionStatsDB()
.noteIncomingPacket"), which "MPEG2TransportStreamFromESSource" turns into
PCR (via "InputESSourceRecord").

Am I right?

Zvika
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20130203/b49d3efd/attachment.html>


More information about the live-devel mailing list