您的位置:首页 > 其它

RTSP:实时流协议(Real Time Streaming Protocol)

2010-03-28 19:49 417 查看
RTSP:实时流协议(Real Time Streaming Protocol)
实时流协议(RTSP)建立并控制一个或几个时间同步的连续流媒体,如音频和视频。尽管连续媒体流与控制流交叉是可能的,RTSP 本身并不发送连续流。换言之,RTSP 充当多媒体服务器的网络远程控制。RTSP 提供了一个可扩展框架,实现实时数据(如音频与视频)的受控、按需传送。数据源包括实况数据与存储的剪辑。RTSP 用于控制多个数据发送会话,提供了选择发送通道(如 UDP、组播 UDP 与 TCP 等)的方式,并提供了选择基于 RTP 的发送机制的方法。

目前还没有 RTSP 连接的概念;服务器维护由识别符标识的会话。RTSP 会话不会绑定到传输层连接,如 TCP。在 RTSP 会话期间,RTSP 客户端可打开或关闭多个对服务器的可靠传输连接以发出 RTSP 请求。它也可选择使用无连接传输协议,如 UDP。

RTSP 控制的流可能用到 RTP,但 RTSP 操作并不依赖用于传输连续媒体的传输机制。RTSP 在语法和操作上与 HTTP/1.1 类似,因此 HTTP 的扩展机制在多数情况下可加入 RTSP。然而,在很多重要方面 RTSP 仍不同于 HTTP :

RTSP 引入了大量新方法并具有一个不同的协议标识符:
在大多数情况下,RTSP 服务器需要保持缺省状态,与 HTTP 的无状态相对;
RTSP 中客户端和服务器都可以发出请求;
在多数情况下,数据由不同的协议传输;
RTSP 使用 ISO 10646 (UTF-8)而并非 ISO 8859-1,与当前的国际标准 HTML 相一致;
URI 请求总是包含绝对 URI。为了与过去的错误相互兼容,HTTP/1.1 只在请求过程中传送绝对路径并将主机名置于另外的头字段。
该协议支持如下操作:

从媒体服务器上检索媒体:用户可通过 HTTP 或其它方法提交一个演示描述请求;
媒体服务器邀请进入会议: 媒体服务器可被邀请参加正进行的会议,或回放媒体,或记录部分或全部演示;
将新媒体加到现有演示中:如服务器能告诉客户端接下来可用的媒体内容,对现场直播显得尤其有用。
协议结构

RTSP 是一种文本协议,采用 UTF-8 编 码中的 ISO 10646 字符集。一行可通过 CRLF 终止,但接收端需要做好解释 CR 和 LF 作为一行终止符 的准备。关于头字段概述如下:

HeaderTypeSupportMethods
AcceptRopt.entity
Accept-EncodingRopt.entity
Accept-LanguageRopt.all
AllowRopt.all
AuthorizationRopt.all
BandwidthRopt.all
BlocksizeRopt.All but OPTIONS, TEARDOWN
Cache-ControlGopt.SETUP
ConferenceRopt.SETUP
ConnectionGreq.all
Content-BaseEopt.entity
Content-EncodingEreq.SET_PARAMETER
Content-EncodingEreq.DESCRIBE, ANNOUNCE
Content-LanguageEreq.DESCRIBE, ANNOUNCE
Content-LengthEreq.SET_PARAMETER, ANNOUNCE
Content-LengthEreq.entity
Content-LocationEopt.entity
Content-TypeEreq.SET_PARAMETER, ANNOUNCE
Content-TypeRreq.entity
CSeqGreq.all
DateGopt.all
ExpiresEopt.DESCRIBE, ANNOUNCE
FromRopt.all
If-Modified-SinceRopt.DESCRIBE, SETUP
Last-ModifiedEopt.entity
Proxy-Authenticate
Proxy-RequireRreq.all
PublicRopt.all
RangeRopt.PLAY, PAUSE, RECORD
RangeRopt.PLAY, PAUSE, RECORD
RefererRopt.all
RequireRreq.all
Retry-AfterRopt.all
RTP-InfoRreq.PLAY
ScaleRropt.PLAY, RECORD
SessionRrreq.All but SETUP, OPTIONS
ServerRopt.all
SpeedRropt.PLAY
TransportRrreq.SETUP
UnsupportedRreq.all
User-AgentRopt.all
ViaGopt.all
WWW-AuthenticateRopt.all
类型 "g" 表示请求和响应中的通用请求头;类型 "R" 表示请求头;类型 "r" 表示响应头;类型 "e" 表示实体头字段。在 "support" 一栏中 标有 "req." 的字段 必须由接收者以特殊的方法实现;而 "opt." 的字段是可选的。注意,不是所有 "req." 字段在该类型的每个请求中都会被发送。 "req." 只表示客户机(支持响应头)和服务器(支持请求头)必须执行该字段。最后一栏列出了关于头字段产生作用的方法;其中 "entity" 针对于返回一个信息主体的所有方法。

