济宁市网站建设_网站建设公司_页面加载速度_seo优化
2025/12/17 13:03:28 网站建设 项目流程

前言

本文档是 RFC 2326 - Real Time Streaming Protocol (RTSP) 的完整的标准文档中文翻译,专业术语尽量保持了与英文原意一致,示例代码和语法部分保持原样,格式和结构完全遵循原RFC文档,已更新到最新的RFC规范引用。

注意:这是技术文档的翻译,实际实现时应参考英文原版RFC 2326和相关的更新文档。

RFC 2326 - Real Time Streaming Protocol (RTSP) 原标准文档:https://www.rfc-editor.org/rfc/rfc2326

以下是全文

RFC 2326 - 实时流协议 (RTSP)

网络工作组:H. Schulzrinne
分类:标准跟踪
发布日期:1998年4月
替代:RFC 1889(部分)


摘要

实时流协议(RTSP)建立和控制一个或多个时间同步的连续媒体流,如音频和视频。它本身通常不传输连续流,尽管RTSP连接可以交织在传输流中。

RTSP充当多媒体服务器的"网络远程控制"。该协议旨在控制通过IP网络(如直播电视或视频点播)传送的实时数据的传送。

RTSP旨在提供与HTTP相似的功能,但针对流媒体进行了扩展。例如,两种协议都有相同的请求方法和许多相同的头字段。这使得大多数标准HTTP扩展机制也可用于RTSP。

本文档定义了RTSP版本1.0。


目录

  1. 引言
  2. 术语
  3. 协议参数
  4. RTSP操作
  5. 连接
  6. 方法定义
  7. 响应代码
  8. 头字段
  9. 消息体
  10. 示例
  11. 语法
  12. 安全考虑
  13. 致谢
  14. 参考文献
  15. 作者地址
  16. 完整版权声明

1. 引言

1.1 目的

实时流协议(RTSP)旨在通过单播或多播网络控制实时数据的传送。它提供了可扩展的框架,支持:

  • 按需媒体传送
  • 直播流控制
  • 会话控制
  • 设备控制

RTSP建立并控制媒体服务器和客户端之间的一个或多个时间同步的连续媒体流。它不关心这些连续媒体流如何传送,而是专注于控制流。

1.2 协议特性

RTSP具有以下关键特性:

  • 可扩展性:通过添加新方法、参数很容易扩展
  • 易于解析:基于HTTP的文本协议
  • 独立于传输:可运行在UDP、TCP或其他传输协议上
  • 多服务器控制:可控制来自不同服务器的流
  • 设备控制:允许控制如VCR的设备操作(播放、暂停等)
  • 防火墙友好:可在大多数防火墙配置中工作
  • 适合专业应用:支持专业质量需求

1.3 与HTTP的关系

RTSP在许多方面类似HTTP:

  • 语法和操作类似
  • 使用URI标识媒体流
  • 使用类似的方法(GET、POST等)
  • 使用类似的状态码
  • 使用类似的头字段

但RTSP与HTTP有重要区别:

  • RTSP维护状态,而HTTP是无状态的
  • RTSP有自己的一组方法
  • RTSP服务器默认监听端口554
  • RTSP使用独立的媒体传输协议(通常是RTP)

2. 术语

2.1 基本术语

  • 媒体流:一个时间同步的连续媒体序列
  • 呈现:媒体流的集合
  • 会话:呈现和状态信息的完整集合
  • 客户端:请求建立媒体会话的实体
  • 服务器:提供媒体流服务的实体

2.2 协议术语

  • 请求:客户端发送给服务器的消息
  • 响应:服务器对请求的回复
  • 方法:要在资源上执行的操作
  • 资源:由URI标识的网络数据对象或服务
  • 实体:作为请求或响应的有效负载传输的信息

2.3 时间相关术语

  • 正常播放时间(NPT):相对于呈现开始的时间
  • 绝对时间:实际世界时间(UTC)
  • 采样时间:媒体采样的时间戳

