CN101646074B - 视频数据的实时传输方法 - Google Patents
视频数据的实时传输方法 Download PDFInfo
- Publication number
- CN101646074B CN101646074B CN2008101444818A CN200810144481A CN101646074B CN 101646074 B CN101646074 B CN 101646074B CN 2008101444818 A CN2008101444818 A CN 2008101444818A CN 200810144481 A CN200810144481 A CN 200810144481A CN 101646074 B CN101646074 B CN 101646074B
- Authority
- CN
- China
- Prior art keywords
- reference frame
- rtp packet
- rtp
- data
- frame information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及媒体数据传输方法,特别一种视频数据的实时传输方法。本发明方法,构造RTP数据包时,判断当前RTP数据包是否携带参考帧数据,如果是,则在所述RTP数据包的头域中添加有效的参考帧信息,所述有效的参考帧信息用于表示该RTP数据包中携带了参考帧数据;当目的移动终端当前所处网络服务带宽小于服务带宽门限时,媒体服务器或者中间网络传输设备仅向下发送携带有效参考帧信息的RTP数据包。本发明技术方案使得节目能够正常播放的最低带宽需求得以有效降低,从而将减少媒体数据在传输中随机地丢失,解决视频播放马赛克与花屏的问题。
Description
技术领域
本发明涉及媒体数据传输方法,特别涉及H.264视频数据的实时传输方法。
背景技术
随着计算机互联网(Internet)和移动通信网络的飞速发展,流媒体技术的应用越来越广泛,从网络电视、网络电影到网络远程教学和安全监控系统以及在线提供媒体服务的新闻或媒体网站都应用了流媒体技术。流媒体是以流式(Streaming)传输音视频数据,流式传输又分为顺序流(ProgressiveStreaming)与实时流(Realtime Streaming)两种传输方式,其中实时流式传输特别适合现场事件,因而在网络电视和安全监控系统业务中广泛应用。
随着第三代通信系统(3rd Generation,简称“3G”)的研究深入和基于网际协议(Internet Protocol,简称“IP”)的网络迅速发展,视频通信已经成为通信的主要业务之一。双方或多方的视频通信业务,如可视电话、视频会议、移动终端视频服务等,对媒体数据传输的服务质量提出更高的要求,不仅要求数据传输实时性更好,同时也要求数据压缩编码效率更高。
鉴于媒体通信的需求现状,国际电信联盟标准部(InternationalTelecommunication Union Telecommunication Standardization Sector,简称“ITU-T”)继制定了H.261、H.263、H263+等视频压缩标准之后,于2003年正式发布了H.264标准。这是ITU-T和国际标准化组织(InternationalStandardization Organization,简称“ISO”)的运动专家组(Moving Picture ExpertsGroup,简称“MPEG”)一起联合制定的适应新阶段网络媒体传输及通讯需求的高效压缩编码标准。它同时也是MPEG-4第10部分的主要内容。
H.264能够更加有效地提高视频编码效率和对网络的适配性,因此,H.264已经逐渐成为当前多媒体通信中的主流标准。
如前所述多媒体通信不仅要求高效的媒体压缩编码标准算法,同时也要求媒体数据传输的实时性。当前多媒体数据流均采用实时传输协议(Real-timeTransport Protocol,简称“RTP”)及其控制协议(Real-time Transport ControlProtocol,简称“RTCP”)。其中,RTP是针对Internet上多媒体数据流动的一个传输协议,由互联网工程任务组(Internet Engineering Task Force,简称“IETF”)发布。IETF针对H.264标准制定了RTP净载荷(Payload)的打包方法,即RFC3984:RTP Payload for H.264 Video。该标准目前是H.264视频流在IP网络上传输的主要标准。
H.264和以往其他视频压缩编码协议不同的关键地方在于H.264定义了一个新层面,称为网络抽象层(Network Abstract Layer,简称“NAL”)。而RFC3984规范所提出的RTP承载H.264的NAL层数据的方法是目前仅有的技术方案,该方案在RTP协议(RFC3550)基础上,将NAL层数据封装在RTP静载荷中进行承载,将视频码流按照定义的规则和结构,分割成一连串的NAL数据单元(NAL Units,简称“NALU”)。在RFC3984中详细定义了RTP净荷对于NALU的封装格式。
首先介绍RFC3550中对RTP头的定义,如图1所示,其中:
version(V):版本信息,目前版本为2;
padding(P):填充标识,P如果置位,则表示数据包末尾包含一个或多个填充字节;
extension(X):扩展标识,X如果置位,则表示RTP头后添加一个可变长的扩展;
CSRC count(CC):贡献源资源数目,标明RTP头中附带的CSRC标识符个数;
marker(M):标记域,该标记的意义对于不同的有效负荷类型有不同的意义;
payload type(PT):载荷类型,由RTP会话双方协商约定;
sequence number:RTP包序号;
Timestamp:RTP时戳;
SSRC:同步资源标识域,由RTP会话双方约定采用的32位标识;
CSRC list:贡献源资源列表,可根据需要为0-15项,每项各占32位。
RFC3984中对Single NAL unit载荷格式的定义,如图2所示。
一个Single NAL unit封装的RTP包,如图3所示。
目前,安装在手机或公共汽车等可移动设备上的媒体播放终端通过网络侧设备接收上述H.264视频编码格式的视频节目时,若网络带宽充足,网络侧设备可以正常工作,如图4所示。但媒体播放终端由于受到移动服务网络带宽和覆盖状况的特殊限制,不能总是获得一个稳定充足的节目服务带宽,例如在网络覆盖不理想的区域或高楼大厦过于密集的地方,移动网络将不能提供理想的网络服务带宽,此时将导致视频数据在传输中出现随机丢失,节目播放出现马赛克或花屏的现象,从而导致观看效果恶化,服务质量降低,如图5所示。
因此,需要提出一种保证服务质量的H.264媒体数据实时传输的方法。
发明内容
本发明所要解决的技术问题是,提供一种视频数据的实时传输方法,以提高RTP协议承载H.264多媒体视频数据的服务质量。
为解决上述问题,本发明公开了一种视频数据的实时传输方法,包括:
构造RTP数据包时,判断当前RTP数据包是否携带参考帧数据,如果是,则在所述RTP数据包的头域中添加有效的参考帧信息,所述有效的参考帧信息用于表示该RTP数据包中携带了参考帧数据;
当目的移动终端当前所处网络服务带宽小于服务带宽门限时,媒体服务器或者中间网络传输设备仅向下发送携带有效参考帧信息的RTP数据包。
进一步地,上述方法中,所述媒体服务器判断所述移动终端当前所处网络服务带宽小于服务带宽门限时,将携带有效参考帧信息的RTP数据包直接发送给所述移动终端或者通过所述中间网络传输设备转发给所述移动终端。
进一步地,上述方法中,所述中间网络传输设备收到所述RTP数据包后,判断如果所述移动终端当前所处网络服务带宽小于服务带宽门限时,将携带有效参考帧信息的RTP数据包发送到所述移动终端。
其中,所述有效的参考帧信息还包含了表示所述RTP数据包携带的是否为完整的参考帧数据的信息。
当所述有效的参考帧信息包含了表示RTP数据包携带的不是完整的参考帧数据时,所述有效的参考帧信息还包含了表示所述RTP数据包携带的是头部、中部或者尾部参考帧数据的信息。
进一步地,上述方法中,若判断当前RTP数据包中没有携带参考帧数据时,在所述RTP数据包的头域中添加无效的参考帧信息,所述无效的参考帧信息用于表示该RTP数据包没有携带参考帧数据。
其中,当移动终端当前所处网络服务带宽小于服务带宽门限时,媒体服务器或者中间网络传输设备将所述携带无效参考帧信息的RTP数据包丢弃或者缓存。
所述参考帧信息添加在所述RTP数据包头域的扩展字段。
本发明技术方案使得节目能够正常播放的最低带宽需求得以有效降低,从而将减少媒体数据在传输中随机地丢失,解决视频播放马赛克与花屏的问题。
附图说明
图1是RFC3550中定义的RTP标准头域的示意图;
图2是RFC3984中定义的Single NAL unit载荷格式示意图;
图3是根据RFC3984中定义的Single NAL unit RTP封装格式示意图;
图4是移动网络服务带宽充足,移动终端正常服务的示意图;
图5是目前通常情况下,移动网络服务带宽不足,服务质量降低的示意图;
图6是本实施例中一个包含有完整H.264参考帧的RTP扩展域格式;
图7是本实施例中一个包含有H.264参考帧头部的RTP扩展域格式。
具体实施方式
本发明的主要构思是,在RTP扩展头域中增加H.264的参考帧信息,这样,当移动终端所处地域网络服务带宽不理想时,媒体服务器或者中间网络传输设备(如网关、路由器等)根据RTP包扩展头域中的H.264参考帧信息,仅对包含有H.264参考帧的媒体数据进行发送或传输,这样可以保证重要数据在传输过程中的优先性,即优先保证对H.264参考帧数据的传输,从而为提高RTP协议承载H.264多媒体视频数据的服务质量提供高效可靠的依据。其中,参考帧是指包含以静态图片、形状等图像关键信息为主的一种完整可单独解码的的帧,参考帧可作为其他预测类型帧的参考。
下面结合附图及具体实施方式对本发明技术方案作进一步详细说明。
在H.264多媒体数据实时传输中,媒体服务器与中间网络传输设备事先协商RTP头域中用于描述H.264参考帧信息的扩展字段的定义,本实施例中,H.264 RTP头域中扩展字段的定义如表1所示,具体传输过程为:
步骤101:在对RTP视频数据进行打包的过程中,构造RTP数据包头域,其中对RTP数据包头域中扩展标识位extension(X)置位,即表示在此RTP头域后添加有一个RTP头域的扩展字段;
步骤102:判断该RTP数据包中携带部分或者全部参考帧数据后,按照表1中的格式生成RTP头域的扩展字段,该扩展字段用于描述RTP数据包中参考帧信息,即该RTP数据包中是否存在参考帧数据,当该RTP数据包中存在有参考帧数据时,该扩展字段进一步表明该RTP数据包中参考帧数据的具体信息,如位置以及参考帧数据是否完整等;
表1为H.264 RTP数据包头域中扩展字段语法表
Syntax | No.ofbits | Mnemonic |
rtp extension(){defined_by_profilelengthif(defined_by_profile==0x5A58 && length=1){header extension()}else{unknown extention()}header extension(){idlenI_frame_indicatorReserved} | 161688313 | bslbfuimsbfuimsbfuimsbfuimsbfuimsbf |
其中,defined_by_profile,用于表示本扩展字段是否采用表1所定义的方式,在本实施例中,采用表1所定义的方式时,defined_by_profile固定为0x5A58;
Length,用于表示header extension(RTP头域扩展)的长度,本实施例中header extension的长度为1个32位双字;
Id,用于表明本扩展字段的标识,本实施例中,Id值为3;
Len,用于表明随后的H.264视频标示扩展长度,即I_frame_indicator和Reserved的长度总和,本实施例中Len值为2;
I_frame_indicator:用于表明该RTP数据包中是否有参考帧数据,所述参考帧即为I帧(I frame,关键帧),当RTP数据包中有参考帧数据时,I_frame_indicator还用于表明该RTP数据包中所包含的参考帧数据的具体信息,如位置以及参考帧数据是否完整等;在本实施例中,I_frame_indicator为0x0表示当前RTP包不含参考帧数据;0x1表示当前RTP包为参考帧首数据包;0x2表示当前RTP包为参考帧中间数据包;0x4表示当前RTP包为参考帧尾数据包;0x7表示当前RTP包为完整参考帧。
Reserved:用于表示保留字段,本实施例中填充为0。
步骤103:根据已构造的RTP数据包头域,以及H.264 RTP载荷,生成RTP数据包,媒体服务器将该数据包括发送到中间网络传输设备。
中间网络传输设备收到上述RTP数据包,进行如下处理:
步骤201:中间网络传输设备判断移动终端当前所处地域网络服务带宽是否理想,即移动终端当前所处地域网络服务带宽是否小于服务带宽门限(可以是正常传输时所需要的最小带宽),如果是,进入步骤202,否则将收到的数据包发送到移动终端;
步骤202:中间网络传输设备从收到的RTP数据包头域的扩展字段中读取参考帧信息,若参考帧信息有效则表明该RTP数据包中存在部分或者全部参考帧数据,中间网络传输设备将该RTP数据包发送到移动终端,若参考帧信息无效表明该RTP数据包未包括任何参考帧数据,中间网络传输设备将该RTP数据包丢弃或者缓存。
上述流程中,生成的RTP数据包中可以携带整个参考帧数据,也可以仅携带参考帧开头部分;当RTP数据包中包含完整的H.264视频参考帧的数据时,视频数据包头域中扩展字段的内容如图4所示;当RTP数据包中仅包含H.264视频参考帧的开头部分时,RTP数据包头域中扩展字段内容如图5所示。
本实施例中,基于或参考RFC3550构造RTP数据包头域,在其它实施例中,也可以基于或者参考其它规范,如RFC3984,构造RTP数据包头域。
在上述实施例中,生成RTP数据包后,媒体服务器先判断移动终端当前所处网络服务带宽是否小于服务带宽门限,如果是,则仅将携带有效参考帧信息的RTP数据包通过中间网络传输设备发送到移动终端;
当然在其它实施例中,媒体服务器也可以省略中间网络传输设备转发RTP数据包的过程,此时,生成RTP数据包后,若媒体服务器判断移动终端当前所处网络服务带宽小于服务带宽门限,则媒体服务器仅将携带有效参考帧信息的RTP数据包直接发送到移动终端。
从上述实施例可以看出,本发明技术方案在带宽服务不理想的情况下,保证重要数据在传输过程中的优先性,即优先保证对H.264参考帧数据的传输,从而为提高RTP协议承载H.264多媒体视频数据的服务质量提供高效可靠的依据。
本发明还可有其他多种实例中,在不背离本发明的精神及其实质的情况下,本领域的技术人员可根据本发明作出相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围之内。
Claims (6)
1.一种视频数据的实时传输方法,其特征在于,
构造实时传输协议RTP数据包时,判断当前RTP数据包是否携带参考帧数据,如果是,则在所述RTP数据包的头域中添加有效的参考帧信息,所述有效的参考帧信息用于表示该RTP数据包中携带了参考帧数据;
当目的移动终端当前所处网络服务带宽小于服务带宽门限时,媒体服务器或者中间网络传输设备仅向下发送携带有效参考帧信息的RTP数据包;
若判断当前RTP数据包中没有携带参考帧数据时,在所述RTP数据包的头域中添加无效的参考帧信息,所述无效的参考帧信息用于表示该RTP数据包没有携带参考帧数据;
当移动终端当前所处网络服务带宽小于服务带宽门限时,媒体服务器或者中间网络传输设备将所述携带无效参考帧信息的RTP数据包丢弃或者缓存。
2.如权利要求1所述的方法,其特征在于,
所述媒体服务器判断所述移动终端当前所处网络服务带宽小于服务带宽门限时,将携带有效参考帧信息的RTP数据包直接发送给所述移动终端或者通过所述中间网络传输设备转发给所述移动终端。
3.如权利要求1所述的方法,其特征在于,
所述中间网络传输设备收到所述RTP数据包后,判断如果所述移动终端当前所处网络服务带宽小于服务带宽门限时,将携带有效参考帧信息的RTP数据包发送到所述移动终端。
4.如权利要求2或3所述的方法,其特征在于,
所述有效的参考帧信息还包含了表示所述RTP数据包携带的是否为完整的参考帧数据的信息。
5.如权利要求4所述的方法,其特征在于,
当所述有效的参考帧信息包含了表示RTP数据包携带的不是完整的参考帧数据的信息时,所述有效的参考帧信息还包含了表示所述RTP数据包携带的是头部、中部或者尾部参考帧数据的信息。
6.如权利要求1、2、3中任一权利要求所述的方法,其特征在于,
所述参考帧信息添加在所述RTP数据包头域的扩展字段。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101444818A CN101646074B (zh) | 2008-08-05 | 2008-08-05 | 视频数据的实时传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101444818A CN101646074B (zh) | 2008-08-05 | 2008-08-05 | 视频数据的实时传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101646074A CN101646074A (zh) | 2010-02-10 |
CN101646074B true CN101646074B (zh) | 2011-07-13 |
Family
ID=41657755
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008101444818A Expired - Fee Related CN101646074B (zh) | 2008-08-05 | 2008-08-05 | 视频数据的实时传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101646074B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102137096A (zh) * | 2011-01-13 | 2011-07-27 | 华为技术有限公司 | 数据传输的方法和设备 |
CN103312441B (zh) * | 2012-03-15 | 2017-11-17 | 华为技术有限公司 | 数据包传输方法及系统、发送端设备与接收端设备 |
CN106303537B (zh) * | 2016-08-30 | 2019-05-10 | 北京容联易通信息技术有限公司 | 一种openh264多码流传输方法 |
CN107872422B (zh) * | 2016-09-23 | 2020-01-10 | 杭州海康威视数字技术股份有限公司 | 一种数据传输方法、装置及电子设备 |
CN110351576B (zh) * | 2019-07-15 | 2021-11-05 | 华瑞新智科技(北京)有限公司 | 一种在工业场景下进行实时视频流快速显示的方法及其系统 |
CN110933513A (zh) * | 2019-11-18 | 2020-03-27 | 维沃移动通信有限公司 | 一种音视频数据传输方法及装置 |
CN112911650A (zh) * | 2021-03-28 | 2021-06-04 | 高小翎 | 移动高清视频智能双向探测带宽控制系统 |
WO2023173293A1 (zh) * | 2022-03-15 | 2023-09-21 | Oppo广东移动通信有限公司 | 无线通信方法及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1468001A (zh) * | 2002-06-27 | 2004-01-14 | 上海汉唐科技有限公司 | 基于因特网的媒体流自适应传输方法 |
CN101009686A (zh) * | 2006-01-23 | 2007-08-01 | 中兴通讯股份有限公司 | 一种流媒体播放方法 |
CN101047476A (zh) * | 2007-03-19 | 2007-10-03 | 华为技术有限公司 | 一种选择调制方式的方法和装置 |
CN101123729A (zh) * | 2006-08-10 | 2008-02-13 | 国际商业机器公司 | 用于传输信号流的方法 |
CN101222616A (zh) * | 2008-01-22 | 2008-07-16 | 中兴通讯股份有限公司 | 点播服务中的mpeg传送流的传输处理方法 |
-
2008
- 2008-08-05 CN CN2008101444818A patent/CN101646074B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1468001A (zh) * | 2002-06-27 | 2004-01-14 | 上海汉唐科技有限公司 | 基于因特网的媒体流自适应传输方法 |
CN101009686A (zh) * | 2006-01-23 | 2007-08-01 | 中兴通讯股份有限公司 | 一种流媒体播放方法 |
CN101123729A (zh) * | 2006-08-10 | 2008-02-13 | 国际商业机器公司 | 用于传输信号流的方法 |
CN101047476A (zh) * | 2007-03-19 | 2007-10-03 | 华为技术有限公司 | 一种选择调制方式的方法和装置 |
CN101222616A (zh) * | 2008-01-22 | 2008-07-16 | 中兴通讯股份有限公司 | 点播服务中的mpeg传送流的传输处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101646074A (zh) | 2010-02-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101646074B (zh) | 视频数据的实时传输方法 | |
KR102000666B1 (ko) | 미디어 데이터를 송수신하기 위한 인터페이스 장치 및 방법 | |
KR101484843B1 (ko) | 멀티미디어 전송 시스템에서 미디어 전송 패킷 전송 방법 및 장치 | |
CN100456834C (zh) | H.264多媒体通信的服务质量监测方法 | |
KR100556911B1 (ko) | 무선 동영상 스트리밍 서비스를 위한 동영상 데이터의 구조 | |
CN109194982B (zh) | 一种传输大文件流的方法和装置 | |
CN104350760A (zh) | 通过mmt包格式扩展的混合传输方法 | |
CN103518351A (zh) | 使用文件递送方法的ip广播流式传输服务分布 | |
CN103430559A (zh) | 用于在广播系统中配置控制消息的装置及方法 | |
KR20140009315A (ko) | 방송 시스템에서의 멀티미디어 프레임 전송장치 및 방법 | |
WO2007045140A1 (fr) | Methode en temps reel pour transferer des donnees multimedia | |
CN101924742B (zh) | 媒体传输方法及设备、媒体存储方法及设备 | |
CN101888378A (zh) | 基于电话网、广电网和互联网的多屏幕融合系统及其方法 | |
CN104270594B (zh) | 数据包发送与接收的方法及设备 | |
CN101489091A (zh) | 一种语音信号传输处理方法及装置 | |
CN108632679B (zh) | 一种多媒体数据传输的方法和一种视联网终端 | |
CN103339930A (zh) | 合作媒体系统中管理多个终端设备上内容分配的方法和装置 | |
CN102457768A (zh) | 广告拼接处理方法和系统以及拼接器和头端设备 | |
WO2009145293A1 (ja) | サーバ装置と通信方法ならびにプログラム | |
JP2002152301A (ja) | データ通信システム、データ受信装置、データ通信方法、並びにプログラム記憶媒体 | |
JP2007150755A (ja) | データ送信装置及び方法 | |
US20090158376A1 (en) | Method and apparatus of building ip-based video service system in hybrid fiber coax network | |
CN110719495A (zh) | 一种视频数据的处理方法和系统 | |
US20240267421A1 (en) | Signaling media timing information from a media application to a network element | |
CN108270740A (zh) | 对含有多路视频流的视频会议的直播系统和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110713 Termination date: 20170805 |