IBM Research

RTSP Sample clients

Created: 26.6.97
Modified: 10.9.97
Contents:
  1. Talking to HTTP/RTSP servers
  2. Sample clients

1. Talking to HTTP/RTSP servers

A simple way to test the liveliness of an RTSP server is to talk to it using telnet, as shown below brown being what you type, <CR> being carriage-return). On Win95, remember to set "Local Echo" on before typing the request.
	$ telnet necromancer 8554
	Trying...
	Connected to necromancer.watson.ibm.com.
	Escape character is '^T'.

	options * RTSP/0.1 1222
	<CR>
	<CR>

	RTSP/0.2 1222 200 OK : options *
	Date: Thu, 26 Jun 1997 GMT
	Server: RTSP/0.2 prototype server -- prasad@watson.ibm.com:jun97
	Public: SETUP, TEARDOWN, PLAY, PAUSE, RECORD.
	Comment: This is a dummy server.

The tool tcponce is to use than expect or other shell scripts and adequate for most purposes:

	tcponce $host:$port < request > response
It first sends the request file as is, adding \r's if necessary, and then reads the response till a blank line.

The client may want to flag the Comment header as error, which serves as one test of the client parser.


2. Sample clients

Three types of clients have been implemented, utilizing the same parser code used by the server, to illustrate the RTSP protocol interaction. A real multimedia client is expected to also handle the parsing of <session> tags, process RTSL content description, manage concurrent sessions with multiple servers and control multimedia client software.

The form client was constructed for testing and debugging the server validation functions.

The command line client was written to speed up server testing. It also parses the server response by setting up server_* environment variables corresponding to the response parameters.

The Deepblue client shows how the command line client and its parser can be used to construct a Web/CGI frontend for multimedia. The RTSP protocol then principally serves to formalize the CGI-media server interaction. Authentication responsibilities can then be left entirely to the Web server.


[ Research home page | IBM home page | Search | ContactIBM | Legal | Author ]