没有合适的资源?快使用搜索试试~ 我知道了~
为使 STB 能够实现视频点播,需要在VS 中找到对应的节目源。通过RTSP 协议在STB 与VS 之间建立会话, 可以很好地控制STB 与VS 之间的消息转换,实现视频点播,以及直 播回放与直播之间的切换。STB 应按照本文所定义的RTSP 协议格式完成对VS 中的音视频 流的控制与交互。
资源推荐
资源详情
资源评论
1 概述
实时流协议 RTSP 是一种文本协议,采用 UTF-8 编码中的 ISO 10646 字符集.它属于应用
级协议,提供了一个可扩展框架,使实时数据的受控、点播成为可能.在 CMS 系统中,RTSP 协
议在机顶盒(STB)和视频服务器(VS)中建立对话,实现了视频点播、直播回放、精彩回放、断
点续播的各种功能以及相互之间的转换.本文对以前的 RTSP 协议文档做了个总结,详细叙述
了点播系统中 RTSP 协议的接口规范.
1.1 目的
为使 STB 能够实现视频点播,需要在 VS 中找到对应的节目源。通过 RTSP 协议在 STB
与 VS 之间建立会话, 可以很好地控制 STB 与 VS 之间的消息转换,实现视频点播,以及直
播回放与直播之间的切换。STB 应按照本文所定义的 RTSP 协议格式完成对 VS 中的音视频
流的控制与交互。
1.2 范围
本文描述了在视频点播系统中,STB 与 VS 之间的 RTSP 协议接口规范。
1.3 功能
本接口文档采用 RFC2326标准, 通过 RTSP 建立流媒体会话,从而进行媒体的正常播放。
使用的 RTSP 消息主要有:
1.3.1 DESCRIBE
获取媒体 URL 相关的媒体会话描述信息,包括媒体格式,数据承载类型,服务器端所能
识别的描述类型。
1.3.2 SETUP
初始化一个会话信息。在一个会话期间也可以用来修改传输参数。
1.3.3 PLAY
请求流媒体服务器开始发送媒体流。可以指定发送的起始帧和结束帧。也可以指定步长
等其他信息。类似于播放器的播放操作,支持快进,快退。
1.3.4 PAUSE
请求服务器暂时停止播放媒体流。可以指定停止的位置。类似于播放器的暂停操作。
1.3.5 TEARDOWN
停止一个会话。类似于播放器的停止操作。
1.3.6 GET_PARAMETER
从表示流中获取参数。这个方法如果不带 entity body,就可以用来保持和服务器之间的
连接。也可作为心跳方法。
1.3.7 SET_PARAMETER
用于通知连接的客户或服务器当前所发生的事件,发送的申请应该只包含一个参数以正
确解析收到的信息。
2 点播中的 RTSP 接口规范
2.1 开始播放
图 2-1 开始点播的时序图
DESCRIBE:
STB -> VS:
DESCRIBE
rtsp://192.168.0.126:554/
describefile.xml?clientid=smartCardID&startClock=20330.83908
9&endClock=21066.702056&vsip=192.168.0.10&vsport=5544&areacode=nanshan&OSSAuthCo
de=abcdef&token=md5(clientIp+keyStr+smartCardID+/channelNumber.xml) RTSP/1.0\r\n
Cseq: 1\r\n
\r\n
说明:由于视频点播有约定的格式(mpg),STB 不必要求返回 SDP 媒体格式信息,而通
过具体解码节目 TS 流决定,所以该消息暂时如此处理,也可以考虑以后修改。
注:VOD 模式时,STB 可以向 Media Server 请求一个描述文件(格式参见附录 A),或
者请求一个 mpg 文件。以后统一用 describefile.xml 表示,不再说明。
VS -> STB:
RTSP/1.0 200 OK\r\n
Cseq: 1\r\n
Content-length: 460\r\n
Content-Type: application/x-rtsp-mh\r\n
\r\n
<MediaDescription>\r\n
<MediaContainer NumStreams="1" ></MediaContainer>\r\n
<MediaStreams>\r\n
<MediaStream streamID="0" MineType="application/x-sgimb" MaxBitRate="-1"
Height="0" Width="0" FramePerSeconf="0" AspectRatio="0" StartTime="20330.839089"
Duration="735.862967" ParentDuration="735.862967" PlayModes="0"
NumTrickSpeed="0" TrickSpeeds="2,4,8" TypeSpecificData="MPEG-2" VideoPID="69"
AudioPID="68" ></MediaStream>\r\n
STB VS
发送 DESCRIBE 请求
DESCRIBE 响应
发送 SETUP 请求
SETUP 响应
发送 PLAY 请求
PLAY
响应
</MediaStreams>\r\n
</MediaDescription>\r\n
\r\n
说明:正确状态,表示所申请的媒体资源可以在 CONTROL CENTER 中找到,STB 可以发
送后续消息。否则收到 RTSP 标准错误信息。
SETUP:
STB -> VS:
SETUP
rtsp://192.168.0.126:554/
describefile.xml?clientid=smartCardID&startClock=20330.83908
9&endClock=21066.702056&vsip=192.168.0.10&vsport=5544&areacode=nanshan&OSSAuthCo
de=abcdef&token=md5(clientIp+keyStr+smartCardID+/channelNumber.xml) RTSP/1.0\r\n
Cseq: 2\r\n
Transport:CATV;unicast;Frequency=500000000-800000000;Annex=A-B;Modulation=64-25
6;SymbolRate=6000-8000;ChannelSpace=6000000-8000000\r\n
\r\n
说明:STB 发送自己所能接收的参数范围,包括中心频率范围,调制方式,符号率等。
VS -> STB:
RTSP/1.0 200 OK\r\n
Cseq: 2\r\n
Session:12345678\r\n
Transport:CATV;unicast;ProgramNo=125;Frequency=555000000;Annex=A;Modulation=256
;SymbolRate=6950;ChannelSpace=7000000\r\n
\r\n
说明:VS 根据数据库中的 IPQAM 资源分配表,选定一个在 STB 能力范围内的资源配置,
然后发送给 STB 一个唯一的 SESSION 标识符信息 12345678(随机值),一个由 IPQAM 目的端
口决定的节目号。同时在 Transport 的域内发送 VS 所选定的调谐频率,调制类型及符号速
率等信息。如果所选定的配置超出了 STB 的能力范围之外,则返回错误信息:
RTSP/1.0 461 Unsupported transport\r\n
Cseq: 2\r\n
\r\n
PLAY:
STB -> VS:
PLAY
rtsp://192.168.0.126:554/
describefile.xml?clientid=smartCardID&startClock=20330.83908
9&endClock=21066.702056&vsip=192.168.0.10&vsport=5544&areacode=nanshan&OSSAuthCo
de=abcdef&token=md5(clientIp+keyStr+smartCardID+/channelNumber.xml) RTSP/1.0\r\n
CSeq: 3\r\n
Session: 12345678\r\n
Range: npt=123-345\r\n
\r\n
剩余17页未读,继续阅读
资源评论
caolei117
- 粉丝: 0
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功