Subject: [MMUSIC] RTSP Matrix version 1

From: Ashley Wee <[email-masked]>
Date: Mon, 22 Apr 2002 16:54:42 -0700

Here is the first-cut RTSP Matrix based off RFC2326 (April 1998) without 
section 12 and Appendix A. Any comments on improvements or questions 
regarding validity is very much welcome.

TO DO:
- Server, Proxy, Client support are yet to be confirmed.
- Section 12 and Appendix A will be included later.
- Fix some sentences that have been cropped due to line length limitations.

Thanks
Ashley Wee
RealNetworks
2601 Elliott Ave, Seattle, WA 98121
Phone: (206) 892-6310
email: [email-masked]

Keys for Column Headings
SRV=Server
PRY=Proxy
CLT=Client

Keys for requirements explicitly callout
M=MUST
MN=MUST NOT
SD=SHOULD
SDN=SHOULD NOT
SL=SHALL
SLN=SHALL NOT
MAY=MAY
NA=NOT APPLICABLE
OPT=OPTIONAL
REQ=REQUIRED
REC=RECOMMENDED

Keys for requirements implicitly callout
m=must
mn=must not
sd=should
sdn=should not
sl=shall
sln=shall not
may=may
na=not applicable
opt=optional
req=required
rec=recommended

Other Keys
desc=describe
para=parameter
mthd=method
recd=recording
conf=conference
info=information
pres=presentation
attr=attribute
app=application
init=initialization
id=identifier
req=required
diff=different
avail=available
sync=synchronize
auth=authenticate

NOTES:
1. Line numbers are exactly as in RFC. Some blank, page header and footer 
lines have been deleted.
2. Server,Proxy, Client shows explicit and implicit requirements called 
out. YET TO BE CONFIRMED.
3. Missing requirement callout does not exclude a requirement.

