<p><font color="#000000">Hi,</font></p>
<div><font color="#000000">I am trying to implement a RTSP client application for STB. All i want is streamed RTSP over RTP data to be available for my STB(which will then decode it). I want to put the data packet by packet inside a buffer that can be read by a thread continuously in my STB application. This buffer must be filled packet by packet by RTSP client application.<br>
For this i create a BufferSink class object(derived from MediaSink class). This class contains the buffer from where my STB application wants to read the data. <br>I wanted to confirm if i understand the following correct:<br>
I understand that data from network sockets is read to RTPSource by live555 code. So, the next thing after instantiating the Buffersink class will be to tranfer data from RTPSource to BufferSink's buffer. And i want this to happen packet by packet. <br>
</font></div>
<div><font color="#000000">1) For the above requirement shall i call mediasubsession->sink->startPlaying(mediasubsession->readSource()..) which maps to MediaSink->startPlaying() and then calls continueplay() which is implemented in BufferSink class? Inside continueplay() i can call getNextFrame() with the help of fsource object to get the next packet?</font></div>

<div><font color="#000000">The STB application thread which will be reading from BufferSink's buffer shall be responsible for calling mediasubsession->sink->startPlaying() whenever new data is required. </font></div>

<div> </div>
<div>2) Also it will be helpful if you can clarify that when data is avaliable to RTPSource from the network sockets? Is it when doGetNextFrame() is called by getNextFrame() ??</div>
<p><font color="#000000">Please correct me if i am wrong.</font></p>
<p><br><font color="#000000">Regards,<br>Ashish</font></p>
<p><font color="#000000"></font> </p>