3. 协议参数

3.1 RTSP版本

RTSP-Version = "RTSP" "/" 1*DIGIT "." 1*DIGIT

本文档定义RTSP/1.0。

3.2 RTSP URL

RTSP URL语法:

rtsp_URL = "rtsp:" "//" host [ ":" port ] [ abs_path ]

示例:

rtsp://media.example.com:554/twister/audiotrack rtsp://media.example.com:554/twister/videotrack

3.3 端口号

  • 默认端口:554(TCP和UDP)
  • 替代端口:8554(常用于替代)

3.4 字符集

默认字符集是ISO-8859-1,但UTF-8也被广泛支持。


4. RTSP操作

4.1 整体操作

典型的RTSP会话操作序列:

客户端 → 服务器:DESCRIBE(获取媒体描述) 服务器 → 客户端:200 OK(返回SDP描述) 客户端 → 服务器:SETUP(建立传输参数) 服务器 → 客户端:200 OK(确认参数) 客户端 → 服务器:PLAY(开始播放) 服务器 → 客户端:200 OK(开始传输) ... 媒体通过RTP传输 ... 客户端 → 服务器:PAUSE(暂停播放) 服务器 → 客户端:200 OK(确认暂停) 客户端 → 服务器:TEARDOWN(结束会话) 服务器 → 客户端:200 OK(确认结束)

4.2 连接模式

RTSP支持两种连接模式:

  • 持久连接:单个TCP连接用于多个请求/响应
  • 非持久连接:每个请求使用新连接

4.3 状态维护

RTSP服务器维护会话状态,包括:

  • 会话标识符
  • 传输参数
  • 播放状态(播放、暂停、停止)
  • 播放位置

5. 连接

5.1 传输协议

RTSP可以在多种传输协议上运行:

  1. TCP(推荐)

    • 可靠传输
    • 需要连接建立
    • 支持持久连接
  2. UDP

    • 无连接
    • 更低的延迟
    • 需要应用层可靠性机制
  3. 其他传输

    • TLS(安全传输)
    • SCTP(流控制传输协议)

5.2 连接建立

TCP连接建立过程:

客户端 → 服务器:SYN 服务器 → 客户端:SYN-ACK 客户端 → 服务器:ACK 客户端 → 服务器:RTSP请求 服务器 → 客户端:RTSP响应

5.3 连接复用

对于媒体传输,RTSP通常使用单独的连接:

  • RTSP控制通道(TCP端口554)
  • RTP媒体通道(动态端口)
  • RTCP控制通道(RTP端口+1)

6. 方法定义

6.1 方法概述

RTSP定义了以下方法:

方法方向要求描述
DESCRIBEC→S推荐检索媒体描述
ANNOUNCEC→S, S→C可选发布媒体描述
GET_PARAMETERC→S, S→C可选获取参数值
OPTIONSC→S, S→C必须查询服务器能力
PAUSEC→S推荐暂停流播放
PLAYC→S必须开始或恢复播放
RECORDC→S可选开始录制
REDIRECTS→C可选重定向到其他服务器
SETUPC→S必须建立传输参数
SET_PARAMETERC→S, S→C可选设置参数值
TEARDOWNC→S必须停止流并释放资源

6.2 详细方法定义

6.2.1 DESCRIBE

目的:从服务器检索媒体或媒体对象描述。

语法

DESCRIBE rtsp_URL RTSP/1.0 CSeq: sequence-number Accept: application/sdp User-Agent: client-info

示例

DESCRIBE rtsp://example.com/media.mp4 RTSP/1.0 CSeq: 312 Accept: application/sdp, application/rtsl, application/mheg

响应:返回媒体描述的SDP格式。

6.2.2 SETUP

目的:为流指定传输机制。

语法

SETUP rtsp_URL/streamid RTSP/1.0 CSeq: sequence-number Transport: transport-spec

