[Live-devel] Condition for pause of sub-stream in ProxyServerMediaSubsession::closeStreamSource

Erik Montnemery erik at montnemery.com
Fri Sep 30 07:36:36 PDT 2016


Thanks, Ross!

>
> our code here is conservative: If there’s another client using the session, then we send a “PAUSE” only on the particular subsession that’s being closed.
OK, so just so I understand:
In the case I described, the client was streaming only one track over
TCP. When the TCP connection is broken,
only that track is deleted and the session remains valid.
The conservative check in
ProxyServerMediaSubsession::closeStreamSource thus doesn't pause the
whole stream.

If the client is instead streaming both of the two tracks over TCP,
both tracks will be deleted, as well as the session which is no longer
valid.
The conservative check in
ProxyServerMediaSubsession::closeStreamSource will then pause the
whole stream.

I think the comment in ProxyServerMediaSubsession::closeStreamSource()
is slightly misleading,
because what is really checked is that:
// There are client(s) with valid SESSION(s) for this stream.
// This means there might be client(s) still streaming other
subsessions of this stream.
// Therefore, we don't send a "PAUSE" for the whole stream, but only
for the sub-stream:

Do I understand correctly?

/Erik



More information about the live-devel mailing list