The latest version of the "LIVE555 Streaming Media" software supports a new, custom RTSP command: "REGISTER". This request is currently non-standard; however, I will shortly be submitting an IETF Internet-Draft document that describes it.
This command can be used to 'advertise' a RTSP stream (given by a "rtsp://" URL) to a client application, or to a proxy server. In particular, a server can use this command to advertise one of its own streams to a client application (or proxy server), which then gets to reuse the TCP connection on which it received the request. This can be useful if the server is behind a firewall or NAT (e.g., on a mobile phone data network), but the client application (or proxy server) is on the public Internet.
For (non-proxy) Servers:
A LIVE555-based server application can 'advertise' one of its streams - described by a "ServerMediaSession" object in a "RTSPServer" - by calling the new member function:
specifying the remote client application (or proxy server)'s name or IP address, and port number. This will send a "REGISTER" request, advertising the stream.
For Proxy Servers:
To create a proxy server that automatically accepts incoming stream 'advertisements' (i.e., "REGISTER" requests), and proxies the advertised "rtsp://" URL for each such incoming request, create a
rather than a usual "RTSPServer".
(For an illustration of this, note how we implement the new '-R' command-line option for the "LIVE555 Proxy Server".)
For Client Applications:
A client application can create a simple server that accepts incoming 'advertisements' (i.e., "REGISTER" requests), and then automatically creates a new "RTSPClient" object to handle the "rtsp://" URL specified by each such incoming request. To do this, create a
object, by calling
(For an illustration of this, note how we implement the new '-R' command-line option for the "openRTSP" application.)