一种实时视频通信传输控制方法

文档序号:7815442阅读:146来源:国知局
一种实时视频通信传输控制方法
【专利摘要】本发明提供一种实时视频通信传输控制方法,所述方法是基于不完全帧解码实现的,包括如下步骤:步骤10.接收端接收到发送端发送的数据,进行不完全帧解码控制;步骤20.在解码过程中统计监测参数,并把监测参数反馈给发送端;步骤30.发送端根据反馈结果,重新调整编码过程参数,将待发送数据进行编码,通过网络传输发送给接收端。本发明针对性地以解码过程实时帧监测和反馈为起始,通过反馈帧监测参数,调整发送端编码过程参数,形成解码端和编码端之间持续负反馈,能够有效降低网络丢包和抖动,使得视频通信快速适应当前可用带宽,减少视频马赛克、画面色彩错乱和卡顿等问题,提升用户体验。
【专利说明】一种实时视频通信传输控制方法

【技术领域】
[0001]本发明涉及一种视频通信领域,尤其涉及一种实时视频通信传输控制方法。

【背景技术】
[0002]当前,IP网络技术空前发展,在复杂的网络条件下,实时视频通信应用受到很大的挑战,丢包和抖动随机变化,网络资源共享和管控导致视频通信的可用带宽不足,这些因素会导致严重的视频马赛克、画面色彩错乱和卡顿,是用户的体验变差,使得实时视频通信应用的易用性降低。为解决上述问题,目前出现很多的实时视频通信系统采用端到端的控制方法,根据RFC3550协议中反馈的丢包率,控制发送端编码和发送比特率,以降低网络丢包和抖动,从而达到提升用户视频体验的目的,这种以发送端编码控制为主体的视频通信控制方法不能把编码过程和解码过程纳入到一个整体,进行综合考虑,缺乏精确性。


【发明内容】

[0003]本发明要解决的技术问题,在于提供一种实时视频通信传输控制方法,有效降低帧抖动和帧丢失率,实现缓解或消除视频马赛克、画面色彩错乱和卡顿等问题,从而改善用户体验,提升视频通信应用的易用性。
[0004]本发明是这样实现的:一种实时视频通信传输控制方法,所述方法是基于不完全帧解码实现的,包括如下步骤:
步骤10、接收端接收到发送端发送的数据,进行不完全帧解码控制;
步骤20、在解码过程中统计监测参数,并把监测参数反馈给发送端;
步骤30、发送端根据反馈结果,重新调整编码过程参数,将待发送数据进行编码,通过网络传输发送给接收端。
[0005]进一步的,所述步骤10中不完整帧解码控制:每一帧包括多个Slice,在接收到一帧数据时,过滤不完整Slice,判断帧是否为空,若帧为空则丢弃帧,若帧不为空,则进一步判断巾贞是否完整;
若帧不完整则判断解码关键参数是否缺失,若缺失则丢弃,若不缺失则进行解码;若帧完整则判断解码关键参数是否缺失,若不缺失则进行解码,若缺失则判断帧是否为关键帧;若为关键帧则进行解码,若不是关键帧则丢弃;其中,关键参数包括图像分辨率和Slice模式。
[0006]进一步的,所述步骤20进一步包括:
步骤21、在解码过程中监测解码参数,监测参数包括帧丢失率,解码帧比特率和帧抖动;
步骤22、对监测参数中的帧丢失率和帧抖动的变化进行判断,若帧丢失率达到一第一丢失率阈值或者帧抖动达到一第一抖动阈值时,向发送端反馈当前监测参数,否则,以一定周期性反馈监测参数。
[0007]进一步的,所述监测参数中帧丢失率为单位时间窗口内不完全帧数目与总帧数的比率,解码帧比特率为单位时间窗口内接收的所有帧数据的比特数之和,两帧数据帧O和帧I发送时间戳记为T0,Tl,这两帧数据到达的时间分别为to,tl,则帧抖动为:(tl -to) - (Tl - TO)。
[0008]进一步的,所述步骤30中重新调整编码过程参数的具体方式为:根据接收端反馈的监测参数,若帧丢失率超过第一丢失率阈值或帧抖动超过第一抖动阈值,则降低编码发送比特率至解码帧比特率,若反馈的帧丢失率小于一第二丢失率阈值且帧抖动小于一第二抖动阈值,则以一步长S增加编码的发送比特率;
在每次编码比特率上升或下降时,根据编码参数映射关系,得出与新比特率对应的新编码分辨率,若新分辨率与当前分辨率不同,则更新编码分辨率;
在调整编码发送比特率后,若帧丢失率仍无法消除且当前编码模式为单一 Slice模式,则更改编码模式为多Slice模式;
在每次减少或增加编码发送比特率后,均观察若干反馈周期,这些周期为评判周期;对于下降调整,评判周期内,若帧丢失率或帧抖动随之下降,则评判周期结束后,进行下一次调整,直到帧丢失率小于第二丢失率阈值且帧抖动小于第二抖动阈值,下降调整过程结束,若帧丢失率或帧抖动未随之下降,则为无效下降,累加无效下降次数,当无效下降次数大于一定值时,则下降调整过程结束;对于上升调整,若评判周期内,帧丢失率小于第二丢失率阈值且帧抖动小于第二抖动阈值,则评判周期结束后,进行下一次上升调整;若评判周期内,帧丢失率和帧抖动分别大于各自的第一阈值,则上升调整过程结束。
[0009]本发明具有如下优点:本发明针对性地以解码过程实时帧监测和反馈为起始,通过反馈帧监测参数,调整发送端编码过程参数,从而改善解码过程的帧监测状态,该监测结果会再次反馈到编码过程,如此形成解码端和编码端之间持续负反馈,这种把解码过程和编码过程统一起来的整体控制策略,能够有效降低网络丢包和抖动,使得视频通信快速适应当前可用带宽,减少视频马赛克、画面色彩错乱和卡顿等问题,提升用户体验。

【专利附图】

【附图说明】
[0010]下面参照附图结合实施例对本发明作进一步的说明。
[0011]图1为本发明方法执行流程图。
[0012]图2为本发明解码控制过程流程图。
[0013]图3为本发明编码控制过程流程图。

【具体实施方式】
[0014]请参考图1至图3,一种实时视频通信传输控制方法,所述方法是基于不完全帧解码实现的,包括如下步骤:
步骤10、接收端接收到发送端发送的一帧数据,进行不完全帧解码控制,解码控制是对解码效果进行反馈,为发送端的编码过程控制提供依据,所述不完全帧解码控制具体方式为:每一帧数据包括多个Slice,在接收到一帧数据时,过滤不完整Slice,判断该帧是否为空,若帧为空则丢弃帧,若帧不为空,则进一步判断帧是否完整;
若帧不完整则判断解码关键参数是否缺失,若缺失则丢弃,若不缺失则进行解码;若帧完整则判断解码关键参数是否缺失,若不缺失则进行解码,若缺失则判断帧是否为关键帧;若为关键帧则进行解码,若不是关键帧则丢弃;其中,关键参数包括图像分辨率和Slice模式;
步骤20、在解码过程中统计监测参数,并把监测参数反馈给发送端,该步骤进一步包括:
步骤21、在解码过程中监测解码参数,监测参数包括帧丢失率Li,解码帧比特率Bi和帧抖动Ji ;
所述监测参数中帧丢失率Li为单位时间窗口内不完全帧数目与总帧数的比率,解码帧比特率Bi为单位时间窗口内接收的所有帧数据的比特数之和,两帧数据帧O和帧I发送时间戳记为T0,Tl,这两帧数据到达的时间分别为t0,tl,则帧抖动1为:(tl - t0)- (Tl-TO)
步骤22、对监测参数中的帧丢失率Li和帧抖动Ji的变化进行判断,若帧丢失率Li达到一第一丢失率阈值Ln或者巾贞抖动Ji达到一第一抖动阈值Jn时,即当前网络状态正发送明显变化,向发送端反馈当前监测参数,促使编码端调整相关编码参数,否则,在网络状态平稳时,即可以带宽尚有利用空间,以一定周期性反馈监测参数,触发编码参数不断调整,充分利用当前带宽,视频质量不断改善;
步骤30、发送端根据反馈结果,重新调整编码过程参数,将待发送数据进行编码,通过网络传输发送给接收端,所述重新调整编码过程参数的具体方式为:根据接收端反馈的监测参数,若解码端反馈帧丢失率Li或帧抖动Ji明显增大,即若帧丢失率Li超过第一丢失率阈值Ln或帧抖动Ji超过第一抖动阈值JN,则降低编码发送比特率至解码帧比特率Bi ;若解码端反馈帧丢失率Li和帧抖动Ji均很小,即若反馈的帧丢失率Li小于一第二丢失率阈值Lg且帧抖动Ji小于一第二抖动阈值Je,则以一步长S增加编码的发送比特率,步长S可调整比特率上升速度,这里选择S=50*1024比特;
在每次编码比特率上升或下降时,根据编码参数映射关系,得出与新比特率对应的新编码分辨率,若新分辨率与当前分辨率不同,则更新编码分辨率;
在调整编码发送比特率后,若帧丢失率Li仍无法消除且当前编码模式为单一 Slice模式,则更改编码模式为多Slice模式,因为多Slice模式更适合丢包网络环境,在传输过程中,以Slice为传输单兀,若一巾贞中多个slice在传输过程中有部分Slice丢失,其余的Slice还可以解码显示;
在每次减少或增加编码发送比特率后,均观察若干反馈周期,这些周期为评判周期CN,Cn值取5 ;对于下降调整,评判周期内,若帧丢失率Li或帧抖动Ji随之下降,则说明调整有效,评判周期结束后,进行下一次调整,直到帧丢失率Li小于第二丢失率阈值Le且帧抖动Ji小于第二抖动阈值Je,下降调整过程结束,若帧丢失率Li或帧抖动Ji未随之下降,则为无效下降,累加无效下降次数,当无效下降次数大于一定值Dn时,则下降调整过程结束,Dn值取3 ;
对于上升调整,若评判周期内,帧丢失率Li小于第二丢失率阈值Le且帧抖动Ji小于第二抖动阈值Je,则评判周期结束后,进行下一次上升调整;若评判周期内,帧丢失率Li和帧抖动Ji分别大于Le和Je,则上升调整过程结束。
[0015]另外,根据不同网络参数对视频接收的用户体验的影响,来确定编码控制过程中的各阈值,若选取Le〈2%,Jg<30毫秒,该网络条件下,接收视频较流畅,画面质量较好,不会对用户体验产生明显影响;若选取Ln>=8%,,Jn >=80毫秒,在该网络条件下,马赛克现象严重,画面质量较差,应及时采取相应措施,比如降低帧丢失率Li和帧抖动Ji,改善视频质量。
[0016]虽然以上描述了本发明的【具体实施方式】,但是熟悉本【技术领域】的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
【权利要求】
1.一种实时视频通信传输控制方法,其特征在于:所述方法是基于不完全帧解码实现的,包括如下步骤: 步骤10、接收端接收到发送端发送的数据,进行不完全帧解码控制; 步骤20、在解码过程中统计监测参数,并把监测参数反馈给发送端; 步骤30、发送端根据反馈结果,重新调整编码过程参数,将待发送数据进行编码,通过网络传输发送给接收端。
2.根据权利要求1所述的一种实时视频通信传输控制方法,其特征在于:所述步骤10中不完整帧解码控制为:每一帧包括多个Slice,在接收到一帧数据时,过滤不完整Slice,判断帧是否为空,若帧为空则丢弃帧,若帧不为空,则进一步判断帧是否完整; 若帧不完整则判断解码关键参数是否缺失,若缺失则丢弃,若不缺失则进行解码;若帧完整则判断解码关键参数是否缺失,若不缺失则进行解码,若缺失则判断帧是否为关键帧;若为关键帧则进行解码,若不是关键帧则丢弃;其中,关键参数包括图像分辨率和Slice模式。
3.根据权利要求1所述的一种实时视频通信传输控制方法,其特征在于:所述步骤20进一步包括: 步骤21、在解码过程中监测解码参数,监测参数包括帧丢失率,解码帧比特率和帧抖动; 步骤22、对监测参数中的帧丢失率和帧抖动的变化进行判断,若帧丢失率达到一第一丢失率阈值或者帧抖动达到一第一抖动阈值时,向发送端反馈当前监测参数,否则,以一定周期性反馈监测参数。
4.根据权利要求3所述的一种实时视频通信传输控制方法,其特征在于:所述监测参数中帧丢失率为单位时间窗口内不完全帧数目与总帧数的比率,解码帧比特率为单位时间窗口内接收的所有帧数据的比特数之和,两帧数据帧O和帧I发送时间戳记为T0,Tl,这两帧数据到达的时间分别为to,tl,则帧抖动为:(t1- to) - (Tl - TO)。
5.根据权利要求4所述的一种实时视频通信传输控制方法,其特征在于:所述步骤30中重新调整编码过程参数的具体方式为:根据接收端反馈的监测参数,若帧丢失率超过第一丢失率阈值或帧抖动超过第一抖动阈值,则降低编码发送比特率至解码帧比特率,若反馈的帧丢失率小于一第二丢失率阈值且帧抖动小于一第二抖动阈值,则以一步长S增加编码的发送比特率; 在每次编码比特率上升或下降时,根据编码参数映射关系,得出与新比特率对应的新编码分辨率,若新分辨率与当前分辨率不同,则更新编码分辨率; 在调整编码发送比特率后,若帧丢失率仍无法消除且当前编码模式为单一 Slice模式,则更改编码模式为多Slice模式; 在每次减少或增加编码发送比特率后,均观察若干反馈周期,这些周期为评判周期;对于下降调整,评判周期内,若帧丢失率或帧抖动随之下降,则评判周期结束后,进行下一次调整,直到帧丢失率小于第二丢失率阈值且帧抖动小于第二抖动阈值,下降调整过程结束,若帧丢失率或帧抖动未随之下降,则为无效下降,累加无效下降次数,当无效下降次数大于一定值时,则下降调整过程结束;对于上升调整,若评判周期内,帧丢失率小于第二丢失率阈值且帧抖动小于第二抖动阈值,则评判周期结束后,进行下一次上升调整;若评判周期内,帧丢失率和帧抖动分别大于各自的第一阈值,则上升调整过程结束。
【文档编号】H04N7/14GK104253967SQ201410500673
【公开日】2014年12月31日 申请日期:2014年9月26日 优先权日:2014年9月26日
【发明者】梁二振 申请人:厦门亿联网络技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1