Ok here's what it looks like is happening.
I'm initializing the TaskScheduler, the usageEnvironment, and my RTSPClient instance and then calling TaskSchedular::doEvenLoop() without having initiated any RTSP connection (I've been doing that later after the fact via an outside signal).

The first time BasicTaskScheduler::SingeStep is called the fReadSet, fWriteSet, and fExceptionSet are all empty and select() returns an error (WSAINVAL) and the code starting on line 86 of BasicTaskScheduler.cpp (did I mention I'm on Windows) gets invoked to create a dummySocket so that the error doesn't occur again. However, the problem is from then on select() will always return immediately indicating that dummySocket is ready for writing and that's why my client is spinning at 100 percent on the CPU.

So I realize that I'm doing things a little different that openRTSP() but I don't think I'm doing anything wrong and my code has worked just fine for the last 2 years. Is this a bug in the library (maybe the dummySocket shouldn't be added to the fWriteSet) or should I change the way my code works?

Thanks,
Matt S.

On 6/29/2011 10:38 AM, Matt Schuckmannn wrote:
I just updated my code to use the latest Live555 code and I imeadiately noticed that my RTSP client application is spinning on the processor and taking up 100% of the processor it's running on. I tried running OpenRTSP against the same server and I don't the problem. The main difference between OpenRTSP and my client is my client is still using the synchronous interface and OpenRTSP isn't. The application seems to be spinning in the taskScheduler().doEventLoop(), and or SingleStep() methods. It's almost as if Select() is always returning immediately or something like that.
Did I miss something that I should have changed with my client?

I did noticed that with the new synchronous interface I am nesting calls to doEventLoop(). i.e. my app cals doEventLoop() at start up and then each time I I need to send a SET_PARAMETER command the synchronous interfaces calls doEventLoop() again, Could this be the problem?

I'll continue to debug and figure it out, but I appreciate any suggestions.

Matt S.


_______________________________________________
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel
_______________________________________________
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel

Reply via email to