您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 广告经营 > 流媒体协议-课题报告
流媒体协议内容介绍:1、Adhoc网络技术概述2、Adhoc网络的体系结构3、AdHoc网络协议4、AdHoc网络的路由协议5、Adhoc的服务质量和安全问题实时流媒体协议:RTSP一般作为媒体信道的远程控制使用,不参与媒体数据传输,也不做媒体的解析.实时协议:RTP/RTCPRTP:按照RTP分组的方式传输媒体数据,协议规定了排序/丢包检查/以及媒体重建信息。媒体特定信息说明,包括其重建、解释有应用文档规定。RTCP:作为质量控制,成员控制等功能。会话描述协议:SDP在会话级别、媒体级别来描述传输媒体的具体信息,不参与传输媒体净荷应用文档规定了特定的媒体的处理信息IPTV--流媒体协议族协议栈层次1:RTP/RTCP推荐在UDP上承载,RTSP推荐在TCP上承载;2:应用文档作为承载在RTP上,负责对具体的媒体进行解释;3:SDP承载RTSP上,负责媒体会话的会话级、媒体级解释。RTSPURL提供了基于网页的发布链接;RTSP消息结构消息头部和消息体;RTSP方法为客户和服务器提供了交互的指令;RTSP状态客户状态和服务器状态;RTSP——媒体控制信道RTSP是基于文本的协议,语法和HTTP类似;最大的区别是一个为有状态的、一个是无状态的。URL举例:rtsp_URL=(rtsp:|rtspu:)//host[:port][abs_path]其中rtsp发布表示承载在tcp上,rtspu表示承载在udp上。发布方式:1:直接承载在网页上AHREF=“rtsp://192.168.0.124:554/video/risk.mp4冒险岛/A请求方式:先需要做媒体描述请求DESCRIBErtsp://192.168.0.124:554/video/risk.mp4CSeq:12:以sdp方式承载在网页上AHREF=“请求方式:直接通过http协议请求SDP类型信息GET/video/risk.sdpHTTP/1.1Host:消息结构举例消息头部:C-A:SETUPrtsp://audio.example.com/twister/audio.enRTSP/1.0CSeq:1Transport:RTP/AVP/UDP;unicast;client_port=3056-3057A-C:RTSP/1.0200OKCSeq:1Session:12345678Transport:RTP/AVP/UDP;unicast;client_port=3056-3057;server_port=5000-50011:statusline请求Statusline:CMD资源协议版本号响应Statusline:协议版本号响应代码响应描述2:消息头部结构语法RFC889规定,类似HTTP/SIP等协议message-header=field-name:[field-value]其语义有协议自身规定,一次请求或者响应可以有多个头结构。包体结构:(在包头和包体之间有一个空行—仅仅含有回车换行)RTSP包体一般为SDP媒体会话信息,RTSP不做包体的解析,SDP包体由SDP协议解析。列如:C-M:DESCRIBErtsp://server.example.com/demo/soundRTSP/1.0CSeq:1Accept:application/sdpM-C:RTSP/1.02001OKContent-type:application/sdpContent-Length:44v=0o=-28908445262890842807INIP4192.16.24.202s=RTSPSessioni=Seeabovet=00m=audio0RTP/AVP0RTSP方法列表methoddirectionobjectrequirementDESCRIBEC-SP,SrecommendedANNOUNCEC-S,S-CP,SoptionalGET_PARAMETERC-S,S-CP,SoptionalOPTIONSC-S,S-CP,Srequired(S-C:optional)PAUSEC-SP,SrecommendedPLAYC-SP,SrequiredRECORDC-SP,SoptionalREDIRECTS-CP,SoptionalSETUPC-SSrequiredSET_PARAMETERC-S,S-CP,SoptionalTEARDOWNC-SP,SrequiredRTSP方法——rtsp交互指令A:option方法,这是一个双向的方法,两端请求对方的能力集。OPTIONS*RTSP/1.0SEQ:1SESSION:12345678B:DESC方法,用在客户端,向媒体源请求媒体发布信息。DESCRIBErtsp://server.example.com/demo/soundRTSP/1.0CSeq:1SESSION:12345678Accept:application/sdpC:setup方法,用在客户端,建立媒体传输信道。该过程中,建立RTP的信道。SETUPrtsp://audio.example.com/twister/audio.enRTSP/1.0CSeq:1Transport:RTP/AVP/UDP;unicast;client_port=3056-3057D:PLAY/PAUSE/TEARDOWN方法,客户端使用,控制媒体信息的传输动作。PLAYrtsp://live.example.com/concert/audioRTSP/1.0CSeq:3Session:12345678PAUSErtsp://live.example.com/concert/audioRTSP/1.0CSeq:3Session:12345678TEARDOWNrtsp://live.example.com/concert/audioRTSP/1.0CSeq:3Session:12345678E:GETPARA一般作为心跳消息使用GET_PARAMETERrtsp://live.example.com/concert/audioRTSP/1.0CSeq:3Session:12345678注释:在一次会话从建立第一次请求方法开始,直到TEARDOWN结束,会话ID标示该次会话。再次重新启动会话,会话ID可能改变。如果存在多方通话,在一个会议中,可以采用会议ID来标示会议。VOD特殊方法的实现对于RTSP协议,如果有多个媒体逻辑信道,其中setup方法需要对每个逻辑信道进行参数设置。其他方法均统一控制使用。1:SEEK、播放时间控制的实现Rangeheader这个RTSP头,指定了播放的范围,不指定则默认从媒体的头开始,直至结尾。这个头信息在PLAY方法中携带。故此,在播放过程中,进行拖动操作,需要首先PAUSE这个会话。该范围一个使用ntp时间表示。C-S:PLAYrtsp://audio.example.com/audioRTSP/1.0CSeq:836Session:12345678Range:npt=20-25//从20秒,播放到25秒Range:npt=30-//从30秒,播放到媒体结束2:快进、快退、后退方法实现Scaleheader这个RTSP头,指定了相对于正常播放速率的比率。该头部参数,可以由RecordPlay方法携带;PAUSE这个会话。然后使用定义的Sacle值来设定Play。PLAYrtsp://audio.example.com/audioRTSP/1.0CSeq:836Session:12345678Scale:2//两倍速率快进Scale:0.5//1/2倍速率慢进Scale:-1//后退Scale:-2//两倍速度快退Scale:-0.5//半倍速度快退Scale和Speed的区别:Scale——不改变传输的比特率,采用丢弃数据的方式传输,使感受加快;有传输方向。Speed——改变传输的比特率,改变了媒体信道对带宽的要求;没有方向。3:单信道模式在仅仅需要单信道的场合,可以仅仅SETUP一次,只建立需要的信息的传输信道。例如:如下的媒体描述:v=0o=-28908445262890842807INIP4192.16.24.202s=RTSPSessionm=audio0RTP/AVP0a=control:rtsp://audio.example.com/twister/audio.enm=video0RTP/AVP31a=control:rtsp://video.example.com/twister/video有两个媒体轨道组成一个媒体源,在只需要一个媒体轨道的时候,我们可以单独的建立一个媒体的信道。RTSP状态机对于到快退快进等,也属于PLAYING状态。客户机:RTP用以传送实时数据。提供净荷类型指示(数据类型和编码方式),数据分组序号、数据时戳、数据源标示。RTCP用以传送实时信号传递的质量参数,提供QOS监视机制;以及传输会议通讯中的参会者信息。应用文档该文档定义一组净荷类型码及其净荷格式、媒体编码的映射关系净荷格式规范具体定义每一种净荷如何在RTP协议中传输。RTP/RTCP——媒体信道RTP数据包是二进制格式,包括RTP头和净荷组成;RTCP规定了多种报告格式,用于质量、成员、会话控制的依据。RTP分组包括:RTP头部、RTP扩展头部、RTP净荷组成举例如图:RTP分组1:V=2版本号(2BIT)2:P填充指示位(1BIT),P=1——净荷有填充字节,最后一个字节表示填充字节的数目;P=0——无3:X扩展指示位;4:CC分信源数目指示;5:M标志位由应用文档解释说明;5:M标志位由应用文档解释说明;6:PT净荷类型映射了一种净荷格式(媒体编码),应用自身确定,不能解释得忽略;7:序列号:16比特,初始值为随即数,为接受方应用提供了丢包检测、恢复分组顺序的机制8:rtptimestp32比特指媒体采样时间,具体解释有净荷文档规范规定,例如:mpeg4为显示时间;不一定是单调递增:例如mpeg的运动预测时包的顺序是编解码时间。9:同信源标志:标志媒体源10:分信源标志媒体组成的各个信号源标识。RTP头部1:MPEG-4对象层2:RTP净荷文档规范2:对rtphead的规范3:对净荷的规范RTP净荷规范文档对于不同的媒体类型,具体意义又净荷文档规范来解释。例如mp4overrtp,rfc规范了两种方式:基于对象的传输和基于es的传输.MPEG4分层模型1:RFC3016的规定将MPEG4-音视频码流直接映射到RTP净荷中,由应用来保证系统同步;2:RFC3640的规定将MPEG4基本码流直接映射到RTP净荷中,同样由应用来保证系统同步;3:将MPEG4SL分组码流映射到RTP净荷中,同步由MPEG4系统同步;4:将MPEG4传送层经过FLEXmux工具进行复用处理,映射到RTP净荷中;ISMA1.0规范采用1,2两种方法进行净荷规范文档MP4RTP净荷规范文档1:自身不参与发送,在其他协议中作为包体进行发送;2:目的:告知会话存在;提供会话所需要的信息;3:描述包括:会话级:会话名和目的;会话缉获的时间区段构成会话的媒体传输层信息(地址、端口、格式)媒体级:媒体类型(音视频等)传送协议(rtp/udp/ip,h.320)媒体格式(h.261/264,mpegxx,wmv)媒体地址和端口5:协议格式文本级,UTF-8编码:type=valueSDP协议会话级别:1:会话源描述o=usernamesessionidversionnettypeaddrtypeaddress给出会话的发起者以及会话标识、会话版本号;例如:o=mhandley2890844526289084280
本文标题:流媒体协议-课题报告
链接地址:https://www.777doc.com/doc-1481008 .html