Subject: Why SMPTE ranges required for minimal RTSP server ?

From: Philipp Hoschka <[email-masked]>
Date: Sun, 06 Jul 1997 15:54:28 +0200

The current RTSP spec allows to leave out a couple of 
methods when implementing an RTSP server.

Only four methods are required to be implemented (PLAY,
TEARDOWN, SETUP, OPTIONS).

This is great, since it allows to quickly implement a
minimal RTSP server in the following way:
- take an existing media server that doesn't currently
  use RTSP, but has already solved the hard problem of
  serving media
- implement an RTSP server that accepts the RTSP methods
  named above
- If you get a PLAY request, let the RTSP server hand it
  off to the media server, who does the streaming (e.g. 
  spawn a process which is the media server)
- If you get a TEARDOWN request, kill the process

In other words, existing media servers can be used as 
some sort of "server helper applications", similar to
helper applications in today's browsers.

This architecture is also pretty much in line with the seperation
of the control stream and the media stream in RTSP.

The problem is that the current draft makes it quite hard 
to implement such an architecture.

The current draft requires the server to implement range requests.
(sec 10.4 "A media server only supporting playback MUST
support smpte format ...).

Many servers today don't allow to play subranges of media 
files they play out.

Making ranges mandadory also seems a bit arbitrary
 - why make ranges mandatory and not, say, PAUSE ?
HTTP 1.1 doesn't require support of range-requests.

I'd suggest to either leave out this sentence, or to change the
MUST into a SHOULD

-Philipp

---

From: Henning Schulzrinne <[email-masked]>
Date: Mon, 07 Jul 1997 14:01:42 +0200

> helper applications in today's browsers.

One would hope that many such helper processes can take commandline
arguments that allow selection of parts of a presentation...

> support smpte format ...).

It doesn't, for the reasons you mention. The table in 'Header Field
Definitions' lists Range as optional. However, if you support range, you
need to support SMPTE and NPT. Please be sure to always refer to the
last draft on the web site; we have been a bit delinquent about updating
the I-D.

---

From: Philipp Hoschka <[email-masked]>
Date: Mon, 07 Jul 1997 14:11:49 +0200

>It doesn't, for the reasons you mention. 

Good

>The table in 'Header Field

I referred to the June 2 version, which is the latest version on the web site:

http://www.cs.columbia.edu/~hgs/rtsp/draft/draft-ietf-mmusic-rtsp-03.txt

This has the sentence I quote in section 10.4 - it doesn't mention that NPT
needs to be supported, btw.

It is true that the table 'Header Field defintions" lists
"range" is optional - an inconsistency.

(all other private comments are wrt to that draft as well)