LINE FEATURE SUMMARY                         SECTION        SRV PRY CLT
   324control multiple streams                1.3 Terminology
   330Multiparty, multimedia pres             1.3 Terminology
   343request media data                      1.3 Terminology
   347Transport layer virtual circuit         1.3 Terminology
   351File contain multiple streams           1.3 Terminology may may may
   352comprise a pres                         1.3 Terminology may may may
   353SRV offer agg. control                  1.3 Terminology
   354container file not embedded in protocol.1.3 Terminology
   357timing sink source relationship         1.3 Terminology
   358sink must reproduce source timing       1.3 Terminology m   m  m
   366info. transferred as payload            1.3 Terminology
   367meta info. in entity-header fields      1.3 Terminology
   368content in entity-body                  1.3 Terminology
   372Datatype/codec specific init..          1.3 Terminology
   374Transport independent info.             1.3 Terminology req req req
   379Parameter may be changed before         1.3 Terminology may may may
   380or during stream playback.              1.3 Terminology
   383playback or recd services               1.3 Terminology
   384diff streams from diff SRVs             1.3 Terminology
   399Redirection to diff media SRV.          1.3 Terminology
   402single media instance                   1.3 Terminology
   404RTP stream consists of RTP and RTCP     1.3 Terminology
   406equivalent to DSM-CC stream([5]).       1.3 Terminology
   410structured sequence of octets           1.3 Terminology
   411transmit by connection or connectionless1.3 Terminology
   415may be machine, record, SRV             1.3 Terminology may may may
   419one or more streams media feed          1.3 Terminology
   420using pres desc.                        1.3 Terminology
   422agg. control of those streams           1.3 Terminology
   425info. about one or more streams         1.3 Terminology
   429SDP "session" for live pres.            1.3 Terminology
   434An RTSP response.                       1.3 Terminology
   435HTTP response indicated explicitly.     1.3 Terminology
   438An RTSP request                         1.3 Terminology
   439HTTP request indicated explicitly.      1.3 Terminology
   442complete RTSP "transaction"             1.3 Terminology
   457negotiation of transport info.          1.3 Terminology
   465New mthds and para. added               1.4 Proto. Prop
   468can parsed by standard HTTP or MIME     1.4 Proto. Prop
   471re-uses web security mechanisms.        1.4 Proto. Prop
   472HTTP auth basic (RFC 2068)              1.4 Proto. Prop
   473digest auth (RFC 2069)                  1.4 Proto. Prop
   474reuse transport/network layer security  1.4 Proto. Prop may may may
   478use (UDP)                               1.4 Proto. Prop may may may
   479reliable datagram protocol RDP, RFC1151 1.4 Proto. Prop
   480reliable stream protocol such as TCP    1.4 Proto. Prop
   484media stream reside ondiff SRV          1.4 Proto. Prop
   485CLT establishes control sessions        1.4 Proto. Prop
   487Media synch performed at transport      1.4 Proto. Prop
   490control both record and playback        1.4 Proto. Prop
   491can alternate between two modes         1.4 Proto. Prop
   495Stream control divorced conf.           1.4 Proto. Prop
   496initiation protocol create unique id.   1.4 Proto. Prop
   498SIP [12] or H.323                       1.4 Proto. Prop
   511frame-level accuracy SMPTE time stamps  1.4 Proto. Prop
   512allow remote digital editing.           1.4 Proto. Prop
   515does not impose pres or meta            1.4 Proto. Prop
   516can convey type of format to be used    1.4 Proto. Prop
   518must contain at least one RTSP URI.     1.4 Proto. Prop
   521handled by both app. and                1.4 Proto. Prop sd  sd sd
   522 transport-layer (SOCKS [14]) firewalls 1.4 Proto. Prop may may may
   523SETUP mthd open "hole" for UDP          1.4 Proto. Prop
   527reuses HTTP concepts                    1.4 Proto. Prop
   528 existing infrastructure can be reused. 1.4 Proto. Prop
   529(Platform for Internet Content Selection1.4 Proto. Prop
   531does not just add mthds to HTTP         1.4 Proto. Prop
   535startstream,to stopstream               1.4 Proto. Prop m   m  m
   536SRVs not stream CLTs cannot stop        1.4 Proto. Prop sdn sdn sdn
   540CLT can negotiate transport mthd        1.4 Proto. Prop
   544If basic are disabled, clean mthd       1.4 Proto. Prop m   m  m
   545CLT determine mthds not implement       1.4 Proto. Prop
   547present appropriate user interface.     1.4 Proto. Prop
   551 multi-CLT capability.                  1.4 Proto. Prop
   553easily extensible to multi-CLT          1.4 Proto. Prop
   555passing remote would be possible.       1.4 Proto. Prop
   556how several CLTs negotiate access;      1.4 Proto. Prop
   571will support diff sets of requests.     1.5 Extend RTSP
   581implement all header fields described   1.5 Extend RTSPSD  SD  SD
   591Existing mthds can be extended          1.5 Extend RTSP
   592para. be ignored by recipient.          1.5 Extend RTSP
   595tag to extension be added               1.5 Extend RTSP may may may
   597New mthds can be added.                 1.5 Extend RTSP
   598not understand responds with 501        1.5 Extend RTSP
   599sender should not attempt to use mthd   1.5 Extend RTSP sdn sdn sdn
   600CLT use OPTIONS mthd to inquire         1.5 Extend RTSP may may may
   601SRV SHOULD list mthds                   1.5 Extend RTSPSD  SD  SD
   603new version of protocol can be defined  1.5 Extend RTSP
   604allow all aspects to change             1.5 Extend RTSP
   609may be identified by an RTSP URL.       1.6 Overall Op. may may may
   611defined by pres desc.                   1.6 Overall Op.
   613desc. obtained by CLT                   1.6 Overall Op. may may may
   625describe one or more press              1.6 Overall Op.
   630 may contain several media streams.     1.6 Overall Op. may may may
   633make up pres, encodings,                1.6 Overall Op.
   634language, para. enable CLT              1.6 Overall Op.
   636each stream is individually controllable1.6 Overall Op.
   637identified RTSP URL, points media SRV   1.6 Overall Op.
   639streams located on diff SRVs            1.6 Overall Op.
   640audio and video streams can split       1.6 Overall Op.
   642transport mthds SRV capable of          1.6 Overall Op.
   644network destination address and         1.6 Overall Op.
   645port need to be determined.             1.6 Overall Op.
   649transmitted to source of RTSP request,  1.6 Overall Op.
   650port number chosen by CLT.              1.6 Overall Op.
   651transmitted same reliable stream RTSP.  1.6 Overall Op.
   654picks multicast address and port.       1.6 Overall Op.
   660multicast address, port and key         1.6 Overall Op.
   661given by conf. desc.                    1.6 Overall Op.
   666sent via separate protocol,             1.7 RTSP States may may may
   669delivery continues no RTSP requests     1.7 RTSP States
   679issued sequentially on diff TCP         1.7 RTSP States
   680SRV maintain "session state"            1.7 RTSP States
   681correlate RTSP requests withstream      1.7 RTSP States
   684many mthds not contribute to state      1.7 RTSP States
   690Causes SRV to allocate resources        1.7 RTSP States
   694Starts transmission allocated via SETUP 1.7 RTSP States
   697Temporarily halts stream                1.7 RTSP States
   700 Frees resources. Session ceases        1.7 RTSP States
   703contribute to state use Session header  1.7 RTSP States
   705SRV generates session id.s              1.7 RTSP States
   710RTSP overlap with HTTP.                 1.8 Other Proto may may may
   711interact with HTTP initial contact      1.8 Other Proto
   713allow diff hand-off points              1.8 Other Proto
   715can be retrieved using HTTP or RTSP     1.8 Other Proto
   716reduces roundtrips browser scenarios    1.8 Other Proto
   717allow RTSP SRVs with no HTTP            1.8 Other Proto
   721out-of-band indiff protocol.            1.8 Other Proto
   722asymmetric protocol                     1.8 Other Proto
   723both CLT and SRV issue request          1.8 Other Proto
   724 requests are also not stateless        1.8 Other Proto may may may
   725set para. and control stream            1.8 Other Proto
   737security and proxies.                   1.8 Other Proto
   738adopt HTTP caches, proxies and auth     1.8 Other Proto
   742RTSPnot tied to RTP.                    1.8 Other Proto
   744existence pres desc.                    1.8 Other Proto
   745express static and temporal properties  1.8 Other Proto
   746containing several media streams.       1.8 Other Proto
   778rtsp_URL"rtsp:" | "rtspu:" )            3.2 RTSP URL
   779host [ ":" port ] [ abs_path ]          3.2 RTSP URL
   780host=<legal host domain of IP address   3.2 RTSP URL
   781(dotted decimal form),                  3.2 RTSP URL
   790RFC 1123 \cite{rfc1123}>                3.2 RTSP URL
   791port=*DIGIT                             3.2 RTSP URL
   800rtsp protocol (within Internet, TCP)    3.2 RTSP URL
   801rtspu an unreliable protocol (UDP).     3.2 RTSP URL
   803portempty or not given, port 554assumed 3.2 RTSP URL
   809IP addresses URLs SHOULD avoided        3.2 RTSP URL   SD  SD SD
   812…identified bytextual media id.         3.2 RTSP URL
   813character set and escape conventions…   3.2 RTSP URL
   814URLs refer stream or agg. streams       3.2 RTSP URL    may may may
   816apply to their whole pres or an individu3.2 RTSP URL
   818applied to streams, not pres.           3.2 RTSP URL
   846path components RTSP URL opaque CLT     3.2 RTSP URL
   847not imply file system structure for SRV.3.2 RTSP URL
   855conf. id.s are opaque to RTSP           3.3 Conference
   856standard URI encoding mthds             3.3 Conference
   857conf. id. MUST be globally              3.3 Conference M   M  M
   860 conf.-id =1*xchar                      3.3 Conference
   863from multimedia conf.s media SRV        3.3 Conference
   866RTSP CLT explicitly providing transport 3.3 Conference
   872are opaque strings of arbitrary length  3.4 Session Ids
   873linear white space must URL-escaped.    3.4 Session IdsM m M m M m
   874session id. MUST be chosen randomly     3.4 Session IdsM   M   M
   875MUST be at least eight octets long      3.4 Session Ids
   877ALPH| DIGIT | safe )                    3.4 Session Ids
   881relative expresses time relative to star3.5 SMPTE Relat
   882expressed as SMPTE time codes           3.5 SMPTE Relat
   884hours:minutes:seconds:frames.subframes  3.5 SMPTE Relat
   885default smpte format"SMPTE 30 drop"     3.5 SMPTE Relat
   886frame rate29.97 frames per second.      3.5 SMPTE RelatMAY MAY MAY
   887supported (such as "SMPTE 25")          3.5 SMPTE Relat
   888frames field in time value 0 through 29 3.5 SMPTE Relat
   889diff. between 30 and 29.97 frames       3.5 SMPTE Relat
   890handled dropping first two indices      3.5 SMPTE Relat
   891every minute, except every tenth minute.3.5 SMPTE Relat
   892If frame valuezero, it may be omitted.  3.5 SMPTE Relat may may may
   893are measured in one-hundredth offrame.  3.5 SMPTE Relat
   902smpte-range"=" smpte-time "-" [ smpte-ti3.5 SMPTE Relat
   903smpte-type="smpte" | "smpte-30-drop" | "3.5 SMPTE Relat
   904or timecodes may be added               3.5 SMPTE Relat may may may
   905smpte-time=1*2DIGIT ":" 1*2DIGIT ":" 1*23.5 SMPTE Relat
   906. 1*2DIGIT ]                            3.5 SMPTE Relat
   916absolute position                       3.6 Normal Play
   917relative to beginning of pres           3.6 Normal Play
   918decimal fraction                        3.6 Normal Play may may may
   919inor hours, minutes, and seconds        3.6 Normal Play
   920decimal point fractions ofsecond.       3.6 Normal Play
   922beginning 0.0 seconds.                  3.6 Normal Play
   923negative values are not defined.        3.6 Normal Play
   924current instant oflive event            3.6 Normal Play may may may
   926NPTdefined as in DSM-CC:                3.6 Normal Play
   928advances normally play mode (scale = 1),3.6 Normal Play
   929advances faster rate in fast scan forwar3.6 Normal Play
   930decrements in scan reverse              3.6 Normal Play
   931fixed in pause mode                     3.6 Normal Play
   934npt-range =( npt-time "-" [ npt-time ] )3.6 Normal Play
   935npt-time| npt-sec | npt-hhmmss          3.6 Normal Play
   936npt-sec=1*DIGIT [ "." *DIGIT ]          3.6 Normal Play
   937npt-hhmmss=npt-hh ":" npt-mm ":" npt-ss 3.6 Normal Play
   938npt-hh =1*DIGITany positive number      3.6 Normal Play
   939npt-mm =1*2DIGIT ; 0-59                 3.6 Normal Play
   940npt-ss =1*2DIGIT ; 0-59                 3.6 Normal Play
   947conforms to ISO 8601.                   3.6 Normal Play
   948npt-sec automatic generation,           3.6 Normal Play
   949ntp-hhmmss human readers.               3.6 Normal Play
   958now constant live feed                  3.6 Normal Play
   959absolute time nor zero time             3.6 Normal Play
   964Absolute time ISO 8601 timestamps       3.7 Absolute Ti
   965Fractions second may be indicated.      3.7 Absolute Ti may may may
   967  utc-range ="clock" "=" utc-time "-" [ 3.7 Absolute Ti
   968  utc-time  =utc-date "T" utc-time "Z"  3.7 Absolute Ti
   969  utc-date  =8DIGIT  ; < YYYYMMDD >     3.7 Absolute Ti
   970  utc-time  =6DIGIT [ "." fraction ]; < 3.7 Absolute Ti
   979unique id.s used to designate new option3.8 Option Tags
   980used in Require and Proxy-Require header3.8 Option Tags
   983Syntax:                                 3.8 Option Tags
   985  option-tag=1*xchar                    3.8 Option Tags
   988a reverse domain name                   3.8 Option Tags
   990register new option with IANA           3.8 Option Tags
   998* Name and desc. of option.             3.8.1 Reg. New  may may may
   999no more than twenty characters long     3.8.1 Reg. New MSD MSD MSD
  1000not contain any spaces, control characte3.8.1 Reg. New
  1001* Indication of who has change control o3.8.1 Reg. New
  1014*reference to a further desc.           3.8.1 Reg. New
  1018* For proprietary options, contact info.3.8.1 Reg. New
  1023text-based protocol uses ISO 10646 in UT4 RTSP Msg
  1024Lines are terminated by CRLF            4 RTSP Msg
  1025be prepared to also interpret CR and LF 4 RTSP Msg      sd  sd sd
  1028add optional para. in a seld-describing 4 RTSP Msg      opt opt opt
  1029number of para. and frequency command lo4 RTSP Msg
  1030processing efficiency not a concern     4 RTSP Msg
  1032allow easy implementation prototypes in 4 RTSP Msg
  1035character set switching invisible US-ASC4 RTSP Msg
  1037ISO 8859-1 translates Unicode high order4 RTSP Msg
  1039ISO 8859-1 most-significant bit set 11004 RTSP Msg
  1042carried over any lower-layer transport 84 RTSP Msg
  1045Requests contain mthds, object mthd and 4 RTSP Msg
  1046mthds are idempotent unless otherwise no4 RTSP Msg
  1047mthds designed to require little or no s4 RTSP Msg
  10751.  response MUST NOT include msg body  4.4 Msg Length MN  MN MN
  1076always terminated by first empty line af4.4 Msg Length
  1078regardless entity-header fields present 4.4 Msg Length
  1079empty line consists of only CRLF        4.4 Msg Length
  10812.  If Content-Length header field value4.4 Msg Length
  1082represents length of msg-body.          4.4 Msg Length
  1083 If header fieldnot present,value of zer4.4 Msg Length
  10863.  By SRV closing connection.          4.4 Msg Length
  1087cannot be used to indicate end of reques4.4 Msg Length
  1091does not support HTTP/1.1 "chunked" tran4.4 Msg Length
  1093requires Content-Length header field.   4.4 Msg Length
  1096  SRV should always be able to determine4.4 Msg Length  sd  sd sd
  1098Content-Length must be present if entity4.4 Msg Length  m   m  m
  1099rules ensure reasonable behavior if leng4.4 Msg Length
  1107general-header  =  Cache-Control  ; Sect5 General Heade
  1108 |  Connection  ; Section 12.10         5 General Heade
  1109 |  Date  ; Section 12.18               5 General Heade
  1110 |  Via; Section 12.43                  5 General Heade
  1114request msg from CLT to SRV or vice vers6 Req.
  1115within first line ofmsg, mthd to be appl6 Req.
  1116resource, id. of resource, and protocol 6 Req.
  1117version in use.                         6 Req.
  1126 Request= Request-Line ; Section 6.1    6 Req.
  1127  *(general-header  ; Section 5         6 Req.
  1128  | request-header  ; Section 6.2       6 Req.
  1129  | entity-header ) ; Section 8.1       6 Req.
  1130 CRLF                                   6 Req.
  1131 [ msg-body ]; Section 4.3              6 Req.
  1135  Request-Line = mthd SP Request-URI SP 6.1 Req. Line
  1137mthd="DESCRIBE"  ; Section 10.2         6.1 Req. Line
  1138|"ANNOUNCE"  ; Section 10.3             6.1 Req. Line
  1139|"GET_PARAMETER"; Section 10.8          6.1 Req. Line
  1140|"OPTIONS"; Section 10.1                6.1 Req. Line
  1141|"PAUSE"  ; Section 10.6                6.1 Req. Line
  1142|"PLAY"; Section 10.5                   6.1 Req. Line
  1143|"RECORD" ; Section 10.11               6.1 Req. Line
  1144|"REDIRECT"  ; Section 10.10            6.1 Req. Line
  1145|"SETUP"  ; Section 10.4                6.1 Req. Line
  1146|"SET_PARAMETER"; Section 10.9          6.1 Req. Line
  1147|"TEARDOWN"  ; Section 10.7             6.1 Req. Line
  1148|extension-mthd                         6.1 Req. Line
  1150  extension-mthd = token                6.1 Req. Line
  1152  Request-URI = "*" | absolute_URI      6.1 Req. Line
  1154  RTSP-Version = "RTSP" "/" 1*DIGIT "." 6.1 Req. Line
  1158  request-header  = Accept ; Section 12.6.2 Req. Header
  1159| Accept-Encoding ; Section 12.2        6.2 Req. Header
  1160| Accept-Language ; Section 12.3        6.2 Req. Header
  1161| Authorization; Section 12.5           6.2 Req. Header
  1162| From; Section 12.20                   6.2 Req. Header
  1163| If-Modified-Since  ; Section 12.23    6.2 Req. Header
  1164| Range  ; Section 12.29                6.2 Req. Header
  1165| Referer; Section 12.30                6.2 Req. Header
  1166| User-Agent; Section 12.41             6.2 Req. Header
  1168RTSP requests always contain absolute UR6.2 Req. Header
  1187asterisk "*" in Request-URI applies to S6.2 Req. Header
  1189allowed when mthd does not apply to reso6.2 Req. Header
  1192  OPTIONS * RTSP/1.0                    6.2 Req. Header
  1202responds with an RTSP response msg.     7 Response
  1204  Response =  Status-Line; Section 7.1  7 Response
  1205  *( general-header; Section 5          7 Response
  1206  |  response-header  ; Section 7.1.2   7 Response
  1207  |  entity-header )  ; Section 8.1     7 Response
  1208  CRLF                                  7 Response
  1209  [ msg-body ] ; Section 4.3            7 Response
  1214Status-Line protocol version numeric sta7.1 Status-Line
  1215textual phrase associated with status co7.1 Status-Line
  1216separated by SP characters.             7.1 Status-Line
  1217No CR or LF allowed except final CRLF se7.1 Status-Line
  1219Status-Line =RTSP-Version SP Status-Code7.1 Status-Line
  12233-digit integer result code             7.1.1 Status an
  1225Reason-Phrasetextual desc.              7.1.1 Status an
  1226Status-Codeautomata                     7.1.1 Status an
  1228CLT not req. examine or display Reason-P7.1.1 Status an req req req
  1238first digit defines class of response   7.1.1 Status an
  1239last two digits do not have any categori7.1.1 Status an
  1242  * 1xx: info.al - received, continuing 7.1.1 Status an
  1243  * 2xx: Success - received, understood,7.1.1 Status an
  1245  * 3xx: Redirection - Further action to7.1.1 Status an m   m  m
  1247  * 4xx: CLT Error - bad syntax or canno7.1.1 Status an
  1249  * 5xx: SRV Error - failed to fulfill  7.1.1 Status an
  1252individual values of numeric status code7.1.1 Status an
  1254reason phrases listed here are only reco7.1.1 Status an rec rec rec
  1255may replaced by equivalents without affe7.1.1 Status an may may may
  1256adopts most HTTP/1.1 [2] status codes   7.1.1 Status an
  1257adds RTSP-specific status codes starting7.1.1 Status an
  1294Status-Code  =  "100"; Continue         7.1.1 Status an
  1295 |  "200"; OK                           7.1.1 Status an
  1296 |  "201"; Created                      7.1.1 Status an
  1297 |  "250"; Low on Storage Space         7.1.1 Status an
  1298 |  "300"; Multiple Choices             7.1.1 Status an
  1299 |  "301"; Moved Permanently            7.1.1 Status an
  1300 |  "302"; Moved Temporarily            7.1.1 Status an
  1301 |  "303"; See Or                       7.1.1 Status an
  1302 |  "304"; Not Modified                 7.1.1 Status an
  1303 |  "305"; Use Proxy                    7.1.1 Status an
  1304 |  "400"; Bad Request                  7.1.1 Status an
  1305 |  "401"; Unauthorized                 7.1.1 Status an
  1306 |  "402"; Payment req.                 7.1.1 Status an
  1307 |  "403"; Forbidden                    7.1.1 Status an
  1308 |  "404"; Not Found                    7.1.1 Status an
  1309 |  "405"; mthd Not Allowed             7.1.1 Status an
  1310 |  "406"; Not Acceptable               7.1.1 Status an
  1311 |  "407"; Proxy auth req.              7.1.1 Status an
  1312 |  "408"; Request Time-out             7.1.1 Status an
  1313 |  "410"; Gone                         7.1.1 Status an
  1314 |  "411"; Length req.                  7.1.1 Status an
  1315 |  "412"; Precondition Failed          7.1.1 Status an
  1316 |  "413"; Request Entity Too Large     7.1.1 Status an
  1317 |  "414"; Request-URI Too Large        7.1.1 Status an
  1318 |  "415"; Unsupported Media Type       7.1.1 Status an
  1319 |  "451"; Parameter Not Understood     7.1.1 Status an
  1320 |  "452"; conf. Not Found              7.1.1 Status an
  1321 |  "453"; Not Enough Bandwidth         7.1.1 Status an
  1322 |  "454"; Session Not Found            7.1.1 Status an
  1323 |  "455"; mthd Not Valid in State      7.1.1 Status an
  1324 |  "456"; Header Field Not Valid for Re7.1.1 Status an
  1325 |  "457"; Invalid Range                7.1.1 Status an
  1326 |  "458"; ParameterRead-Only           7.1.1 Status an
  1327 |  "459"; agg. operation not allowed   7.1.1 Status an
  1328 |  "460"; Only agg. operation allowed  7.1.1 Status an
  1329 |  "461"; Unsupported transport        7.1.1 Status an
  1330 |  "462"; Destination unreachable      7.1.1 Status an
  1331 |  "500"; Internal SRV Error           7.1.1 Status an
  1332 |  "501"; Not Implemented              7.1.1 Status an
  1333 |  "502"; Bad Gateway                  7.1.1 Status an
  1334 |  "503"; Service Unavail              7.1.1 Status an
  1335 |  "504"; Gateway Time-out             7.1.1 Status an
  1336 |  "505"; RTSP Version not supported   7.1.1 Status an
  1337 |  "551"; Option not supported         7.1.1 Status an
  1338 |  extension-code                      7.1.1 Status an
  1350extension-code  =  3DIGIT               7.1.1 Status an
  1352Reason-Phrase  =  *<TEXT, excluding CR, 7.1.1 Status an
  1354RTSP status codes are extensible.       7.1.1 Status an req req req
  1355not req. understand all status codes    7.1.1 Status an
  1356understanding desirable                 7.1.1 Status anM   M   M
  1357must understand class of any status code7.1.1 Status an
  1358unrecognized response equivalent to x00 7.1.1 Status an
  1360unrecognized response MUST NOT be cached7.1.1 Status anMN  MN  MN
  1368Code  reason                            7.1.1 Status an
  1370100Continue all                         7.1.1 Status an
  1372200OK all                               7.1.1 Status an
  1373201Created  RECORD                      7.1.1 Status an
  1374250Low on Storage Space RECORD          7.1.1 Status an
  1376300Multiple Choices  all                7.1.1 Status an
  1377301Moved Permanently all                7.1.1 Status an
  1378302Moved Temporarily all                7.1.1 Status an
  1379303See Orall                            7.1.1 Status an
  1380305Use Proxyall                         7.1.1 Status an
  1406400Bad Request all                      7.1.1 Status an
  1407401Unauthorizedall                      7.1.1 Status an
  1408402Payment req.  all                    7.1.1 Status an
  1409403Forbiddenall                         7.1.1 Status an
  1410404Not Foundall                         7.1.1 Status an
  1411405mthd Not Allowedall                  7.1.1 Status an
  1412406Not Acceptable all                   7.1.1 Status an
  1413407Proxy auth req. all                  7.1.1 Status an
  1414408Request Timeoutall                   7.1.1 Status an
  1415410Gone  all                            7.1.1 Status an
  1416411Length req.all                       7.1.1 Status an
  1417412Precondition Failed  DESCRIBE, SETUP 7.1.1 Status an
  1418413Request Entity Too Largeall          7.1.1 Status an
  1419414Request-URI Too Long all             7.1.1 Status an
  1420415Unsupported Media Type  all          7.1.1 Status an
  1421451Invalid parameter SETUP              7.1.1 Status an
  1422452Illegal conf. id. SETUP              7.1.1 Status an
  1423453Not Enough Bandwidth SETUP           7.1.1 Status an
  1424454Session Not Found all                7.1.1 Status an
  1425455mthd Not Valid In Stateall           7.1.1 Status an
  1426456Header Field Not Valid  all          7.1.1 Status an
  1427457Invalid Range  PLAY                  7.1.1 Status an
  1428458ParameterRead-Only  SET_PARAMETER    7.1.1 Status an
  1429459agg. Operation Not Allowed  all      7.1.1 Status an
  1430460Only agg. Operation Allowed all      7.1.1 Status an
  1431461Unsupported Transportall             7.1.1 Status an
  1432462Destination Unreachable all          7.1.1 Status an
  1434500Internal SRV Errorall                7.1.1 Status an
  1435501Not Implementedall                   7.1.1 Status an
  1436502Bad Gateway all                      7.1.1 Status an
  1437503Service Unavail  all                 7.1.1 Status an
  1438504Gateway Timeoutall                   7.1.1 Status an
  1439505RTSP Version Not Supported all       7.1.1 Status an
  1440551Option not supportall                7.1.1 Status an
  1447allow recipient to pass additonal info. 7.1.2 Response
  1448which cannot be placed in Status-Line   7.1.2 Response
  1449header fields give info.                7.1.2 Response
  1462response-header  =  Location ; Section 17.1.2 Response
  1463  |  Proxy-auth; Section 12.26          7.1.2 Response
  1464  |  Public; Section 12.28              7.1.2 Response
  1465  |  Retry-After ; Section 12.31        7.1.2 Response
  1466  |  SRV; Section 12.36                 7.1.2 Response
  1467  |  Vary  ; Section 12.42              7.1.2 Response
  1468  |  WWW-auth  ; Section 12.44          7.1.2 Response
  1470can extended in combinationchange in pro7.1.2 Response
  1472MAY be given semantics of response-heade7.1.2 Response MAY MAY MAY
  1473all parties in communication recognize  7.1.2 Response
  1474Unrecognized header fields are entity he7.1.2 Response
  1479msgs MAY transfer an entity             8 Entity       MAY MAY MAY
  1481consists of entity-header fields and an 8 Entity
  1482responses will only include entity-heade8 Entity
  1489Entity-header fields define optional met8.1 Entity Head opt opt opt
  1490entity-body or, if no bodypresent, about8.1 Entity Head
  1491by request.                             8.1 Entity Head
  1493  entity-header = Allow; Section 12.4   8.1 Entity Head
  1494 | Content-Base  ; Section 12.11        8.1 Entity Head
  1495 | Content-Encoding ; Section 12.12     8.1 Entity Head
  1496 | Content-Language ; Section 12.13     8.1 Entity Head
  1497 | Content-Length; Section 12.14        8.1 Entity Head
  1498 | Content-Location ; Section 12.15     8.1 Entity Head
  1499 | Content-Type  ; Section 12.16        8.1 Entity Head
  1500 | Expires ; Section 12.19              8.1 Entity Head
  1501 | Last-Modified ; Section 12.24        8.1 Entity Head
  1502 | extension-header                     8.1 Entity Head
  1503  extension-header = msg-header         8.1 Entity Head
  1505allows additional entity-header fields  8.1 Entity Head
  1506defined without changing protocol       8.1 Entity Head
  1508Unrecognized header fields ignored      8.1 Entity HeadSD  SD  SD
  1526persistent transport connections        9 Connections
  1528one connection                          9 Connections
  1529connectionless mode.                    9 Connections
  1532rtsp persistent connection assumed,     9 Connections
  1533rtspu calls without setting up connectio9 Connections
  1536SRV to send requests to CLT             9 Connections
  1537supported for persistent connections    9 Connections
  1538no reliable way of reaching CLT         9 Connections
  1540SRV to CLT likely traverse firewalls.   9 Connections
  1545MAY "pipeline" its requests             9.1 Pipelining MAY MAY MAY
  1547responses in same order requests receive9.1 Pipelining
  1551Requests acknowledged by receiver       9.2 Reliability
  1552unless multicast group.                 9.2 Reliability may may may
  1553resend same msg after timeout RTT       9.2 Reliability
  1554round-trip timeestimated as in TCP      9.2 Reliability
  1555initial round-trip value of 500 ms      9.2 ReliabilityMAY MAY MAY
  1556cache last RTT measurement              9.2 Reliability
  1558reliable transport carry RTSP, MUST NOT 9.2 ReliabilityM   M   M
  1560underlying transport to provide reliabil9.2 Reliability
  1562both reliable transport TCP and RTSP    9.2 Reliability
  1564  loss results in two retransmissions   9.2 Reliability
  1574  transport stack will not deliver app.-9.2 Reliability
  1577  retransmissions at diff layers will ex9.2 Reliability
  1580  optimizing initial TCP round trip esti9.2 Reliability
  1584timestamp retransmission ambiguity probl9.2 Reliability
  1585obviates need for Karn's algorithm.     9.2 Reliability
  1587carries sequence number in CSeq header  9.2 Reliability
  1588incremented by one for each distinct req9.2 Reliability
  1590request MUST carry original sequence num9.2 ReliabilityM   M   M
  1593MUST support carrying RTSP over TCP     9.2 ReliabilityM   M   M
  1594MAY support UDP                         9.2 ReliabilityMAY MAY MAY
  1595default port for RTSP SRV 554 both UDP a9.2 Reliability
  1597destined for same control end point may 9.2 Reliability may may may
  1598encapsulated intoTCP stream             9.2 Reliability
  1599data MAY be interleaved with RTP and RTC9.2 ReliabilityMAY MAY MAY
  1600RTSP MUST containContent-Length header w9.2 ReliabilityM   M   M
  1602is terminated with empty line immediatel9.2 Reliability
  1607performed on resource                   10 Mthd Definit
  1608mthdcase-sensitive.                     10 Mthd Definit
  1609defined in future.                      10 Mthd Definit may may may
  1610$ character (decimal 24) and must betoke10 Mthd Definit m   m  m
  1630mthddirection  object  requirement      10 Mthd Definit
  1631DESCRIBE C->S P,S  recommended          10 Mthd Definit rec rec rec
  1632ANNOUNCE C->S, S->C P,S  optional       10 Mthd Definit opt opt opt
  1633GET_PARAMETER  C->S, S->C P,S  optional 10 Mthd Definit opt opt opt
  1634OPTIONS  C->S, S->C P,S  req.           10 Mthd Definit req req req
  1635 (S->C: optional)                       10 Mthd Definit opt opt opt
  1636PAUSE C->S P,S  recommended             10 Mthd Definit rec rec rec
  1637PLAY  C->S P,S  req.                    10 Mthd Definit req req req
  1638RECORDC->S P,S  optional                10 Mthd Definit opt opt opt
  1639REDIRECT S->C P,S  optional             10 Mthd Definit opt opt opt
  1640SETUP C->S S req.                       10 Mthd Definit req req req
  1641SET_PARAMETER  C->S, S->C P,S  optional 10 Mthd Definit opt opt opt
  1642TEARDOWN C->S P,S  req.                 10 Mthd Definit req req req
  1647PAUSErecommended                        10 Mthd Definit rec rec rec
  1648builtdoes not support this              10 Mthd Definit
  1656request may be issued at any time       10.1 OPTIONS    may may may
  1657It does not influence SRV state.        10.1 OPTIONS
  1688retrieves desc.                         10.2 DESCRIBE
  1690Accept header to specify desc. formats  10.2 DESCRIBE
  1691SRV responds withdesc.                  10.2 DESCRIBE
  1692reply-response pair constitutes media   10.2 DESCRIBE
  1721MUST contain all media init.            10.2 DESCRIBE  M   M  M
  1722info. for resource(s)it describes       10.2 DESCRIBE
  1723fromsource or than DESCRIBE             10.2 DESCRIBE
  1724containscomplete set of media init.     10.2 DESCRIBE
  1725CLT SHOULD use those para.              10.2 DESCRIBE  SD  SD SD
  1729of media indirection.                   10.2 DESCRIBE
  1732  unambiguous means of knowing          10.2 DESCRIBE
  1742contain all media init. for set of strea10.2 DESCRIBE
  1743discouraging use of DESCRIBE for media i10.2 DESCRIBE
  1744avoid looping problems                  10.2 DESCRIBE
  1747  Media init. isrequirement             10.2 DESCRIBE
  1748does not dictatemust be done            10.2 DESCRIBE   m   m  m
  1752  * via RTSP's DESCRIBE mthd;           10.2 DESCRIBE
  1753  * via some or protocol (HTTP, email at10.2 DESCRIBE
  1754  * via command line or standard input  10.2 DESCRIBE
  1759recommendedminimal SRVs support         10.2 DESCRIBE   rec rec rec
  1760recommendedminimal CLTs support         10.2 DESCRIBE   rec rec rec
  1761acceptsmedia init. file                 10.2 DESCRIBE
  1762  from standard input, command line, and10.2 DESCRIBE
  1769posts desc.                             10.3 ANNOUNCE
  1770media object identified by request URL  10.3 ANNOUNCE
  1771updates session desc.                   10.3 ANNOUNCE
  1775whole pres desc. should be sent         10.3 ANNOUNCE   sd  sd sd
  1776rarther than just additional components 10.3 ANNOUNCE
  1813request forURI specifies transport mecha10.4 SETUP
  1815streamis already playing to change      10.4 SETUP
  1816If it does not allow this, it MUST respo10.4 SETUP     MMAYMMAYMMAY
  1817error "455 mthd Not Valid In State"     10.4 SETUP
  1818intervening firewalls,CLT must indicate 10.4 SETUP      m   m  m
  1822  Since SETUP includes all transport ini10.4 SETUP
  1828specifies transport para. acceptable    10.4 SETUP
  1829CLT for data transmission               10.4 SETUP
  1830transport para. selected by SRV.        10.4 SETUP
  1843SRV generates session id.s              10.4 SETUP
  1845 SRV MUST bundle setup request          10.4 SETUP     M   M  M
  1854return error "459 agg. Operation Not All10.4 SETUP
  1859tells SRV to start sending data         10.5 PLAY
  1861SETUP requests have been acknowledged   10.5 PLAY
  1864positions normal play time to beginning 10.5 PLAY
  1865delivers stream data until end          10.5 PLAY
  1866requests may be pipelined (queued)      10.5 PLAY       may may may
  1867MIUST queue PLAY requests to be executed10.5 PLAY      M   M  M
  1869delayed until first has been completed. 10.5 PLAY
  1871allows precise editing.                 10.5 PLAY
  1895PLAY request without Range header legal 10.5 PLAY
  1896beginning unless stream has been paused 10.5 PLAY
  1897paused via PAUSE, stream delivery resume10.5 PLAY
  1899can be used by CLT to test SRV liveness.10.5 PLAY
  1910containt time parameter                 10.5 PLAY       may may may
  1911specifies time in UTC                   10.5 PLAY       sd  sd sd
  1912msgreceived after specified time        10.5 PLAY
  1913aid in sync                             10.5 PLAY       may may may
  1914streams obtained from diff sources.     10.5 PLAY
  1916SRV replies with actual range           10.5 PLAY
  1918alignment of requested range to valid fr10.5 PLAY
  1920current position returned in reply      10.5 PLAY
  1921unit range in reply same as in request. 10.5 PLAY
  1923pres automatically pause                10.5 PLAY
  1941live desirable to use clock units:      10.5 PLAY
  1952only supporting playback MUST support np10.5 PLAY      M   M  M
  1953MAY support clock and smpte formats.    10.5 PLAY      MAY MAY MAY
  1968stream delivery to be interrupted       10.6 PAUSE
  1970playback and recd ofstream halted       10.6 PAUSE
  1973group halted                            10.6 PAUSE
  1974sync of tracks MUST                     10.6 PAUSE     M   M  M
  1975SRV resources are kept                  10.6 PAUSE     MAY MAY MAY
  1976session and free resources after being p10.6 PAUSE
  1977specified with timeout parameter of Sess10.6 PAUSE
  1990request may contain Range header        10.6 PAUSE      may may may
  1992pause point must contain one value      10.6 PAUSE      m   m  m
  1993normal play time for stream set to pause10.6 PAUSE
  1995pause effective encounting timepoint    10.6 PAUSE
  1997If time outside … error "457 Invalid Ran10.6 PAUSE
  1999starts at pause point, not played or rec10.6 PAUSE
  2000Range header missing, interrupted immedi10.6 PAUSE
  2002pause point set to current normal play t10.6 PAUSE
  2004request discards all queued PLAY        10.6 PAUSE
  2005point in media stream MUST be maintained10.6 PAUSE     M   M  M
  2006subsequent PLAY resumes pause point.    10.6 PAUSE
  2032If SRV sent data beyond Range header    10.6 PAUSE
  2033PLAY would still resume at point in time10.6 PAUSE
  2034assumed CLT has discarded data          10.6 PAUSE
  2035ensures continuous pause/play cycling   10.6 PAUSE
  2039stops stream delivery for given URI,    10.7 TEARDOWN
  2040freeing resources associated            10.7 TEARDOWN
  2041URI is pres URI session id. invalid     10.7 TEARDOWN
  2043all transport defined session desc.     10.7 TEARDOWN
  2044SETUP request before played again.      10.7 TEARDOWN
  2055retrieves value specified in URI        10.8 GET_PARAME
  2057content of reply left to implementation 10.8 GET_PARAME
  2058no entity body may test liveness ("ping"10.8 GET_PARAME may may may
  2093requests value for a URI                10.9 SET_PARAME
  2096contain single parameter to determine re10.9 SET_PARAMESD  SD  SD
  2098several act if all para. successfully   10.9 SET_PARAMEM   M   M
  2100allow to set repeatedly to same value   10.9 SET_PARAMEMAY MAY MAY
  2101disallow changing parameter values.     10.9 SET_PARAME
  2103transport para. set with SETUP          10.9 SET_PARAMEM   M   M
  2109split in fine-grained for error indicati10.9 SET_PARAME
  2111an atomic settings is desirable         10.9 SET_PARAME
  2147informs CLT connect another SRV         10.10 REDIRECT  m   m  m
  2148mandatory header Location               10.10 REDIRECT
  2150Range indicates redirection takes effect10.10 REDIRECT
  2152continue send receive TEARDOWN request  10.10 REDIRECT M   M  M
  2153SETUP new session at designated host    10.10 REDIRECT
  2166recd range according desc.              10.11 RECORD
  2167timestamp reflects start and end time   10.11 RECORD
  2168no time range given use start or end tim10.11 RECORD
  2170If started, commence recd immediately.  10.11 RECORD
  2172recorded data request or another URI    10.11 RECORD
  2174not use request URI response 201        10.11 RECORD   SD  SD SD
  2175describes status of request             10.11 RECORD
  2176refers new resource and Location        10.11 RECORD
  2178media SRV supporting recd of live press 10.11 RECORD   M   M  M
  2179recd live must support clock range forma10.11 RECORD
  2201interleave RTSP mthds and stream data   10.12 Interleav sd  sd sd
  2202interleaving should generally avoided   10.12 Interleav
  2204SHOULD be used RTSP carried over TCP.   10.12 InterleavSD  SD  SD
  2206encapsulated by an ASCII dollar sign    10.12 Interleav
  2207followed byone-byte channel id.,        10.12 Interleav
  2208followed by length of binary data       10.12 Interleav
  2209two-byte integer in network byte order  10.12 Interleav
  2210stream data immediately without CRLF    10.12 Interleav
  2211Each $ block contains one upper-layer   10.12 Interleav
  2214channel id.defined in Transport header  10.12 Interleav
  2217When RTP, RTCP msgs are interleaved     10.12 Interleav
  2219RTCP sent first avail higher than RTP   10.12 Interleav
  2220MAY request RTCP packets another channel10.12 InterleavMAY MAY MAY
  2221two channels in interleaved of Transport10.12 Interleav
  2224RTCP sync two or more streams           10.12 Interleav
  2226tunnel RTP/RTCP through TCP connection  10.12 Interleav
  2227transfer onto UDP                       10.12 Interleav req req req
  2265HTTP status codes are reused.           11 Status Defin
  2273warning after RECORD not fulfill        11.1.1 250 Low
  2276indicate time period able to record     11.1.1 250 Low  may may may
  2278CLT should take an estimate.            11.1.1 250 Low  sd  sd sd
  2284used for load balancing                 11.2 Redirectio may may may
  2285redirecting to SRV topologically closer 11.2 Redirectio
  2306mthd specified in request not allowed   11.3.1 405 Mthd
  2307rsponse MUST include an Allow header    11.3.1 405 MthdM   M   M
  2308containing list of valid mthds          11.3.1 405 Mthd
  2310mthd not indicated during SETUP         11.3.1 405 Mthd
  2316recipient of request does not support   11.3.2 451 Para
  2321field unknown to media SRV              11.3.3 452 Conf
  2326insufficient bandwidth.                 11.3.4 453 Not
  2332Session header missing, invalid or time 11.3.5 454 Sess
  2337cannot process request in its current st11.3.6 455 Mthd
  2338response contain an Allow header        11.3.6 455 MthdSD  SD  SD
  2343could not act on req. request header.   11.3.7 456 Head req req req
  2360Range value givenout of bounds          11.3.8 457 Inva
  2365can be read but not modified            11.3.9 458 Para
  2370may not be applied on agg. URL          11.3.10 459 Agg may may may
  2371mthd may be applied on a stream URL     11.3.10 459 Agg may may may
  2376may not be applied none agg. URL        11.3.11 460 Onl may may may
  2377mthd may be applied on pres URL         11.3.11 460 Onl may may may
  2382did not contain supported transport     11.3.12 461 Uns
  2387data transmission could not be establish11.3.13 462 Des
  2388CLT address could not be reached        11.3.13 462 Des
  2394Require or Proxy-Require fields was not 11.3.14 551 Opt
  2395returned stating option no support      11.3.14 551 Opt sd  sd sd
  3451Responses are not cacheable             13 Caching
  3452exception of DESCRIBE ANNOUNCE          13 Caching
  3454DESCRIBE and GET_PARAMETER do not return13 Caching
  3457data , to be cached, as well as session 13 Caching
  3459SETUP or PLAY request,proxy up-to-date  13 Caching
  3461determine up-to-date SETUP or DESCRIBE  13 Caching
  3463Last-Modified header with cached copy.  13 Caching
  3464 modifies SETUP transport para.         13 Caching
  3465forwards request to origin SRV          13 Caching
  3466PLAY or PAUSE pass proxy unmodified.    13 Caching
  3467proxy delivers media data to CLT        13 Caching
  3468making local copy for later reuse       13 Caching
  3469given by cache-response directives      13 Caching
  3478cache MUST answer any DESCRIBE requests 13 Caching     M   M  M
  3485cache simply copies streaming data      13 Caching
  3486passes by on its way to CLT             13 Caching
  3487does not introduce additional latency.  13 Caching
  3489cache appears like regular media        13 Caching
  3490 to media origin SRV like CLT           13 Caching
  3491store content type, content language    13 Caching
  3492store pres desc.                        13 Caching
  3493cache eliminates all transport-reference13 Caching
  3608audio and video track are on two diff SR14.1 Media on D
  3609start at slightly diff times and may dri14.1 Media on D may may may
  3610CLT can sync two using standard RTP     14.1 Media on D
  3611 time scale contained in RTCP sender    14.1 Media on D
  3617 multiple continuous media types same en14.2 Streaming
  3621components are transported as independen14.2 Streaming
  3622desirable to maintaincommon context     14.2 Streaming
  3625SRV to keep single storage handle       14.2 Streaming
  3626allows treating all streams equally     14.2 Streaming
  3627any prioritization of streams by SRV    14.2 Streaming
  3630prevent selective retrieval of streams  14.2 Streaming
  3633control all streams via single control m14.2 Streaming
  3742may treat all files as though container 14.3 Single Str may may may
  3744SHOULD use rules set forth in session   14.3 Single StrSD  SD  SD
  4009RTSP syntaxdescribed in an augmented BNF17 Syntax
  4010as used in RFC 2068 [2].                18 Syntax
  4014OCTET  =<any 8-bit sequence of data>    15.1 Base Synta
  4015CHAR=<any US-ASCII character (octets 0 -15.1 Base Synta
  4016UPALPHA=<any US-ASCII uppercase letter "15.1 Base Synta
  4017LOALPHA=<any US-ASCII lowercase letter "15.1 Base Synta
  4018ALPH =UPALPH| LOALPHA                   15.1 Base Synta
  4020DIGIT  =<any US-ASCII digit "0".."9">   15.1 Base Synta
  4021CTL =<any US-ASCII control character    15.1 Base Synta
  4022(octets 0 - 31) and DEL (127)>          15.1 Base Synta
  4023CR  =<US-ASCII CR, carriage return (13)>15.1 Base Synta
  4024LF  =<US-ASCII LF, linefeed (10)>       15.1 Base Synta
  4026SP  =<US-ASCII SP, space (32)>          15.1 Base Synta
  4027HT  =<US-ASCII HT, horizontal-tab (9)>  15.1 Base Synta
  4028<"> =<US-ASCII double-quote mark (34)>  15.1 Base Synta
  4029CRLF=CR LF                              15.1 Base Synta
  4038LWS =[CRLF] 1*( SP | HT )               15.1 Base Synta
  4039TEXT=<any OCTET except CTLs>            15.1 Base Synta
  4040tspecials ="(" | ")" | "<" | ">" | "@"  15.1 Base Synta
  4041 | "," | ";" | ":" | "\" | <">          15.1 Base Synta
  4042 | "/" | "[" | "]" | "?" | "="          15.1 Base Synta
  4043 | "{" | "}" | SP | HT                  15.1 Base Synta
  4045token  =1*<any CHAR except CTLs or tspec15.1 Base Synta
  4046quoted-string=( <"> *(qdtext) <"> )     15.1 Base Synta
  4047qdtext =<any TEXT except <">>           15.1 Base Synta
  4048quoted-pair  ="\" CHAR                  15.1 Base Synta
  4050msg-header  =field-name ":" [ field-valu15.1 Base Synta
  4051field-name=token                        15.1 Base Synta
  4052field-value  =*( field-content | LWS )  15.1 Base Synta
  4053field-content=<OCTETs making up field-va15.1 Base Synta
  4054consisting of their *TEXT or            15.1 Base Synta
  4055combinations of token, tspecials, and   15.1 Base Synta
  4056quoted-string>                          15.1 Base Synta
  4058safe=  "\$" | "-" | "_" | "." | "+"     15.1 Base Synta
  4059extra  =  "!" | "*" | "$'$" | "(" | ")" 15.1 Base Synta
  4061hex =  DIGIT | "A" | "B" | "C" | "D" | "15.1 Base Synta
  4062a | "b" | "c" | "d" | "e" | "f"         15.1 Base Synta
  4063escape =  "\%" hex hex                  15.1 Base Synta
  4064reserved  =  ";" | "/" | "?" | ":" | "@"15.1 Base Synta
  4066unreserved=  alpha | digit | safe | extr15.1 Base Synta
  4067xchar  =  unreserved | reserved | escape15.1 Base Synta
  4075Authentication Mechanisms:              16 Security Con
  4076 RTSP and HTTP common authentication    16 Security Con
  4082Abuse of SRV Log info.:                 16 Security Con
  4083 RTSP and HTTP SRVs similar logging     16 Security Con
  4085protect contents of those logs          16 Security Con
  4097Transfer of Sensitive info.:            16 Security Con
  4101 protection data privacy and user privac16 Security Con
  4105Attacks Based On File and Path Names:   16 Security Con
  4108translate portions of request URLs      16 Security Con
  4110 SHOULD follow precautions              16 Security ConSD  SD  SD
  4113Personal info.:                         16 Security Con
  4114privy to same info.                     16 Security Con
  4118Privacy Issues Connected to Accept Heade16 Security Con
  4119same "Accept" headers exist             16 Security Con may may may
  4123DNS Spoofing:                           16 Security Con
  4129hold beyond single use of mapping.      16 Security Con
  4131Location Headers and Spoofing:          16 Security Con
  4133must check values of Location           16 Security Con m   m  m
  4136 not attempt to invalidate resources    16 Security Con
  4139current HTTP specification              16 Security Con
  4140future HTTP specifications              16 Security Con may may may
  4141provide additional guidance on security 16 Security Con
  4152Concentrated denial-of-service attack:  16 Security Con
  4160specified destinations for RTSP-initiate16 Security Con
  4161 SRV has verified CLT's identity        16 Security Con
  4162 database of known users authentication 16 Security Con
  4166Session hijacking:                      16 Security Con
  4171 large, random and non-sequential sessio16 Security Con
  4174Authentication:                         16 Security Con
  4175implement both basic and digest         16 Security ConSD  SD  SD
  4177control stream may be encrypted         16 Security Con may may may
  4180Stream issues:                          16 Security Con
  4181provides for stream control             16 Security Con
  4182 are not covered in section, nor in rest16 Security Con
  4184RTP, IP multicast, RSVP and IGMP        16 Security Con sd  sd sd
  4188Persistently suspicious behavior:       16 Security Con
  4189SHOULD return error code 403 (Forbidden)16 Security ConSD  SD  SD
  4192aware probe SRV for weaknesses and entry16 Security ConMAY MAY MAY
  4193 arbitrarily disconnect and ignore reque16 Security Con
  4194violation of local security policy.     16 Security Con
  4376control selected, non-contiguous sectionAppendix B: Int
  4377rendering those streams with an RTP     Appendix B: Int
  4378should not affected jumps in NPT        Appendix B: Int sdn sdn sdn
  4380timestamps MUST be continuous and monotoAppendix B: IntM   M   M
  4390cannot assume CLT can communicate with RAppendix B: Int
  4392  timestamp gap as NPT, media agent willAppendix B: Int
  4394large enough, RTP timestamp may roll oveAppendix B: Int may may may
  4401  RTP-Info field to determine before or Appendix B: Int
  4404continuous audio, set RTP marker bit at Appendix B: IntSD  SD  SD
  4406perform playout delay adaptation.       Appendix B: Int
  4408timestamps should correspond to playbackAppendix B: Int sd  sd sd
  4415maintain correct display of NPT by RTP tAppendix B: Int
  4418first sequence number of next segment.  Appendix B: Int
  4433describe streams or press in RTSP.      Appendix C: Use
  4438 SRV are not avail for agg. control.    Appendix C: Use
  4439retrieved by HTTP or or non-RTSP        Appendix C: Use
  4440may be received with ANNOUNCE mthds.    Appendix C: Use may may may
  4442non-agg. control:                       Appendix C: Use
  4444 SRV are avail for agg. control.        Appendix C: Use
  4445returned in reply toDESCRIBE            Appendix C: Use
  4446received in an ANNOUNCE mthd.           Appendix C: Use
  4464a=control: attrused to convey control URC.1.1 Control U
  4465used both for session and media desc.s  C.1.1 Control U
  4466for individual media, it indicates URL  C.1.1 Control U
  4467controlling particular media stream     C.1.1 Control U
  4468attr indicates URL for agg. control.    C.1.1 Control U
  4473may contain relative and absolute URLs  C.1.1 Control U may may may
  44861.  RTSP Content-Base field             C.1.1 Control U
  44872.  RTSP Content-Location field         C.1.1 Control U
  44883.  RTSP request URL                    C.1.1 Control U
  4492* inherits entire base URL.             C.1.1 Control U
  4496m= fieldused to enumerate streams       C.1.2 Media str
  4497streams will be rendered with sync      C.1.2 Media str
  4499port recommendation from SRV to CLT     C.1.2 Media str
  4500CLT include inSETUP request and may ignoC.1.2 Media str may may may
  4501SRV has no preference, it SHOULD set zerC.1.2 Media strSD  SD  SD
  4509payload type(s) are specified in "m=" fiC.1.3 Payload t
  4510static payload type no info. req.       C.1.3 Payload t
  4511dynamic payload type, media attr "rtpmapC.1.3 Payload t req req req
  4513encoding name within "rtpmap" attr      C.1.3 Payload t may may may
  4515X- prefix as specified in SDP           C.1.3 Payload t
  4517Codec-specific "fmtp" attr              C.1.3 Payload t
  4518register new encodings follow RFC 1890  C.1.3 Payload t sd  sd sd
  4520new profile be created and appropriate pC.1.3 Payload t rec rec rec
  4521RTP/AVP in "m=" field.                  C.1.3 Payload t
  4525Format-specific para. "fmtp"            C.1.4 Format-sp
  4528packectization interval "ptime" attr.   C.1.4 Format-sp
  4544a=range defines total time range        C.1.5 Range of
  4545length of live sessions deduced from "t"C.1.5 Range of
  4547range attr issession-level              C.1.5 Range of
  4548unitspecified first, followed by value rC.1.5 Range of
  4558t= field MUST contain start and stop    C.1.6 Time of aM   M   M
  4559times for both agg. and non-agg.        C.1.6 Time of a
  4560indicate stop time value to be valid    C.1.6 Time of aSD  SD  SD
  4562start time equal to or before time DESCRC.1.6 Time of a
  4563start and stop times of 0 always avail  C.1.6 Time of aMAY MAY MAY
  4565non-agg. reflect actual period          C.1.6 Time of a sd  sd sd
  4572SDP, "c=" contains destination address  C.1.7 Connectio
  4573unicast streams and multicast via SETUP C.1.7 Connectio
  4575Unless fixed destination                C.1.7 Connectio
  4576address, "c=" fieldto set to null value C.1.7 Connectio
  4577addresses of type "IP4", value"0.0.0.0".C.1.7 Connectio
  4581optional "a=etag" attr identifiesversion  C.1.8 Entity  opt opt opt
  4582SETUP requests may include If-Match       C.1.8 Entity  may may may
  4586opaque and contain any character within   C.1.8 Entity  may may may
  4598could argue"o=" field provides identical  C.1.8 Entity
  4601o= support multiple session               C.1.8 Entity
  4607each section MUST have control URL      C.2 Agg. ControM   M   M
  4608specified via "a=control:" attr.        C.2 Agg. Contro
  4625SDP contains complete init. even non-RTSC.2 Agg. Contro rec rec rec
  4629no means to request more detail via DESCC.2 Agg. Contro
  4633multiple streams can be controlled      C.3 Agg. Contro
  4635media level "a=control:" attrs          C.3 Agg. Contro
  4636session-level "a=control:" attr         C.3 Agg. Contro
  4638If relative,resolved to absolute URLs   C.3 Agg. Contro
  4642Single stream "a=control:" may be omitteC.3 Agg. Contro may may may
  4644If multiple stream MUST contain its own C.3 Agg. ControM   M   M
  4714CLT implementation MUST be able to do foD.1 Client     M   M  M
  4716* Generate: SETUP, TEARDOWN, PLAY or RECD.1 Client
  4718If RECORD, ANNOUNCE must implemented    D.1 Client      m   m  m
  4720* Include: CSeq, Connection, Session, TrD.1 Client
  4721If ANNOUNCE implemented, capability to  D.1 Client
  4722Content-Language, Content-Encoding, ContD.1 Client
  4723 Length, and Content-Type should be as wD.1 Client      sd  sd sd
  4724* Parse and understand: CSeq,           D.1 Client
  4725Session, Transport, Content-Language, CoD.1 Client
  4726 Encoding, Content-Length, Content-Type.D.1 Client
  4727If RECORD, Location is understood       D.1 Client      m   m  m
  4728implement RTP-Info.                     D.1 Client      sd  sd sd
  4729* Understand error code received and notD.1 Client
  4732does not want one or all status codes.  D.1 Client
  4733* Expect and respond to asynchronous reqD.1 Client
  4734does not need to implement              D.1 Client      sd  sd sd
  4735it MUST respond                         D.1 Client     M   M  M
  4742Implement RTP/AVP/UDP asvalid transport.D.1 Client
  4743Inclusion of User-Agent header.         D.1 Client
  4744Understand SDP session desc.s           D.1 Client
  4745Accept media init. formats              D.1 Client
  4770generate PAUSE request;                 D.1.1 Basic Pla
  4771implement REDIRECT mthd, Location headerD.1.1 Basic Pla
  4778recognize 401 status code;              D.1.2 Auth-enab
  4779parse and include WWW-auth header;      D.1.2 Auth-enab
  4780implement Basic auth and Digest auth    D.1.2 Auth-enab
  4786Implement SETUP, TEARDOWN, OPTIONS and  D.2 Server
  4787PLAY or RECORD                          D.2 Server
  4788If RECORD implemented, ANNOUNCE         D.2 Server
  4790Include Connection, Content-Length, ContD.2 Server
  4791Content-Encoding, Transport Public      D.2 Server
  4793Locationif RECORD mthd is.              D.2 Server      sd  sd sd
  4794RTP-compliant implement RTP-Info field. D.2 Server      sd  sd sd
  4795Parse and respond                       D.2 Server
  4796Connection, Session, Transport, Require.D.2 Server
  4802Implement RTP/AVP/UDP asvalid transport.D.2 Server
  4803Inclusion of SRV header.                D.2 Server
  4804Implement DESCRIBE mthd.                D.2 Server
  4805Generate SDP session desc.s             D.2 Server
  4827Recognize Range header                  D.2.1 Basic Pla
  4828return an error if seeking not supportedD.2.1 Basic Pla
  4829Implement PAUSE mthd.                   D.2.1 Basic Pla
  4835Include and parse Range header NPT unitsD.2.1 Basic Pla
  4836 Implementation SMPTE recommended       D.2.1 Basic Pla rec rec rec
  4837Include length of media pres            D.2.1 Basic Pla
  4839Include mappings from timestamps to NPT.D.2.1 Basic Pla
  4841 map RTP timestamps to NPT.             D.2.1 Basic Pla
  4843length info. determine seekable         D.2.1 Basic Pla may may may
  4845disable seeking length unavail.         D.2.1 Basic Pla
  4846implement "slider bar"                  D.2.1 Basic Pla
  4847serves as progress indicator and timelinD.2.1 Basic Pla
  4850Map RTP timestamps to NPT correct positiD.2.1 Basic Pla
  4858Generate 401 status code                D.2.2 Auth-enab req req req
  4860Parse and include WWW-Authentication    D.2.2 Auth-enab
  4861Implement Basic and Digest AuthenticatioD.2.2 Auth-enab

_______________________________________________
mmusic mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/mmusic