Hi,<br>
I have tested "testOnDemandRTSPServer" as follows (using source code<br>
live.2012.06.12.tar.gz):<br>
<br>
1- Stream MPEG2-TS stream over raw UDP locally (let's say to<br>
udp://<a href="http://127.0.0.1:1234" target="_blank">127.0.0.1:1234</a>). I am using FFmpeg for this task.<br>
<br>
2- Changed some lines in the application to take the UDP stream in raw mode;<br>
this is:<br>
$ char const* inputAddressStr = "127.0.0.1";<br>
$ Boolean const inputStreamIsRawUDP = True;<br>
<br>
3- Launched "testOnDemandRTSPServer" application; to serve correspondent RTSP<br>
stream (rtsp://...)<br>
<br>
4- Connect to RTSP source using another client; VLC in my case.<br>
<br>
Observations:<br>
- Connect VLC to rtsp source: opens and perfectly plays the UDP source without<br>
problems. CPU consumption keeps nearly to zero.<br>
- Disconnect the client (stop VLC).<br>
- Connect again the client (just press play button of VLC). The second time CPU<br>
consumptions raises 100%, and the video does not play well.<br>
<br>
Method "void BasicTaskScheduler0::doEventLoop(char* watchVariable)" seems to be related<br>
<div id=":sk">
to this problem. Nevertheless, It might exist some socket
connection/disconnection problem, as if some object(s) in the related
code are<br>
not properly used/released. If you schedule "BasicTaskScheduler0::doEventLoop",
adding for example a "usleep(0)" within the loop, CPU consumption
decreases, but this does not solve the problem: in a second connection
the video does not play well.<br>
<br>
Thanks in advance.<br>
Rafa.<br><br>
</div>