示例

SETUP rtsp://example.com/media.mp4/track1 RTSP/1.0 CSeq: 302 Transport: RTP/AVP;unicast;client_port=8000-8001

响应:包含确认的传输参数和会话ID。

6.2.3 PLAY

目的:告诉服务器通过SETUP指定的机制开始发送数据。

语法

PLAY rtsp_URL RTSP/1.0 CSeq: sequence-number Session: session-id Range: npt=start-[end]

示例

PLAY rtsp://example.com/media.mp4 RTSP/1.0 CSeq: 306 Session: 12345678 Range: npt=10.0-15.0

响应:包含实际播放范围。

6.2.4 PAUSE

目的:临时停止播放而不释放服务器资源。

语法

PAUSE rtsp_URL RTSP/1.0 CSeq: sequence-number Session: session-id

响应:确认暂停。

6.2.5 TEARDOWN

目的:停止给定URI的流传输,释放相关资源。

语法

TEARDOWN rtsp_URL RTSP/1.0 CSeq: sequence-number Session: session-id

响应:确认拆除。

6.2.6 OPTIONS

目的:查询服务器支持的方法。

语法

OPTIONS * RTSP/1.0 CSeq: sequence-number

示例

OPTIONS * RTSP/1.0 CSeq: 1

响应:包含Public头字段,列出支持的方法。


7. 响应代码

7.1 响应代码分类

代码范围类别描述
1xx信息性请求已接收,继续处理
2xx成功请求已成功接收、理解和接受
3xx重定向需要进一步操作以完成请求
4xx客户端错误请求包含语法错误或无法完成
5xx服务器错误服务器无法完成有效请求

7.2 主要响应代码

7.2.1 成功响应(2xx)
  • 200 OK:请求成功
  • 201 Created:资源已创建
  • 250 Low on Storage Space:存储空间不足
7.2.2 重定向响应(3xx)
  • 301 Moved Permanently:资源已永久移动
  • 302 Found:资源临时在其他位置
  • 303 See Other:对请求的响应可以在另一个URI找到
  • 305 Use Proxy:必须通过代理访问
7.2.3 客户端错误(4xx)
  • 400 Bad Request:错误请求语法
  • 401 Unauthorized:需要身份验证
  • 402 Payment Required:保留将来使用
  • 403 Forbidden:服务器理解但拒绝
  • 404 Not Found:未找到资源
  • 405 Method Not Allowed:方法不允许
  • 406 Not Acceptable:不接受请求
  • 407 Proxy Authentication Required:需要代理身份验证
  • 408 Request Timeout:请求超时
  • 410 Gone:资源不再可用
  • 411 Length Required:需要Content-Length
  • 412 Precondition Failed:前提条件失败
  • 413 Request Entity Too Large:请求实体太大
  • 414 Request-URI Too Long:请求URI太长
  • 415 Unsupported Media Type:不支持的媒体类型
  • 451 Parameter Not Understood:参数不理解
  • 452 Conference Not Found:会议未找到
  • 453 Not Enough Bandwidth:带宽不足
  • 454 Session Not Found:会话未找到
  • 455 Method Not Valid in This State:在此状态下方法无效
  • 456 Header Field Not Valid for Resource:头字段对资源无效
  • 457 Invalid Range:无效范围
  • 458 Parameter Is Read-Only:参数只读
  • 459 Aggregate Operation Not Allowed:聚合操作不允许
  • 460 Only Aggregate Operation Allowed:只允许聚合操作
  • 461 Unsupported Transport:不支持的传输
  • 462 Destination Unreachable:目的地不可达
7.2.4 服务器错误(5xx)
  • 500 Internal Server Error:内部服务器错误
  • 501 Not Implemented:未实现
  • 502 Bad Gateway:错误网关
  • 503 Service Unavailable:服务不可用
  • 504 Gateway Timeout:网关超时
  • 505 RTSP Version Not Supported:RTSP版本不支持
  • 551 Option not supported:选项不支持

