[vlc-devel] [PATCH 2/2] live555: Use OPTIONS as keep-alive fallback
Julian Scheel
julian at jusst.de
Wed Jun 24 09:28:30 CEST 2015
Am 23.06.2015 um 13:34 schrieb Paul Clark:
> On 18/06/15 16:33, Julian Scheel wrote:
>> So far no keep-alive messages are sent when GET_PARAMETERS is not
>> supported by
>> the server. Change this to fall back to sending OPTIONS as keep-alive
>> message,
>> which is the default keep-alive message in the SAT>IP specification. As
>> RFC2326 does not enforce a specific command as keep-alive message this
>> shall
>> be valid for any compliant RTSP server.
>
> Ah, another point I've just noticed is that you've only changed the
> keepalive call in Demux() - there is another in TimeoutPrevention()
> which operates while paused (but is broken, see my other mail today). So
> at the moment your change will send GET_PARAMETER during pause even to
> servers that don't understand it, including SAT>IP ones...
As you pointed out using OPTIONS as keep-alive is not RFC2326 compliant,
as it would not contain a Session header normally. So this is merely a
fallback for SAT>IP, which explicitly does not know the PAUSE command
and thus a paused state. Hence the TimeoutPrevention() would not be used
at all for SAT>IP sources. Although I must admit that due to the nature
of a generic-fallback, not explicitly checking for SAT>IP servers, it is
at least a bit confusing to only do it in Demux...
So I see two possibilities:
(a) change the code in Demux to only use OPTIONS as keep-alive when
satip-access was used
(b) use OPTIONS as fallback in TimeoutPrevention as well, knowing it is
unlikely to be ever needed/used
(a) would obviously be more clear in terms of not violating the RFC
except for SAT>IP scenario, but has the drawback that some servers which
would work with a normal RTSP url now would only work with satip://
then. Namedly those which implement a proper out-of-session DESCRIBE to
obtain SDP announcements, but still rely on OPTIONS as keep-alive
Any preferences?
-Julian
More information about the vlc-devel
mailing list