CN103607255A - 无线信道视频通信丢包率控制方法 - Google Patents
无线信道视频通信丢包率控制方法 Download PDFInfo
- Publication number
- CN103607255A CN103607255A CN201310495896.0A CN201310495896A CN103607255A CN 103607255 A CN103607255 A CN 103607255A CN 201310495896 A CN201310495896 A CN 201310495896A CN 103607255 A CN103607255 A CN 103607255A
- Authority
- CN
- China
- Prior art keywords
- packet
- length
- packet loss
- data
- loss rate
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 238000004891 communication Methods 0.000 title claims abstract description 19
- 230000005540 biological transmission Effects 0.000 claims abstract description 52
- 238000006467 substitution reaction Methods 0.000 claims description 3
- 230000002035 prolonged effect Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 5
- 238000002474 experimental method Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000002146 bilateral effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明涉及一种无线信道视频通信丢包率控制方法。本发明的目的是提供一种无线信道视频通信丢包率控制方法,控制数据传输过程中的丢包率,提高无线视频通讯质量。本发明的技术方案是:1、设定最高丢包率Pset、发送数据包长度的最大值lmax和最小值lmin、初始的数据包长度;2、实时获取当前丢包率,若丢包率为0,则提高下一时刻内发送的数据包长度,转至步骤5;若丢包率大于0,则转至步骤3;3、计算出当前信道的误码率Perr;4、计算出下一个时刻内发送数据包的长度len;5、更新下一个时刻内发送数据包的长度,并转至步骤2,如此循环实现丢包率的控制。本发明适用于无线、3G信道的视频传输。
Description
技术领域
本发明涉及一种无线信道视频通信丢包率控制方法,特别是一种基于RTP/RTCP协议的无线信道视频通信丢包率控制方法,主要适用于无线、3G信道的视频传输。
背景技术
3G移动通信技术是指支持高速数据传输的蜂窝移动通讯技术,它能够同时传送声音及数据信息,预计速率一般在300kbps以上,与2G网络相比有了很大的提高。与2G网络技术相比较而言,3G技术具有能极大地增加系统容量、提高通信质量,提高数据传输速率的优点。在3G网络的时代,视觉冲击力强,快速直接的视频通话语音信箱等新业务会更加普及和飞速发展。
但是3G无线信道的高误码率、带宽波动大、有限的信道带宽等缺点为视频通讯业务的开发提出了挑战。首先,无线信道最主要特点是多径传播,使传输的可靠性大为降低;其次,无线信道误码率比较高,一般在10-3,有时候甚至能高达10-2;信道状态差的时候会导致丢包率较高,从而引起发送端数据重发,解码端出现丢帧、延时、解码花屏等问题,严重影响视频传输的质量。
发明内容
本发明要解决的技术问题是:针对上述存在的问题提供一种基于RTP/RTCP协议的无线信道视频通信丢包率控制方法,以控制数据传输过程中的丢包率,并最终达到提高无线视频通讯质量的目的。
本发明所采用的技术方案是:无线信道视频通信丢包率控制方法,其步骤如下:
1.1、首先设定能够接受的最高丢包率Pset、发送数据包长度的最大值lmax和最小值lmin,以及初始的数据包长度,其中初始的数据包长度大于或等于发送数据包长度的最小值lmin、小于或等于发送数据包长度的最大值lmax;
1.2、进行数据的实时传输,并实时获取当前接收端报告中的丢包率,若丢包率为0,则以一定的增量来提高下一时刻内发送的数据包长度,并转至步骤1.5;若丢包率大于0,则转至步骤1.3;
式中,Perr为当前信道的误码率,lcur为当前发送数据包的长度,Pt为当前接收端报告中的丢包率;
1.4、将步骤1.3所得当前信道的误码率Perr以及设定的最高丢包率Pset代入公式len=In(1-Pset)/In(1-Perr),计算出下一个时刻内发送数据包的长度len;
1.5、更新下一个时刻内发送数据包的长度,并转至步骤1.2,如此循环即可实现丢包率的控制;
上述步骤1.2和1.4中,所得下一个时刻内发送数据包的长度,若大于lmax,则将下一个时刻内发送数据包的长度设定为lmax;若小于lmin,则将下一个时刻内发送数据包的长度设定为lmin。
所述发送数据包长度的最大值lmax为1400字节,发送数据包长度的最小值lmin为180字节。
步骤1.2中所述增量为当前发送数据包长度的3%。
本发明的有益效果是:本发明通过接收RTCP协议(Real-time ControlProtocol,实时传输控制协议)的RR(接收端报告)包中的统计信息(丢包率),能够快速准确动态的估算出无线、3G信道的误码率,并根据该误码率计算出下一时刻内发送数据包的最优长度,尽可能的使传输过程中的丢包率达到预设值,降低重发包的次数,从而提高了无线视频通讯的质量。此外,本发明还兼顾了有效性和实时调整的要求。
附图说明
图1是利用本发明方法在联通3G环境下测试时丢包率及发送数据包的长度变化示意图。
图2是在联通3G环境下未使用本发明方法传输的视频画质示意图。
图3是在联通3G环境下使用本发明方法传输的视频画质示意图。
具体实施方式
本实施例在3G信道高误码率的条件下,基于RTP/RTCP传输协议返回的信息提出了一种丢包率控制算法,通过接收RTCP协议的RR(接收端报告)包中的统计信息(丢包率),来动态的估算3G信道的误码率,并根据该误码率控制下一时刻内数据包的发送长度,从而控制数据传输过程中的丢包率,并最终达到提高3G视频通讯质量的目的。
实时视频通信系统必须保证媒体信号带宽与网络连接匹配,以便传输的内容可被实时观看。这意味着在网络速度比较慢时,连接网络时图像质量较差。而且,如果因为网络拥塞或出现问题而导致出错和丢失的信息都被忽略掉,因此图像质量将很差。实时流式传输需要专用的流媒体服务器与传输协议。由于TCP(Transmission Control Protocol)需要较多的开销,所以不太适合传输实时数据。在实时传输方案中,一般采用HTTP(Hypertext transfer protocol)/TCP来传输控制信息,而用RTP(Real-time Transport Protocol)/UDP(User DatagramProtocol)来传输实时数据。
根据实时视频传输的特点和传统的TCP传输方式的在实时视频传输过程中的局限性,本实施例选用RTP协议作为视频传输协议。RTP(Real-time TransportProtocol)协议是一种实时网络传输协议,它详细规定了在互联网上传递音频和视频的标准数据包格式。RTP通常使用UDP来传输数据,但RTP也可以在TCP或ATM(Asynchronous Transfer Mode)等其他协议之上工作。RTP协议本身不能为传送的数据包提供可靠的传送机制,也不能提供流量控制或拥塞控制,在实际应用中需要依靠RTCP(Real-time Control Protocol)提供这些服务来保证服务质量。所以当应用程序开始一个RTP会话的时候将使用两个端口:一个给RTP,一个给RTCP。
RTCP协议作为RTP协议提供的信道外控制协议,本身并不传输数据,但它和RTP一起协作能以有效的反馈和最小的开销使传输效率最佳化,因而特别适合传送网上的实时数据。RTCP协议周期性的在流媒体会话参加者之间传输控制数据,例如:传输字节数,传输分组数,丢失分组数,jitter(抖动),单向和双向网络延迟等等。应用程序可以通过RTCP返回的统计信息来控制视频传输的质量,比如根据当前网络的状况来控制发送数据包的长度和发送速率。RTCP协议有五种包类型,如下表所示。
类型 | 缩写表示 | 意义 |
200 | SR | 发送端报告,发送和接受来自活动发送端的统计信息 |
201 | RR | 接收端报告,接受来自非活动端的统计信息 |
202 | SDES | 数据源描述项,包括CNAME |
203 | BYE | 表示某个用户结束会话 |
204 | APP | 由应用程序制定的功能 |
RTCP协议通过报告向RTP发送端提供反馈信息。报告可以分为发送端报告(SR)和接收端报告(RR)两种。如果一个会话现场在发送最后一个报告或者在发送前一个报告之后的一个周期内发送了数据包,那么该现场就发送SR报告,否则就发送RR报告。本例中仅使用接收端报告(RR),其报告格式如下表所示:
接收端报告(RR)的格式包括3个部分。第一部分为8个字节的报头,包涵了版本号,接收报告计数,数据包类型,数据包长度等信息。第二部分为长度为15个字节的发送端信息。第三部分包涵了数据传输的统计信息,本实施例指的是丢包率信息。丢包率表示的是在发送一个RR数据后来自数据源的RTP数据的丢失比例,它等于丢失的数据包的数量除以发送的数据包的数量。当由于复制而使数据包丢失数为负值的时候,丢包率就为零。
在实际的开发过程中经常被人们使用的开源RTP库有SRTP,JRTPLIB等。其中JRTPLIB是为了帮助开发者更加方便的使用RTP而开发的面相对象的C++开源库。该库让使用者可以使用RTP来收发数据而不必担心SSRC(同步源标示符)冲突,调度,以及RTCP数据的传输等问题。使用者只需要提供给库要发送的负载数据,该库提供给使用者接口获得接收到的RTP和RTCP数据。该库提供了许多在创建RTP应用时有用的类。大部分的使用者可能只需要使用RTPSession类来创建应用程序。该类内部提供了发送RTP数据以及处理RTCP需要的函数。本实施例控制方法是在JRTPLIB开源库的基础上提出的。
本实施例的具体步骤如下:
1.1、首先初始化发送状态,并设定能够接受的最高丢包率Pset、发送数据包长度的最大值lmax和最小值lmin,以及初始的数据包长度;本例中,所述发送数据包长度的最大值lmax为1400字节,发送数据包长度的最小值lmin为180字节,初始的数据包长度大于或等于发送数据包长度的最小值lmin、小于或等于发送数据包长度的最大值lmax。
1.2、进行数据的实时传输,并实时获取RTCP协议返回的、当前接收端报告(RR包)中的丢包率;若丢包率为0,则表示信道状态良好,没有出现丢包的情况,此时以一定的增量来提高下一时刻内发送的数据包长度,并转至步骤1.5;若丢包率大于0,则转至步骤1.3。所述增量为当前发送数据包长度的3%,也就是说,如果初始发送数据包长度为Y个字节,且丢包率为0,此时该增量为Y*0.03个字节,即下一时刻内发送的数据包长度为Y*(1+0.03)个字节,若丢包率仍为0,那么此时该增量为Y*(1+0.03)*0.03个字节。
1.3、根据公式计算出当前信道的误码率Perr,
式中,Perr为当前信道的误码率,lcur为当前发送数据包的长度,Pt为当前接收端报告中的丢包率,即步骤1.2获取的RR包中的丢包率。
1.4、将步骤1.3所得当前信道的误码率Perr以及步骤1.1设定的最高丢包率Pset代入公式len=In(1-Pset)/In(1-Perr),计算出下一个时刻内发送数据包的长度len;
1.5、更新下一个时刻内发送数据包的长度,并转至步骤1.2,如此循环即可实现丢包率的控制;
上述步骤1.2和1.4中,对于所得下一个时刻内发送数据包的长度,若大于lmax,则将下一个时刻内发送数据包的长度设定为lmax=1400字节;若小于lmin,则将下一个时刻内发送数据包的长度设定为lmin=180字节,以确保发送数据包的长度始终维持在180-1400字节之间。
上述步骤1.3中所述计算公式的推导过程如下:
在视频数据进行无线传输的过程中,每个视频数据包的丢包概率可以用当前信道的误码率来刻画。假设无线信道的误码率为Perr,发送数据包的长度为l,则该数据包在数据传输过程中的丢包概率为:
P=1-(1-Perr)l (2-1)
从RR包中可以得到在第n-1个和第n个RR数据包时间间隔内的丢包率为Pt。假设在两个RR包的时间间隔内,发送的数据包的长度保持不变,同时假定同一时间间隔内信道误码率不会发生变化,则可以近似的认为无线信道的丢包率Pt与单个包的丢包概率P相等,则公式2-1就可以表示为:
Pt=1-(1-Perr)l (2-2)
由于在相邻的两个RR包的时间间隔内的丢包率Pt和发送数据包的长度l均已知,因此可以对公式2-1进行变形,得到公式2-3,通过丢包率和发送数据包的长度计算出信道的误码率Perr:
下面结合具体实验来对本发明进行进一步说明,
本实验在联通3G环境下进行测试,通过3G网卡把数据发送到分发服务器。考虑到数据链路层的MTU(Maximum Transmission Unit),RTP数据包的包头和传输过程中协议栈添加的数据头等因素,本实验设定发送数据包长度的最大值为1400个字节,最小值为180个字节;实验设定能够接受的最高丢包率为20%,初始数据包的长度为500字节。
从图1中的丢包率变化示意图可以明显看出,在传输过程中信道状态会出现明显的变化(即信道误码率不稳定),导致丢包率出现剧烈的波动,严重影响视频传输质量。从发送数据包的长度变化示意图可以明显看出,采用了本实施例所述控制方法后,可以实时的响应信道误码率的波动,并自动的调整数据包的发送长度。
图2、图3分别为在联通3G环境下未使用本实施例方法传输的视频画质示意图和使用本实施例方法传输的视频画质示意图,从两幅图的对比中可以明显的看到图2由于丢包产生了花屏,而图3没有产生花屏。从视频数据传输实验中可以看出,使用本实施例所述控制方法后,传输过程中的丢包率有明显的下降,视频传输质量相较于没有使用本实施例所述控制方法有显著提高。
Claims (3)
1.一种无线信道视频通信丢包率控制方法,其特征在于步骤如下:
1.1、首先设定能够接受的最高丢包率Pset、发送数据包长度的最大值lmax和最小值lmin,以及初始的数据包长度,其中初始的数据包长度大于或等于发送数据包长度的最小值lmin、小于或等于发送数据包长度的最大值lmax;
1.2、进行数据的实时传输,并实时获取当前接收端报告中的丢包率,若丢包率为0,则以一定的增量来提高下一时刻内发送的数据包长度,并转至步骤1.5;若丢包率大于0,则转至步骤1.3;
式中,Perr为当前信道的误码率,lcur为当前发送数据包的长度,Pt为当前接收端报告中的丢包率;
1.4、将步骤1.3所得当前信道的误码率Perr以及设定的最高丢包率Pset代入公式len=In(1-Pset)/In(1-Perr),计算出下一个时刻内发送数据包的长度len;
1.5、更新下一个时刻内发送数据包的长度,并转至步骤1.2,如此循环即可实现丢包率的控制;
上述步骤1.2和1.4中,所得下一个时刻内发送数据包的长度,若大于lmax,则将下一个时刻内发送数据包的长度设定为lmax;若小于lmin,则将下一个时刻内发送数据包的长度设定为lmin。
2.根据权利要求1所述的无线信道视频通信丢包率控制方法,其特征在于:所述发送数据包长度的最大值lmax为1400字节,发送数据包长度的最小值lmin为180字节。
3.根据权利要求1或2所述的无线信道视频通信丢包率控制方法,其特征在于:步骤1.2中所述增量为当前发送数据包长度的3%。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310495896.0A CN103607255A (zh) | 2013-10-21 | 2013-10-21 | 无线信道视频通信丢包率控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310495896.0A CN103607255A (zh) | 2013-10-21 | 2013-10-21 | 无线信道视频通信丢包率控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103607255A true CN103607255A (zh) | 2014-02-26 |
Family
ID=50125457
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310495896.0A Pending CN103607255A (zh) | 2013-10-21 | 2013-10-21 | 无线信道视频通信丢包率控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103607255A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110225532A (zh) * | 2019-04-25 | 2019-09-10 | 维沃移动通信有限公司 | 一种数据接收方法及终端设备 |
CN110505533A (zh) * | 2019-07-09 | 2019-11-26 | 杭州亿圣信息技术有限公司 | 一种tcp视频传输进行误码重传控制的方法 |
CN110753271A (zh) * | 2019-09-10 | 2020-02-04 | 杭州亿圣信息技术有限公司 | 以动态可控双流进行视频无线组播下tcp误码重传控制方法 |
CN110868373A (zh) * | 2018-08-27 | 2020-03-06 | 浙江宇视科技有限公司 | 多媒体数据传输方法、装置及计算机可读存储介质 |
CN114389999A (zh) * | 2021-12-27 | 2022-04-22 | 鹏城实验室 | 一种基于数据包的网络传输方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101414957A (zh) * | 2007-10-17 | 2009-04-22 | 北京中电华大电子设计有限责任公司 | 一种用于无线局域网的缓冲队列管理方法 |
CN101465712A (zh) * | 2008-11-04 | 2009-06-24 | 浙江大学 | 一种数据帧最大负载自适应调整方法 |
CN103051978A (zh) * | 2012-12-16 | 2013-04-17 | 华南理工大学 | 一种基于h264的实时移动视频服务控制方法 |
-
2013
- 2013-10-21 CN CN201310495896.0A patent/CN103607255A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101414957A (zh) * | 2007-10-17 | 2009-04-22 | 北京中电华大电子设计有限责任公司 | 一种用于无线局域网的缓冲队列管理方法 |
CN101465712A (zh) * | 2008-11-04 | 2009-06-24 | 浙江大学 | 一种数据帧最大负载自适应调整方法 |
CN103051978A (zh) * | 2012-12-16 | 2013-04-17 | 华南理工大学 | 一种基于h264的实时移动视频服务控制方法 |
Non-Patent Citations (2)
Title |
---|
徐昌彪等: "无线网络中基于误码丢包的TCP速率调节策略", 《计算机学报》, vol. 25, no. 4, 12 April 2002 (2002-04-12) * |
马汉杰: "无线视频通信中的容错技术研究", 《中国博士学位论文全文数据库》, 28 February 2011 (2011-02-28) * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110868373A (zh) * | 2018-08-27 | 2020-03-06 | 浙江宇视科技有限公司 | 多媒体数据传输方法、装置及计算机可读存储介质 |
CN110225532A (zh) * | 2019-04-25 | 2019-09-10 | 维沃移动通信有限公司 | 一种数据接收方法及终端设备 |
CN110505533A (zh) * | 2019-07-09 | 2019-11-26 | 杭州亿圣信息技术有限公司 | 一种tcp视频传输进行误码重传控制的方法 |
CN110505533B (zh) * | 2019-07-09 | 2021-06-01 | 杭州亿圣信息技术有限公司 | 一种tcp视频传输进行误码重传控制的方法 |
CN110753271A (zh) * | 2019-09-10 | 2020-02-04 | 杭州亿圣信息技术有限公司 | 以动态可控双流进行视频无线组播下tcp误码重传控制方法 |
CN110753271B (zh) * | 2019-09-10 | 2021-08-24 | 杭州亿圣信息技术有限公司 | 以动态可控双流进行视频无线组播下tcp误码重传控制方法 |
CN114389999A (zh) * | 2021-12-27 | 2022-04-22 | 鹏城实验室 | 一种基于数据包的网络传输方法、装置、设备及存储介质 |
CN114389999B (zh) * | 2021-12-27 | 2023-08-18 | 鹏城实验室 | 一种基于数据包的网络传输方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107979449B (zh) | 一种数据传输方法及装置 | |
CN101068236B (zh) | 流媒体码率控制方法、系统和设备 | |
Xu et al. | CMT-NC: improving the concurrent multipath transfer performance using network coding in wireless networks | |
JP4000905B2 (ja) | 情報処理システムおよび方法、情報処理装置および方法、記録媒体、並びにプログラム | |
KR101054598B1 (ko) | 무선 네트워크의 다중-사용자 서비스를 위한 리포팅 | |
CN101030832B (zh) | 实现实时传输协议报文冗余机制的方法及其系统 | |
CN101656747A (zh) | 流媒体数据的传输方法及系统 | |
CN103944834B (zh) | 一种音视频转发控制方法及系统 | |
US20050005020A1 (en) | Server-based rate control in a multimedia streaming environment | |
CN105357592A (zh) | 一种流媒体自适应传输选择性丢帧方法 | |
US11057299B2 (en) | Real-time video transmission method for multipath network | |
CN103607255A (zh) | 无线信道视频通信丢包率控制方法 | |
RU2009134145A (ru) | Снижение влияния от потерь пакетов в передачах видео | |
CN102281283B (zh) | 通信处理设备、通信处理系统、通信处理方法及程序 | |
CN104486690B (zh) | 一种基于tcp协议的移动视频传输优化方法 | |
US8320472B2 (en) | Method for efficient feedback of receiving channel conditions in adaptive video multicast and broadcast systems | |
EP1568180A2 (en) | A method for enhancing transmission quality of streaming media | |
CN101552660A (zh) | 对流媒体数据进行重传、播放的方法、装置及通信系统 | |
CN103166974A (zh) | 一种基于tcp/udp混合协议的流媒体无线传输方法 | |
Daldoul et al. | IEEE 802.11 n aggregation performance study for the multicast | |
CN101557273A (zh) | 一种同时适用于有线和无线网络的实时流媒体传输的方法 | |
US20210126900A1 (en) | Data Sending Method, Sending Device, Data Receiving Method, and Receiving Device | |
CN101207506B (zh) | 无线流媒体关键参数统计及其传递的改进方法 | |
CN100551029C (zh) | 一种对h.320会议电视终端进行远程控制的方法 | |
CN100479460C (zh) | 跨平台的端到端rtp协议栈设计方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140226 |
|
RJ01 | Rejection of invention patent application after publication |