机顶盒接入规范-ISMAOverIP分册.doc_第1页
机顶盒接入规范-ISMAOverIP分册.doc_第2页
机顶盒接入规范-ISMAOverIP分册.doc_第3页
机顶盒接入规范-ISMAOverIP分册.doc_第4页
机顶盒接入规范-ISMAOverIP分册.doc_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

机顶盒接入规范Mpeg4/H.264基于IP的VOD和时移系统接入分册 (Version 1.1) ISMA Over IP机顶盒接入规范变 更 记 录变更时间版本变更人变更说明2008-6-20V1.1Caojt增加对GET_PARAMETER接口调用的约束2006-9-30V1.0Jianghs初始化18第 18 页 共 18 页思华科技(上海)有限公司1概述41.1文档组织42接口分类53接口通讯机制的详细描述63.1IP网络接入(DHCP+)63.2EPG访问接口63.3与CDN系统的接口73.4与UServer服务器的点播接口83.4.1DESCRIBE请求83.4.2SETUP请求93.4.3PLAY请求113.4.4PAUSE请求123.4.5PLAY和PAUSE的一些约定133.4.6TEARDOWN请求133.4.7SET_PARAMETER(CLOSE)请求143.4.8OPTIONS请求153.4.9音视频数据传送153.5与UServer服务器的时移接口153.5.1DESCRIBE请求153.5.2SETUP请求163.5.3STB发送GET_PARAMETER获取时移范围163.5.4PLAY请求163.5.5PAUSE请求173.5.6PLAY和PAUSE的一些约定173.5.7TEARDOWN请求173.5.8SET_PARAMETER(CLOSE)请求183.5.9OPTIONS请求183.5.10STB可能收到的信息183.5.11音视频数据传送格式181 概述本文档详细描述了机顶盒与思华ISMAOverIP系统的各个接口,以供不同厂家的机顶盒顺利接入思华ISMAOverIP系统,并保证系统各项功能实现的一致性。1.1 文档组织本文档描述ISMAOverIP机顶盒接入规范,文档的具体组织如下:n 第一章:文档概述。n 第二章:接口分类定义。n 第三章:机顶盒各类接口详细描述。n 附录:介绍与该项目相关的其它重要参考文档。2 接口分类按照机顶盒从开机到提供服务的顺序,涉及的接口为:l IP网络接入(DHCP+)l EPG访问接口l 与CDN系统的接口l 与UServer服务器的点播接口l 与UServer服务器的时移接口3 接口通讯机制的详细描述3.1 IP网络接入(DHCP+)机顶盒开机后使用DHCP扩展协议向网络中的服务器申请IP地址、掩码、网关和DNS服务器地址。DHCP扩展协议如下:机顶盒服务器向服务器发DHCP Discover, 其中Vendor-class-identifier值为“HZCNCSTBV1”向机顶盒发DHCP Offer,提供地址、掩码、网关、DNS服务器地址。其中Vendor-class-identifier值为 “HZCNCAMSV1”向服务器发DHCP Request, 其中Vendor-class-identifier值为“HZCNCSTBV1”向机顶盒发DHCP ACK,其中Vendor-class-identifier值为 “HZCNCAMSV1”表31 DHCP命令交互表注:l 接收数据采用标准端口为68,请求数据发往服务器采用标准端口67;l 支持DHCP协议中的续租机制,到达租约时间一半时,重新执行上述流程的3、4步,以获得对地址的继续使用;异常处理:l 开机无法获取IP地址时,显示“无法获得IP地址,网络故障!”,用户按确认键或显示1.5秒后自动消失并进入DVB状态;l 如果地址续租无法成功,则重新执行地址申请过程,显示信息同上。3.2 EPG访问接口机顶盒主要通过中间件来访问HFC-VOD的EPG,采用的协议主要为HTTP、HTTPS等。当机顶盒在EPG页面中选择影片并进行点播操作时,中间件将传递一个URL给机顶盒播放器,格式如rtsp:/15:5555/2.mp4?token=abcd1234。当机顶盒从EPG进入页面进入时移播放的时候,中间件将传递一个URL给机顶盒播放器,格式如:rtsp:/15:5555/cctv5? token=abcd1234& start-time=20070809120000&stop-time=20070809130000其中start-time表示EPG所显示节目的开始时间,stop-time表示EPG所显示的节目的结束时间。时间的格式为 年月日时分秒 yyyymmddhhmmss在?后为传递的参数,机顶盒必须支持4K字节大小的参数空间。3.3 与CDN系统的接口机顶盒与CDN系统的通讯包括从机顶盒获得点播URL到机顶盒经过1N次重定向后到最后定位到视频服务器的全过程。l 机顶盒获得点播URL,从中获取CDN入口服务器的IP地址、端口,并启动RTSP请求DESCRIBE rtsp:/15:5555/2.mp4?token=abcd1234 RTSP/1.0CSeq: 1Accept: application/sdpUser-Agent: Onewave Player V1.1CDN导向服务器返回的内容重定向指令遵循RTSP规范的“302 REDIRECT”命令,而机顶盒只需要根据命令中Location的URL重新发送DESCRIBE命令即可,这样的循环可能有多次;RTSP/1.0 302 Moved TemporarilyCSeq: 1Server: Onewave-Server/3.0.10Location: rtsp:/16:5555/2.mp4?token=abcd1234CDN系统最终将机顶盒定向到提供服务的视频服务器(下称为UServer服务器),此时UServer服务器将回复“200 OK”命令。具体格式见下一章节。3.4 与UServer服务器的点播接口机顶盒和流媒体服务器通过IP网络完成命令交互和媒体数据的下传。3.4.1 DESCRIBE请求开始点播时机顶盒将首先发送DESCRIBE请求。DESCRIBE rtsp:/:8333/data/movie/1.mp4?token=abcd RTSP/1.0CSeq: 1Accept: application/sdpUser-Agent: QTS (qtver=6.5.1;os=Windows NT 5.2)当机顶盒发送的DESCRIBE请求到UServer服务器后,UServer服务器对此点播进行认证,并给该点播请求需要的资源。如果成功UServer服务器将向机顶盒回复“200 OK”命令。DESCRIBE回应中的SDP遵循rfc2327标准。RTSP/1.0 200 OKServer: UServerCseq: 1x-Accept-Retransmit: our-retransmitx-Accept-Dynamic-Rate: 1Cache-Control: must-revalidateLast-Modified: Fri, 16 Sep 2005 03:46:10 GMTDate: Fri, 16 Sep 2005 03:46:10 GMTExpires: Fri, 16 Sep 2005 03:46:10 GMTContent-Base: rtsp:/:8333/data/movie/1.mp4/Content-Length: 1090Content-Type: application/sdpv=0o=OnewaveUServer 482379710 379429407 IN IP4 s=/data/movie/1.mp4u=http:/e=adminc=IN IP4 t=0 0a=isma-compliance:1,1.0,1a=mpeg4-iod: data:application/mpeg4-iod;base64,AoCAgj8AT/D/7/A4CAgTwABUCYZGF0YTphcHBsaWNhdGlvbi9tcGVnNC1vZC1hdTtiYXNlNjQsQVlDQWdGRUJnSUNBVEFVZkE0Q0FnRVVBQVFBRWdJQ0FMeUFSQVVOakFDbFZpQUFTVGhJRmdJQ0FIUUFBQWJEMEFBQUJ0UWdBQUFFQUFBQUJJQUNHeEFCbkRFQVJJRkdQQm9DQWdBa0JBQUFBQUFBQUFBQT0EgICADQEFAABWAAAAAAAAAAAGgICACQEAAAAAAAAAAAOAgIByAAZARmRhdGE6YXBwbGljYXRpb24vbXBlZzQtYmlmcy1hdTtiYXNlNjQsd0JBU2dUQXFCVzBtRUVIOEFBQUIvQUFBQkVLQ0tDbjQEgICAFQINAAAYAAAAAAAAAAAFgICAAwAAYAaAgIAJAQAAAAAAAAAAa=range:npt=0.000000-6360.560128m=video 0 RTP/AVP 96a=rtpmap:96 MP4V-ES/30000a=control:trackID=0a=mpeg4-esid:1a=fmtp:96profile-level-id=1;config=000001b0f4000001b50800000100000001200086c400670c401120518f;m=audio 0 RTP/AVP 97a=rtpmap:97 mpeg4-generic/48000/2a=control:trackID=1a=mpeg4-esid:3a=fmtp:97 streamtype=5; profile-level-id=15; mode=AAC-hbr; config=1190; SizeLength=13; IndexLength=3; IndexDeltaLength=3; Profile=1;如果创建源失败,服务器将返回相应错误代码。错误代码的格式见RTSP协议标准文档:RFC2326。3.4.2 SETUP请求STB向Server发送SETUP请求要求在点播中添加一个音频或视频流,这些流通过trackID来标识。SETUP rtsp:/:8333/data/movie/1.mp4/trackID=0 RTSP/1.0CSeq: 2Transport: RTP/AVP;unicast;client_port=6970-6971User-Agent: QTS (qtver=6.5.1;os=Windows NT 5.2)如果添加成功Server将向STB回复“200 OK”。RTSP/1.0 200 OKServer: UServerCseq: 2Session: 91972680469864186Cache-Control: no-cacheTransport: RTP/AVP;unicast;client_port=6970-6971;server_port=10002-10003;ssrc=6B8B4567注意:从RTSP SETUP命令起(SETUP、PLAY、OPTIONS、TEARDOWN等),RTSP URL中将不携带任何参数,如token等,URL到.mp4扩展名结束,后面从“?”符号开始的内容全部去掉。这里的关键信息是trackID,告知具体需要建立哪个媒体流。Transport字段用RTP/AVP表示用UDP方式传输RTP数据包,用RTP/AVP/TCP表示用TCP方式传输数据包。请求中Transport字段格式如下:Transport:RTP/AVP/UDP;unicast;client_port=5576-5577要求建立UDP的RTP流,客户端的Rtp和Rtcp端口为5576和5577。Transport: RTP/AVP/TCP;unicast; interleaved=0-1要求建立TCP的RTP流,Rtp和Rtcp对应的Interleave ID为0和1。回应中Transport字段格式如下:Transport:RTP/AVP/UDP;unicast;client_port=5576-5577;server_port=8000-8001;ssrc=6b8b4567已建立UDP的RTP流,服务器端的Rtp和Rtcp端口为8000和8001,该流的ssrc为0x6b8b4567。Transport:RTP/AVP/TCP;unicast;interleaved=0-1;ssrc=327b23c6已建立TCP的RTP流,Rtp和Rtcp对应的Interleave ID为0和1,该流的ssrc为0x327b23c6。UServer可能发送的错误:1, 如果没有带trackID,回应459(Aggregate operation not allowed)。2,无法找到对应的track或源错误,回应404(Not Found)。3.4.3 PLAY请求STB通过PLAY请求要求服务器发送从某个播放时间开始的媒体数据。PLAY rtsp:/:8333/data/movie/1.mp4 RTSP/1.0CSeq: 4Range: npt=0.000000-6360.560000x-prebuffer: maxtime=2.000000Session: 91972680469864186User-Agent: QTS (qtver=6.5.1;os=Windows NT 5.2)xprebuffer参数表示机顶盒端可以缓存的媒体流数据的时长。服务器端将在网络允许条件下超前发送该时长的数据,该功能可以加快机顶盒启动时数据缓存的速度,又称快启动。该时长应该根据机顶盒的缓存能力大小给出。Range参数中可以用npt格式指定播放范围。具体格式见RTSP(RFC2326)。在暂停后的继续时可以没有Range参数,服务器将接着暂停点发包。Scale参数用于指定播放的倍率,正值表示快进、负值表示快退。在快进快退模式下服务器将只发送视频数据的关键帧。并要求机顶盒收到帧以后立即进行展现,不需要进行同步处理。如果Server同意播放,将向STB回复“200 OK”。在回复的Range参数中给出实际的播放范围(可能和请求的点略有差别)。在回复的Scale参数中给出实际的播放倍率。RTSP/1.0 200 OKServer: UServerCseq: 4Session: 91972680469864186Range: npt=0.000000-6360.560059RTP-Info: url=trackID=0;seq=9158;rtptime=1465227709,url=trackID=1;seq=14623;rtptime=1465227709RTP-Info格式参照RFC2326标准。其中每个track的seq表示该track下一个rtp数据包的sequence number,rtptime表示该track与Range中开始时间同步的rtp timestamp,可以提取用于音视频同步。此时机顶盒将开始接收IPQAM下传的点播视频流,具体参见下一章节。3.4.4 PAUSE请求STB发送PAUSE请求要求暂停播放。PAUSE rtsp:/:8333/data/movie/1.mp4 RTSP/1.0CSeq:7Session: 91972680469864186User-Agent: QTS (qtver=6.5.1;os=Windows NT 5.2)如果Server允许该请求将向STB回复“200 OK”。RTSP/1.0 200 OKServer: UServerCseq:7Session: 919726804698641863.4.5 PLAY和PAUSE的一些约定通过PLAY和PAUSE请求的组合,可以完成定点播放、暂停继续、播放速度调整多项功能。这里需要对部分不合理的组合进行限制。n 在系统正处于播放状态时,应当先发送PAUSE请求暂停播放后,发送PLAY请求。3.4.6 TEARDOWN请求STB发送TEARDOWN请求要求释放所有资源并退出。TEARDOWN rtsp:/:8333/data/movie/1.mp4 RTSP/1.0CSeq: 14Session: 91972680469864186User-Agent: QTS (qtver=6.5.1;os=Windows NT 5.2)Server端将回复“200 OK”,并释放资源退出。RTSP/1.0 200 OKServer: UServerCseq: 14Session: 91972680469864186Connection: CloseSTB可以发送TEARDOWN请求要求去除某个流(可用于多音轨的音轨切换)。TEARDOWN rtsp:/:8333/data/movie/1.mp4/trackID=0 RTSP/1.0CSeq: 14Session: 91972680469864186User-Agent: QTS (qtver=6.5.1;os=Windows NT 5.2)3.4.7 SET_PARAMETER(CLOSE)请求在播放过程中,服务器通知控制通道将关闭,强制STB退出时,服务器将发送SET_PARAMETER(CLOSE)请求。在x-Reason中指明退出原因。SET_PARAMETER rtsp:/22:2048/temp/rings.mp4 RTSP/1.0x-Info:CLOSEx-Reason: ENDSession: 719885386CSeq: 10这里的CSeq和STB端的发送请求的CSeq分别累进。退出原因主要有:退出原因x-Reason管理员踢除ADMIN KICK OFF播放结束END播放源错误SOURCE ERRBEGINSESSION ERRIP DENYLOGIN ERRLOGIN FAILTRANSFERREQUIRE ERRAUTH FAIL信道不足NO RESOURCEBEGINPROXYSESSION ERRPROXY FAIL启动超时START TIMEOUT暂停超时PAUSE TIMEOUT退出超时EXIT TIMEOUT保活超时NOT ALIVE表33 退出原因表3.4.8 OPTIONS请求STB通过OPTIONS请求向服务器周期汇报STB的存活状态。一般汇报周期为30秒。如果在限定时间(如90秒)内STB未发送该请求,服务器端将认为STB已经死亡,而将其踢除。OPTIONS rtsp:/22:2048/temp/rings.mp4 RTSP/1.0Session: 719885386CSeq: 10Server端将应答:RTSP/1.0 200 OKServer:UServerSession: 719885386CSeq: 103.4.9 音视频数据传送Userver音视频数据传送遵循ISMA规范。将音视频数据分别封装在RTP数据包中进行传送。具体格式见RFC3550。对于Over UDP的传送,直接将RTP数据包封装在UDP包中进行发送。音视频使用不同的目的端口(不同的通道)。对于Over TCP的传送,将RTP数据包用RTSP embedded binarydata的封装格式插入到RTSP的TCP链路上。音视频使用不同的interleave_id(不同的通道)。具体封装格式见RFC2326(10.12小节)。3.5 与UServer服务器的时移接口3.5.1 DESCRIBE请求同3.4.1。1. a=range参数格式sdp中的“a=range:”参数格式为:a=range:clock =20051108T141020.25Z-20051108T144020.25Z表示是一个时移连接,时移的范围为20051108T141020.25Z20051108T144020.25Z3.5.2 SETUP请求同3.4.2。3.5.3 STB发送GET_PARAMETER获取时移范围GET_PARAMETER rtsp:/:8333/live_1 RTSP/1.0CSeq: 11Session: 91972680469864186x-Timeshift_Range:0User-Agent: QTS (qtver=6.5.1;os=Windows NT 5.2)RTSP/1.0 200 OKServer: UServerCseq: 11Session: 91972680469864186x-Timeshift_Range: clock=20051108T141020.25Z20051108T144020.25Zx-Timeshift_Current: clock=20051108T143025.25Z1. 对于指定CLOCK的PLAY请求,在请求前STB应该通过get_parameter获取当前时移范围。2. 另外STB可以通过发送get_parameter获取当前时移范围,来绘制进度条。3. 可以通过x-Timeshift_Current 值获得当前播放的时移内容的时间注:不能频繁调用get_parameter命令,建议在PLAY,以及绘制进度条的时候调用此接口来获取时移范围信息。3.5.4 PLAY请求同3.4.3。1 PLAY请求的Range参数格式如下:l Range:clock=20051108T141020.25Z表示要求从该时刻点开始进行时移播放。机顶盒从EPG返回的URL中拿到时移节目的范围,从时移范围之内设置开始播放的时间点。l Range:clock=20051108T141020.25Z20051108T1415

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论