[vlc-devel] [PATCH] Handle GET_PARAMETER keepalive responses during PAUSE

Paul Clark paul at packetship.com
Thu Jun 25 19:22:49 CEST 2015


On 25/06/15 17:59, Rémi Denis-Courmont wrote:
> And so the other threads need to tell the live555 thread to do 
> something. Except they cannot because the live555 is sleeping inside 
> the live555 event loop...
> ...
> So far you have _not_ proposed any reasonable way to use live555.

As I understand it (see parallel conversation) the other threads need to 
post in event callback requests using TriggerEvent() (which is the 
single exception to the same-thread rule) so the event loop calls our 
handler from the live555 thread.  This handler can then call SendXxx() 
safely.  This means defining a bunch of event handlers and marshalling 
all their parameters through a struct, but it's doable, if slightly painful.

The additional wrinkle is that Ross recommends we share the 
UsageEnvironment and TaskScheduler across multiple RTSP streams, 
although a middle way could be to keep an independent 'env' and 
'scheduler' for each demux as we do now.  If our only interface to 
live555 is through event posting, though, it should be safe to share 
(e.g. through ref-counted static pointers) and it would save a thread 
per stream, if that matters...

Cheers

Paul








More information about the vlc-devel mailing list