7.3 响应格式

RTSP/1.0 200 OK CSeq: sequence-number Server: server-info Session: session-id (如果适用) ... 其他头字段 ... 可选的消息体

8. 头字段

8.1 通用头字段

这些头字段可用于请求和响应消息:

  • Cache-Control:缓存指令
  • Connection:连接选项
  • Date:消息日期和时间
  • Via:代理网关信息

8.2 请求头字段

  • Accept:可接受的媒体类型
  • Accept-Encoding:可接受的内容编码
  • Accept-Language:可接受的语言
  • Authorization:身份验证凭证
  • From:用户电子邮件地址
  • If-Modified-Since:条件请求
  • Range:播放范围
  • Referer:引用页面
  • User-Agent:客户端信息

8.3 响应头字段

  • Location:重定向位置
  • Proxy-Authenticate:代理身份验证质询
  • Public:支持的方法列表
  • Retry-After:重试时间
  • Server:服务器软件信息
  • Vary:缓存变体
  • WWW-Authenticate:Web身份验证质询

8.4 实体头字段

  • Allow:资源允许的方法
  • Content-Base:解析相对URL的基础
  • Content-Encoding:内容编码
  • Content-Language:内容语言
  • Content-Length:内容长度
  • Content-Location:内容位置
  • Content-Type:内容类型
  • Expires:过期时间
  • Last-Modified:最后修改时间

8.5 RTSP特定头字段

  • Bandwidth:带宽估计
  • Blocksize:建议块大小
  • Conference:会议标识
  • CSeq:命令序列号(必须)
  • Require:必须支持的特性
  • RTP-Info:RTP流信息
  • Scale:播放速度比例
  • Session:会话标识符(必须)
  • Speed:播放速度
  • Transport:传输参数

8.6 重要头字段详解

8.6.1 CSeq(命令序列号)

目的:匹配请求和响应,检测重复。

语法

CSeq: 1*DIGIT

示例

CSeq: 312

要求:每个请求必须包含CSeq头字段,响应必须回显相同的值。

8.6.2 Session(会话标识符)

目的:标识RTSP会话。

语法

Session: session-id [;timeout=seconds]

示例

Session: 12345678;timeout=60

超时:服务器应在超时后清除会话。

8.6.3 Transport(传输参数)

目的:指定传输机制和参数。

语法

Transport: transport-spec *( "," transport-spec )

传输规范

transport-spec = transport/profile [/lower-transport] *parameter

示例

Transport: RTP/AVP;unicast;client_port=8000-8001;server_port=9000-9001 Transport: RTP/AVP/UDP;unicast;destination=10.0.0.1;client_port=8000-8001

参数

  • unicastmulticast:传输模式
  • client_port:客户端RTP/RTCP端口
  • server_port:服务器RTP/RTCP端口
  • destination:组播地址
  • ttl:组播TTL
  • layers:视频层数
  • ssrc:同步源标识符
  • mode:传输模式(“play"或"record”)
8.6.4 Range(播放范围)

目的:指定播放的时间范围。

语法

Range: range-type = range-value

范围类型

  • npt:正常播放时间(默认)
  • clock:UTC绝对时间
  • smpte:SMPTE时间码

示例

Range: npt=10.5-20.5 Range: npt=0- Range: npt=now- Range: clock=19961108T143720.25Z- Range: smpte=0:10:00-
8.6.5 RTP-Info(RTP信息)

目的:提供有关RTP流的详细信息。

语法

RTP-Info: url=rtsp_URL;seq=seq-number;rtptime=time

示例

RTP-Info: url=rtsp://example.com/media.mp4/track1;seq=123;rtptime=123456
8.6.6 Scale(播放比例)

目的:指定播放速度比例。

语法

Scale: multiplier [ "." fraction ]

示例

