Therefore, we went deeper into the code until the point of the BasicTaskscheduler. Here we see that after calling the select statement in the "void BasicTaskScheduler::SingleStep(unsigned maxDelayTime)" function, we only get a limited number of readable sockets as a return value. If, for example, we have 52 media tracks, we create at least 104 sockets (52 for RTP and 52 for RTCP), but the result value is never 104 or higher, no matter how long we wait in between two select calls.
You might have run into an OS-imposed limit on the number of sockets you can create within a single process. Depending on your OS, you might be able to increase this limit.
Is it really the case that a *single* RTSP session contains 52 audio tracks? Or do you have separate RTSP sessions (i.e., separate "rtsp://" URLs) for each audio track? If it's the latter case, then it might make more sense to do this using several processes (application instances) - one for each audio track - rather than trying to do everything within a single process.
-- Ross Finlayson Live Networks, Inc. http://www.live555.com/ _______________________________________________ live-devel mailing list live-devel@lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel