[Live-devel] testOnDemandRTSPServer app takes 100% cpu when disconnecting and connecting external client (e.g. VLC)

Rafael Antoniello rafael.antoniello at gmail.com
Wed Jun 13 07:36:04 PDT 2012


Hi,
I have tested "testOnDemandRTSPServer" as follows (using source code
live.2012.06.12.tar.gz):

1- Stream MPEG2-TS stream over raw UDP locally (let's say to
udp://127.0.0.1:1234). I am using FFmpeg for this task.

2- Changed some lines in the application to take the UDP stream in raw mode;
this is:
$ char const* inputAddressStr = "127.0.0.1";
$ Boolean const inputStreamIsRawUDP = True;

3- Launched "testOnDemandRTSPServer" application; to serve correspondent
RTSP
stream (rtsp://...)

4- Connect to RTSP source using another client; VLC in my case.

Observations:
- Connect VLC to rtsp source: opens and perfectly plays the UDP source
without
problems. CPU consumption keeps nearly to zero.
- Disconnect the client (stop VLC).
- Connect again the client (just press play button of VLC). The second time
CPU
consumptions raises 100%, and the video does not play well.

Method "void BasicTaskScheduler0::doEventLoop(char* watchVariable)" seems
to be related
 to this problem. Nevertheless, It might exist some socket
connection/disconnection problem, as if some object(s) in the related code
are
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.

Thanks in advance.
Rafa.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20120613/a5879eb1/attachment.html>


More information about the live-devel mailing list