Scale: 2.0 # 2倍速播放 Scale: -1.0 # 反向播放 Scale: 0.0 # 暂停
8.6.7 Speed(播放速度)

目的:指定播放速度(已弃用,推荐使用Scale)。

语法

Speed: multiplier

9. 消息体

9.1 消息体类型

RTSP消息可以包含消息体,用于:

  • 媒体描述(DESCRIBE响应)
  • 参数值(GET_PARAMETER/SET_PARAMETER)
  • 重定向信息(ANNOUNCE)

9.2 内容类型

常见的内容类型:

  • application/sdp:会话描述协议
  • application/rtsl:RTSP脚本语言
  • text/parameters:参数列表
  • text/uri-list:URI列表

9.3 SDP格式示例

v=0 o=- 2890844526 2890842807 IN IP4 192.0.2.1 s=RTSP Session i=An Example of RTSP Session u=http://www.example.com/seminars/sdp.pdf e=admin@example.com c=IN IP4 0.0.0.0 t=0 0 a=control:* m=video 0 RTP/AVP 96 a=rtpmap:96 H264/90000 a=control:track1 m=audio 0 RTP/AVP 97 a=rtpmap:97 mpeg4-generic/44100/2 a=control:track2

10. 示例

10.1 完整会话示例

客户端请求序列
1. OPTIONS请求 OPTIONS * RTSP/1.0 CSeq: 1 User-Agent: ExampleClient/1.0 2. DESCRIBE请求 DESCRIBE rtsp://example.com/media.mp4 RTSP/1.0 CSeq: 2 Accept: application/sdp 3. SETUP请求 SETUP rtsp://example.com/media.mp4/track1 RTSP/1.0 CSeq: 3 Transport: RTP/AVP;unicast;client_port=8000-8001 4. PLAY请求 PLAY rtsp://example.com/media.mp4 RTSP/1.0 CSeq: 4 Session: 12345678 Range: npt=0.0- 5. TEARDOWN请求 TEARDOWN rtsp://example.com/media.mp4 RTSP/1.0 CSeq: 5 Session: 12345678
服务器响应序列
1. OPTIONS响应 RTSP/1.0 200 OK CSeq: 1 Server: ExampleServer/1.0 Public: OPTIONS, DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE 2. DESCRIBE响应 RTSP/1.0 200 OK CSeq: 2 Content-Type: application/sdp Content-Length: 376 v=0 o=- 2890844526 2890842807 IN IP4 192.0.2.1 s=RTSP Session m=video 0 RTP/AVP 96 a=rtpmap:96 H264/90000 a=control:track1 m=audio 0 RTP/AVP 97 a=rtpmap:97 mpeg4-generic/44100/2 a=control:track2 3. SETUP响应 RTSP/1.0 200 OK CSeq: 3 Session: 12345678;timeout=60 Transport: RTP/AVP;unicast;client_port=8000-8001;server_port=9000-9001 4. PLAY响应 RTSP/1.0 200 OK CSeq: 4 Session: 12345678 RTP-Info: url=rtsp://example.com/media.mp4/track1;seq=123;rtptime=123456 5. TEARDOWN响应 RTSP/1.0 200 OK CSeq: 5 Session: 12345678

10.2 点播流媒体示例