RTSP(Real Time Streaming Protocol),实时流传输协议,是TCP/IP协议体系

中的一个应用层协议,由哥伦比亚大学、网景和RealNetworks公司提交的IETFRFC

标准。该协议定义了一对多应用程序如何有效地通过IP网络传送多媒体数据。

RTSP在体系结构上位于RTP和RTCP之上,它使用TCP或 RTP完成数据传输。HTTP与

RTSP相比,HTTP传送HTML,而RTP传送的是多媒体数据。HTTP请求由客户机发出,

服务器作出响应;使用RTSP时,客户机和服务器都可以发出请求,即RTSP可以是

双向的。

  RTSP是用来控制声音或影像的多媒体串流协议,并允许同时多个串流需求控

制,传输时所用的网络通讯协定并不在其定义的范围内,服务器端可以自行选择

使用TCP或UDP来传送串流内容,它的语法和运作跟HTTP 1.1类似,但并不特别强

调时间同步,所以比较能容忍网络延迟。而前面提到的允许同时多个串流需求控

制(Multicast),除了可以降低服务器端的网络用量,更进而支持多方视讯会议

(Video Conference)。因为与HTTP1.1的运作方式相似,所以代理服务器

〈Proxy〉的快取功能〈Cache〉也同样适用于RTSP,并因RTSP具有重新导向功能

,可视实际负载情况来转换提供服务的服务器,以避免过大的负载集中于同一服

务器而造成延迟。
  该协议用于C/S模型,是一个基于文本的协议,用于在客户端和服务器端建立

和协商实时流会话。
  实时流协议(RTSP)是应用级协议,控制实时数据的发送。RTSP提供了一个

可扩展框架,使
  实时数据,如音频与视频,的受控、点播成为可能。数据源包括现场数据与

存储在剪辑中数据
  。该协议目的在于控制多个数据发送连接,为选择发送通道,如UDP、组播

UDP与TCP,提供途径
  ,并为选择基于RTP上发送机制提供方法。
  实时流协议(RTSP)建立并控制一个或几个时间同步的连续,流媒体,尽管

连续媒体流与控制
  流交*是可能的,通常它本身并不发送连续流。换言之,RTSP充当多媒体服务

器的网络远程控
  制。RTSP连接没有绑定到传输层连接,如TCP。在RTSP连接期间,RTSP用户可

打开或关闭多个对
  服务器的可*传输连接以发出RTSP 请求。此外,可使用无连接传输协议,如

UDP。RTSP流控制
  的流可能用到RTP,但RTSP操作并不依赖用于携带连续媒体的传输机制。实时

流协议在语法和操
  作上与HTTP/1.1类似,因此HTTP的扩展机制大都可加入RTSP。协议支持的操

作如下:
  从媒体服务器上检索媒体:
  用户可通过HTTP或其它方法提交一个演示描述。如演示是组播,演示式就包

含用于连续媒体
  的的组播地址和端口。如演示仅通过单播发送给用户,用户为了安全应提供

目的地址。
  媒体服务器邀请进入会议:
  媒体服务器可被邀请参加正进行的会议,或回放媒体,或记录其中一部分,

或全部。这种模
  式在分布式教育应用上很有用,会议中几方可轮流按远程控制按钮。
  将媒体加到现成讲座中:
  如服务器告诉用户可获得附加媒体内容,对现场讲座显得尤其有用。如

HTTP/1.1中类似,RTSP
  请求可由代理、通道与缓存处理。
  RTSP 特性如下:
  可扩展性:
  新方法和参数很容易加入RTSP。

易解析:
  RTSP可由标准 HTTP或MIME解析器解析。
  安全:
  RTSP使用网页安全机制。
  独立于传输:
  RTSP可使用不可靠数据报协议(UDP)、可靠数据报协议(RDP),如要实现应用级可靠,可
  使用可靠流协议。
  多服务器支持:
  每个流可放在不同服务器上,用户端自动同不同服务器建立几个并发控制连接,媒体同步在
  传输层执行。
  记录设备控制:
  协议可控制记录和回放设备。
  流控与会议开始分离:
  仅要求会议初始化协议提供,或可用来创建唯一会议标识号。特殊情况下, SIP或H.323
  可用来邀请服务器入会。
  适合专业应用:
  通过SMPTE 时标,RTSP支持帧级精度,允许远程数字编辑
  资料:
   http://dslab.ee.ncku.edu.tw/~lily/learning/learning_ch2-1.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: