<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>I may ask a very simple question, but I couldn't manage to figure it out by my self as I don't know livemedia library arch deeply. I was wondering if there is any kind of frame buffer implementation or this is out of livemedia scope.<br>
<br></div><div>I am thinking of moving my code to livemedia555 for an RTP streaming app (receiver and sender sides), but one of my major concerns goes about the buffer, where packets are stored (after being parsed, imagine h264 payload) and where coded frames are stored (a collection of packets). At which classes should I have a look to understand how the buffers works? <br></div></div></blockquote><div><br></div></div>I'm not sure I completely understand your question, but 'reading between the lines', I think you are asking this because you want to *display* an incoming video stream (rather than just receive packets, as the "testRTSPClient" demo application does).<div><br></div><div>If that's the case, then you should first look at a media player like VLC <<a href="http://www.videolan.org/vlc/">http://www.videolan.org/vlc/</a>>, which uses the "LIVE555 Streaming Media" library's RTSP client implementation to receive a RTSP/RTP video (and/or audio) stream, and display it.</div><div><br></div><div>If you want to program something like this yourself, however, then note that you will need decoding (i.e., codec) software (or hardware) to translate the (compressed, encoded) H.264 video NAL units into displayable video frames. Note, however, that the "LIVE555 Streaming Media" software *does not* include any codec (video decoding) software; you would need to get that from somewhere else.</div><div><br></div><div>However, if you have video decoding software (or hardware), then you can easily fit this into a LIVE555-based receiver application. See, for example, the comments at line 133 of "testProgs/testRTSPClient.cpp".</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; "><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; ">Ross Finlayson<br>Live Networks, Inc.<br><a href="http://www.live555.com/">http://www.live555.com/</a></span></span>
</div>
<br></body></html>