<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><blockquote type="cite"><div>I developed some code with Live555 to receive mpeg ts stream over raw UDP and send it out wrapped in RTP. It works fine for me. Now, I need to receive UDP packet containing 7 TS packets but send out the UDP/RTP packet with variable number (from 1 to 7) of TS packets in it. That means one single incoming UDP packet (with 7 TS packets payload) needs to be broken into 2 or more outgoing RTP packets. What's the best way to do that with Live555?<br></div></blockquote><div><br></div></div>The best way to do this is to insert a 'filter' object between the "BasicUDPSource" object (that receives Transport Stream data over raw UDP) and the "SimpleRTPSink" object (on which you send Transport Stream data over RTP).  This filter object will deliver the appropriate number of 188-byte TS packets from each chunk of 7 TS packets that it receives from its upstream "BasicUDPSource" object.<div><br></div><div>Specifically, you would define your own subclass of "FramedFilter", and reimplement the "doGetNextFrame()" virtual member function.</div><br><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>