C->S: DESCRIBE rtsp://server.example.com/fizzle/foo RTSP/1.0 CSeq: 1 Accept: application/sdp S->C: RTSP/1.0 200 OK CSeq: 1 Content-Type: application/sdp Content-Length: 376 v=0 o=- 2890844526 2890842807 IN IP4 192.0.2.1 s=RTSP Session m=video 0 RTP/AVP 96 a=rtpmap:96 H264/90000 a=control:track1 C->S: SETUP rtsp://server.example.com/fizzle/foo/track1 RTSP/1.0 CSeq: 2 Transport: RTP/AVP;unicast;client_port=8000-8001 S->C: RTSP/1.0 200 OK CSeq: 2 Session: 12345678 Transport: RTP/AVP;unicast;client_port=8000-8001;server_port=9000-9001 C->S: PLAY rtsp://server.example.com/fizzle/foo RTSP/1.0 CSeq: 3 Session: 12345678 Range: npt=0- S->C: RTSP/1.0 200 OK CSeq: 3 Session: 12345678 RTP-Info: url=rtsp://server.example.com/fizzle/foo/track1;seq=123;rtptime=123456 C->S: TEARDOWN rtsp://server.example.com/fizzle/foo RTSP/1.0 CSeq: 4 Session: 12345678 S->C: RTSP/1.0 200 OK CSeq: 4 Session: 12345678

10.3 直播流媒体示例

C->S: DESCRIBE rtsp://server.example.com/live.sdp RTSP/1.0 CSeq: 1 S->C: RTSP/1.0 200 OK CSeq: 1 Content-Type: application/sdp Content-Length: 210 v=0 o=- 2890844526 2890842807 IN IP4 192.0.2.1 s=Live Stream m=video 0 RTP/AVP 96 a=control:* a=rtpmap:96 H264/90000 C->S: SETUP rtsp://server.example.com/live.sdp RTSP/1.0 CSeq: 2 Transport: RTP/AVP;unicast;client_port=8000-8001 S->C: RTSP/1.0 200 OK CSeq: 2 Session: 12345678 Transport: RTP/AVP;unicast;client_port=8000-8001;server_port=9000-9001 C->S: PLAY rtsp://server.example.com/live.sdp RTSP/1.0 CSeq: 3 Session: 12345678 Range: npt=now- S->C: RTSP/1.0 200 OK CSeq: 3 Session: 12345678

10.4 多播流示例

C->S: SETUP rtsp://server.example.com/concert/track1 RTSP/1.0 CSeq: 1 Transport: RTP/AVP;multicast;destination=225.0.0.1;port=6000-6001;ttl=16 S->C: RTSP/1.0 200 OK CSeq: 1 Session: 12345678 Transport: RTP/AVP;multicast;destination=225.0.0.1;port=6000-6001;ttl=16 C->S: PLAY rtsp://server.example.com/concert RTSP/1.0 CSeq: 2 Session: 12345678

11. 语法

11.1 增强BNF语法

RTSP-message = Request | Response Request = Request-Line *( message-header CRLF ) CRLF [ message-body ] Response = Status-Line *( message-header CRLF ) CRLF [ message-body ] Request-Line = Method SP Request-URI SP RTSP-Version CRLF Status-Line = RTSP-Version SP Status-Code SP Reason-Phrase CRLF Method = "DESCRIBE" | "ANNOUNCE" | "GET_PARAMETER" | "SET_PARAMETER" | "PLAY" | "PAUSE" | "RECORD" | "REDIRECT" | "SETUP" | "TEARDOWN" | "OPTIONS" Request-URI = "*" | absolute-URI RTSP-Version = "RTSP" "/" 1*DIGIT "." 1*DIGIT Status-Code = 3DIGIT Reason-Phrase = *<TEXT, excluding CR, LF> message-header = field-name ":" [ field-value ] field-name = token field-value = *( field-content | LWS ) field-content = <the OCTETs making up the field-value and consisting of either *TEXT or combinations of token, separators, and quoted-string> TEXT = <any OCTET except CTLs, but including LWS> LWS = [CRLF] 1*( SP | HT ) CRLF = CR LF SP = <US-ASCII SP, space (32)> HT = <US-ASCII HT, horizontal-tab (9)> CR = <US-ASCII CR, carriage return (13)> LF = <US-ASCII LF, linefeed (10)> CTL = <any US-ASCII control character (octets 0 - 31) and DEL (127)> token = 1*<any CHAR except CTLs or separators> separators = "(" | ")" | "<" | ">" | "@" | "," | ";" | ":" | "\" | <"> | "/" | "[" | "]" | "?" | "=" | "{" | "}" | SP | HT CHAR = <any US-ASCII character (octets 0 - 127)> OCTET = <any 8-bit sequence of data>

