On Tue, 2007-07-24 at 05:19 -0500, Ross Finlayson wrote: > > We are using openRTSP Client to receive mpeg2 streams. When we call > > PAUSE and then PLAY request during streaming then > > we observed functiongetResponse1() is getting called from two > > places simultaneously > > > No. Remember that the code is single-threaded. It is not possible for > "getResponse1()" - or any other function - to be called from two > places 'simultaneously'. > I found the same things. live.2007.04.24a
in file RTSPClient.cpp: function Boolean RTSPClient::playMediaSession(MediaSession& session, float start, float end, float scale) { ................ line 1096 if (fTCPStreamIdCount == 0) { // we're not receiving RTP-over-TCP // Arrange to handle incoming requests sent by the server envir().taskScheduler().turnOnBackgroundReadHandling(fInputSocketNum, (TaskScheduler::BackgroundHandlerProc*)&incomingRequestHandler, this); } If you comment out this code block, than you can always resume from pause. Otherwise this is like a russian roulette :-). getResponse -> getResponse1 -> (pause/resume okey) OR incomingRequestHandler -> incomingRequestHandler1 -> getResponse1 -> you are blocked in select Regards Andrey Kaminsky _______________________________________________ live-devel mailing list live-devel@lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel