摘 要: 为了使实时传输的视频流能够自动匹配动态变化的3G网络,随着网络带宽的变化而变化,从而达到降低数据丢失率、流畅传输视频数据的目的,利用RTP协议中的丢包率和时间抖动这两个关键参数,对3G网络的数据传输过程进行大量的实验统计和分析。根据时间抖动的统计规律对其进行数学归一化,同时与丢包率一起来评估3G网络的动态特性,并依此指导TMS320DM365开发平台进行数据流量的自动调节。经测试,该方法能有效地匹配3G网络的有限带宽,实现视频数据的流畅传输。
关键词: 计算机网络;视频监控;3G无线传输;带宽匹配;TMS320DM365
现在国内流行的3G无线网络有CDMA2000 EVDO、WCDMA和TD-SCDMA,它们都拥有一个共同的特点,就是网络的波动性大、误码率高、传输延迟大以及相对网络带宽比较窄[1]。而应用在有线网络的很多业务,包括视频会议、视频监控、IPTV等正逐步向3G无线网络的领域拓展。要在这样的网络环境中实现实时视频的流畅传输,那么比较高效的传输策略就是非常必要的。本研究从3G网络的自身特性出发,利用RTP协议对网络关键参数进行统计,再根据统计的规律来指导经TMS320DM365压缩的实时视频的传输,从而进一步验证这种统计策略的可靠性。
1 3G网络评估参数分析与量化
1.1 RTP协议参数分析
鉴于3G网络的特殊性,衡量其网络特性的参数也相对复杂。本研究主要是依据RTP协议[2]里定义的两个重要参数丢包率和时间抖动来估计3G网络特性。其中,丢包率统计的是最近一段时间间隔内网络丢失数据的情况,而时间抖动则是数据包到达时刻统计方差的估计值,其能有效地评估网络的变化趋势。这两个参数结合起来使用,就可以对当前的网络状况进行有效估计,同时,又能估测出网络的变化趋势,为实时视频传输时的动态调整给予有效的参考。
1.2 网络参数归一化
对于网络特性参数的测试,可以采用依据RTP协议编写的函数库jrtplib-3.7.1[3]和jrtpthread-1.2.1[4],该函数库具有很好的兼容性,可以在多种操作系统中应用。这里主要将其应用在ARM开发平台TMS320DM365上和PC平台的VC2008开发环境中。
经过大量实验数据统计,可以得到如下的规律:(1)丢包率总体处于[0,1]之间,在网络可控的条件下,丢包率大多数保持在20%以下,而出现网络瞬间抖动时,丢包率会达到30%以上;(2)时间抖动总体在[2 000,20 000](单位为RTP时间戳)之间,网络状况较好时,时间抖动基本在[2 000,10 000]之间,分布比较平稳,当出现网络瞬间抖动时,时间抖动就会出现跳跃,达到20 000以上。
为了能够对当前网络进行很好的描述及有效的估计,系统中需要将两个参数结合起来研究。但由于两个参数的分布范围不同,那么就需要将其规范化,最有效的办法就是将时间抖动的统计数据进行归一化。
首先,利用数据规范化的方式——最大最小值法进行初步归一化。方法如下。
通过对[2 000,20 000]之间的数据进行归一化得到如图1所示的曲线。
从图1中可以看出,经过量化的数据,在时间抖动处于2 000~10 000之间时,分布比较平稳集中;而在10 000~20 000之间,分布就相对比较分散。这正符合时间抖动统计的规律,即网络通畅时,时间抖动较小,变化平稳,就需要被细化,有利于视频传输数据的动态调整;而网络拥挤或出现抖动时,通常时间抖动都比较大,只需要粗略估计描述变化趋势即可。
2 分组估计网络状况和网络状态[5]
2.1 网络状况分组估计
考虑到3G无线网络的动态特性,它总是伴随着时间、空间的变化而逐渐变化的。系统中不仅要能统计出当前3G网络的状况,还要能预测出随后网络的变化趋势,那么就需要将丢包率和时间抖动这两个参数结合起来。本研究采用线性组合的方式估计网络的整体状况,即:
其中,i表示分组统计中的第i次;P(i)表示第i次的丢包率,描述最近时间段内网络的丢包状况,即网络当前状况;J(i)表示第i次的时间抖动,估计网络即将变化的趋势;Y(i)表示网络总体状况;比例系数?琢能有效调节丢包率和时间抖动在整体网络估计中的作用。当丢包率起主导作用时,可以调节使?琢增大,反之则减小。
为进一步说明式(4)对3G网络的有效评估,特做出大量的实验数据统计,结果如图2所示,其中,?琢取0.7。测试条件为:TMS320DM365开发平台的编码模式设为图像大小CIF,图像质量A,帧率15 f/s,GOP=15[6]。可以看出,网络总体状况Y(i)得到了充分地平滑,而对网络的变化趋势也能有效估计,这说明式(4)的线性组合具有一定的可靠性。
2.2 网络状态的定义
网络状况的分组统计,其时间较短,系统默认为5 s,这段时间内不利于实时传输视频流的调整;同时,为了增加网络状况估计的可靠性,就有必要对这个分组统计的结果计算概率分布。可以将网络状态分为轻载、满载和拥塞3种状态,如图3所示。
设定阈值T1、T2,且0<T1<T2<1。当0<Y(i)<T1的概率P1高于设定阈值PT1时,网络处于轻载状态,可以逐渐增加视频数据传输的速率,直到网络处于满载状态;当T2<Y(i)<100%的概率P3高于设定值PT2时,网络处于拥塞状态,必须迅速减小视频数据传输的速率,直到网络回到满载状态;除此之外,都表明当前网络状态正常,可以继续维持这一状态。
注意:T1应取较低的值以避免产生QoS振荡,T2的选取标准是网络传输的数据丢失程度,虽然已比较高但解码后的视频效果仍在可接收的范围内。这里取T1=3%,T2=10%。PT1和PT2可以依照实际网络状况而定。
3 TMS320DM365平台视频数据传输
3.1 TMS320DM365平台视频流分析[6-7]
TMS320DM365采用的是TI的DaVinci系列架构,集成了一个ARM926EJ-S内核,一个H.264高清编解码协处理器HDVICP和一个MPEG-4/JPEG高清编解码协处理器MJCP,可以支持H.264/MPEG-4的高清视频的编解码。它能够调节输入视频的亮度、对比度、色调、锐度和饱和度,同时,又能够通过程序来设定分辨率、比特率和帧率。
影响TMS320DM365开发平台上H.264格式的视频码流的主要参数有图像质量、GOP(Group of Pictures)、帧率和图像大小。经过对这些参数的分析,并结合对图像质量、运动补偿以及视频流畅性等诸多方面的考虑,按照视频数据码流大小进行实验统计,得到的结果如表1所示。
3.2 视频传输码流动态控制
针对图3所示网络状态的定义,以及实时视频流对3G网络的反应速度,结合如表1所示不同视频模式码流的区别,设计程序流程图如图4所示。
初始条件下,视频硬件编码器TMS320DM365设定为模式4(如表1中所示),码流基本保证在40 kb/s左右,在现有的3G网络状况条件下,可以保证这种视频流的顺畅传输。而一旦网络状况变得比较拥塞时,短时状态中统计的P3超过了阈值PT2,系统就可以迅速将视频编码模式向低级模式切换,以降低视频码流来适应网络带宽;而当网络状况变得通畅处于轻载时,长时状态中统计的P1超过了阈值PT2,系统就可以向高级模式切换,提高图像质量,直到网络处于满载。经过系统总体的测试,发现这种动态调整的视频码流传输策略能有效地适应变化的3G网络带宽。尤其在局域范围内网络比较拥塞时,系统能够迅速切换进入低级模式,处于视频码流较低情况,以占用较少的网络资源,实现流畅的传输。
此外,在有些特殊的系统当中,可能有些需要视频质量比较高,而有些则需要对运动变化的图像有较好的补偿,那么,就可以通过设定初始条件下的视频模式或改变动态调整过程中的视频模式,来满足这些要求。总之,对TMS320DM365硬件参数的不同设定,都可以有效改变实时视频传输系统的总体性能。
本研究中通过对RTP协议的利用,实现了对3G网络状况的总体估计,引入了网络状态的判断分布,从而指导TMS320DM365开发平台不同模式之间的切换,使得实时视频流能够适应变化的3G网络。但是,如果能采用更多的参数来衡量网络状况的话,将能够进一步提升网络估计的准确性。此外,本研究的核心是通过网络估计控制实时视频流以适应网络的变化。当网络因抖动频繁或是视频模式切换不及时而出现丢包率比较高时,视频的解码显示就会产生比较明显的马赛克现象。因此,系统可以在图像传输的过程中采取其他的办法,比如通过增加冗余数据包来恢复丢失的数据,或者是在视频解码时加入补偿算法来恢复丢失的图像数据等,从而进一步提升图像质量。
参考文献
[1] STOCKHAMMER T, HANNUKSELA M M, WIEGAND T. H.264/AVC in wireless environments[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2003,13(7):657-673.
[2] SCHULZRINNE H, CASNER S, FREDERICK R, et al. RTP: A transport protocol for real-time applications[S]. RFC3550,2003.
[3] LIESENBORGS J. JRTPLIB 3.4.0[Z]. 2006.
[4] LIESENBORGS J. JThread manual(v1.2.1)[Z]. 2006.
[5] 盛先刚.基于RTP的H.264视频传输系统研究[D].西安:西安电子科技大学,2006.
[6] Texas Instruments Incorporation. DM365-DVR reference design user guide document version 1.1[Z]. 2009.
[7] BAROT S, SHAIK K, SRINIVASAMURTHY N, et al. Application parameter settings for TMS320DM365 H.264 encoder[Z]. Texas Instruments Incorporation. 2010.