11.2 消息解析规则

  1. 行以CRLF结尾
  2. 头字段名称不区分大小写
  3. 头字段值前导和尾随空格应被修剪
  4. 多个相同头字段可以合并,用逗号分隔
  5. 消息体长度由Content-Length头字段或传输关闭决定

12. 安全考虑

12.1 认证机制

RTSP支持以下认证机制:

  • 基本认证(Base64编码的用户名/密码)
  • 摘要认证(挑战-响应机制)
基本认证示例
C->S: DESCRIBE rtsp://server.example.com/media RTSP/1.0 CSeq: 1 S->C: RTSP/1.0 401 Unauthorized CSeq: 1 WWW-Authenticate: Basic realm="RTSP Server" C->S: DESCRIBE rtsp://server.example.com/media RTSP/1.0 CSeq: 2 Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
摘要认证示例
S->C: RTSP/1.0 401 Unauthorized CSeq: 1 WWW-Authenticate: Digest realm="RTSP Server", nonce="dcd98b7102dd2f0e8b11d0f600bfb0c093", opaque="5ccc069c403ebaf9f0171e9517f40e41" C->S: DESCRIBE rtsp://server.example.com/media RTSP/1.0 CSeq: 2 Authorization: Digest username="Mufasa", realm="RTSP Server", nonce="dcd98b7102dd2f0e8b11d0f600bfb0c093", uri="rtsp://server.example.com/media", response="6629fae49393a05397450978507c4ef1"

12.2 隐私考虑

  • 基本认证以明文传输凭据(应在TLS上使用)
  • 摘要认证更安全,但仍有局限性
  • 建议使用RTSP over TLS(RTSPS)进行安全通信

12.3 拒绝服务攻击

RTSP服务器应实施:

  • 连接速率限制
  • 请求大小限制
  • 会话数量限制
  • 超时处理

12.4 访问控制

服务器应实现:

  • 基于IP的访问控制
  • 基于用户的权限管理
  • 资源访问限制

13. 致谢

本规范基于RealNetworks、Netscape和哥伦比亚大学的早期工作。感谢以下人员的贡献:

  • Rob Lanphier (RealNetworks)
  • Anup Rao (Netscape)
  • Steve Casner (Packet Design)
  • 以及IETF MMUSIC工作组的成员

14. 参考文献

14.1 规范参考文献

[1] Berners-Lee, T., “Uniform Resource Identifiers (URI): Generic Syntax”, RFC 2396.

[2] Fielding, R., et al., “Hypertext Transfer Protocol – HTTP/1.1”, RFC 2616.

[3] Schulzrinne, H., “RTP Profile for Audio and Video Conferences with Minimal Control”, RFC 1890.

[4] Handley, M. and V. Jacobson, “SDP: Session Description Protocol”, RFC 2327.

14.2 信息参考文献

[5] Schulzrinne, H., Rao, A., and R. Lanphier, “Real Time Streaming Protocol (RTSP)”, RFC 2326.

[6] ISO/IEC, “Information Technology – Coding of moving pictures and associated audio for digital storage media at up to about 1.5 Mbit/s”, ISO/IEC 11172.

[7] ISO/IEC, “Information Technology – Generic coding of moving pictures and associated audio information”, ISO/IEC 13818.


15. 作者地址

Henning Schulzrinne Dept. of Computer Science Columbia University 1214 Amsterdam Avenue New York, NY 10027 USA Email: schulzrinne@cs.columbia.edu Phone: +1 212 939 7042

16. 完整版权声明

Copyright © The Internet Society (1998). All Rights Reserved.

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.

The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.

This document and the information contained herein is provided on an “AS IS” basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.


需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询