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: "RTSPServer::registerStream()" 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 "RTSPServerWithREGISTERProxying" rather than a usual "RTSPServer". (see "liveMedia/include/RTSPServer.hh"). (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 "HandlerServerForREGISTERCommand" object, by calling "HandlerServerForREGISTERCommand::createNew()" (see "liveMedia/include/RTSPClient.hh"). (For an illustration of this, note how we implement the new '-R' command-line option for the "openRTSP" application.) 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