<html><head><meta http-equiv="Content-Type" content="text/html charset=iso-8859-1"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><blockquote type="cite"><div dir="ltr"><div style="word-wrap:break-word"><div style="font-family:arial,sans-serif;font-size:13px">I think I figured the cause - many of the incoming RTP frames "get" the same presentation time (via 'receptionStatsDB().noteIncomingPacket(...)'.</div></div></div></blockquote><div><br></div>No, this is a 'wild goose chase'.  The presentation times that get set for the outgoing Transport Stream packets are determined *entirely* by the "MPEG2TransportStreamFramer" (that feeds into the "SimpleRTPSink").  They have nothing to do with the presentation times of the incoming packets.</div><div><br></div><div><br></div><div><blockquote type="cite"><div dir="ltr"><div style="word-wrap:break-word"><div style="font-family:arial,sans-serif;font-size:13px">Here is my object chain, maybe you can see something wrong:</div><div style="font-family:arial,sans-serif;font-size:13px">
<br></div><div><font face="arial, sans-serif">   MPEG1or2VideoRTPSource --> </font></div><div><font face="arial, sans-serif">       MPEG2TransportStreamFromESSource --> </font></div><div><font face="arial, sans-serif">          FrameQueue(this is mine)  --> </font></div>
<div><font face="arial, sans-serif">              MPEG2TransportStreamFramer --></font><br></div><div><font face="arial, sans-serif">                   SimpleRTPSink</font></div></div></div></blockquote><div><br></div>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.</div><div><br></div><div>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).</div><br><div apple-content-edited="true">
<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; ">Ross Finlayson<br>Live Networks, Inc.<br><a href="http://www.live555.com/">http://www.live555.com/</a></span></span>
</div>
<br></body></html>