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
_______________________________________________ live-devel mailing list live-devel@lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel