基于WebRTC弱网环境视频质量提升方法、系统及存储介质技术方案

技术编号:29305491 阅读:36 留言:0更新日期:2021-07-17 01:46
本发明专利技术涉及视频通话技术领域,具体是一种基于WebRTC弱网环境视频质量提升方法、系统及存储介质,基于WebRTC弱网环境视频质量提升方法,为依据视频帧类型逐步清理,包括:判断视频帧类型是否为关键帧,若不是,则跳过该帧;若是,则判断该帧缓存大小是否超过预设阀值;若未超过阀值则不进行清理;若超过阀值,则清除已缓存该帧的所有包;依次判断已缓存的所有视频帧。本发明专利技术增加了重发包序列号列表判断机制,依据视频帧类型逐步清理,而不是无脑完全清空,增加已缓存的、非完整视频帧利用率,防止视频跳帧现象,提升了用户的视频通话体验,适宜进一步推广应用。宜进一步推广应用。

Video quality improvement method, system and storage medium in weak network environment based on webrtc

【技术实现步骤摘要】
基于WebRTC弱网环境视频质量提升方法、系统及存储介质


[0001]本专利技术涉及视频通话
,具体是一种基于WebRTC弱网环境视频质量提升方法、系统及存储介质。

技术介绍

[0002]原WebRTC框架中在进行重发包序列号列表清理过程中存在一些比较生涩和不合理的流程:即每次都将关键帧之前的重发包序列号列表完全清空,而没有考虑当前列表的实际状态,会致使出现重发包序列号列表处理缺陷,将已经部分缓存的视频帧完全清除,导致获取图像帧时,要不然直接无法获取,要不然获取的是不完整的视频帧,导致马赛克、花屏、残影现象,影响通话体验和用户主观感受。

技术实现思路

[0003]针对上述问题,本专利技术提出一种基于WebRTC弱网环境视频质量提升方法、系统及存储介质。
[0004]本专利技术通过以下技术方案予以实现:
[0005]一种基于WebRTC弱网环境视频质量提升方法,依据视频帧类型逐步清理,包括:
[0006]判断视频帧类型是否为关键帧,若不是,则跳过该帧;
[0007]若是,则判断该帧缓存大小是否超过预设阀值;若未超过阀值则不进行清理;
[0008]若超过阀值,则清除已缓存该帧的所有包;
[0009]依次判断已缓存的所有视频帧。
[0010]进一步的,当视频帧能够解码或重发包序列号列表过大时,依据视频帧类型逐步清理。
[0011]进一步的,对接收到的视频帧数据包进行数据重排和缓存,将已接收到的数据缓存到包队列中等候新包插入,判断该视频帧数据包是否均已到达;
[0012]若该视频帧所有包都已到达,则完整性标志位做置位;
[0013]若存在遗漏的包,则将其序列号保存到重发包序列号队列中,并发送给发送端进行重发操作;
[0014]发送端接收到重发包队列后,根据当前网络状态判断是否发送重发包序列。
[0015]进一步的,若发送端评估当前网络丢包率小于40%、抖动小于100ms、延迟小于200ms,则发送重发包序列,否则不发送。
[0016]专利技术进一步提供了一种基于WebRTC弱网环境视频质量提升系统,包括:
[0017]接收器,用于视频通话时接收数据包;
[0018]缓存区,用于缓存接收器接收的数据包,对数据包按照不同的视频帧进行存储,并按照序列号重新排序,同时检测遗漏包数据,将遗漏包的序列号保存到重发包序列号队列中,并发送给另一端的发送器进行重发操作;
[0019]发送器,用于完成设备视频、音频帧的发送,以及接收重发包队列后判断当前网络
状态是否发送重发包序列;
[0020]编码控制器,用于视频帧能够解码或重发包序列号列表过大时,依据视频帧类型对视频帧进行逐步清理。
[0021]进一步的,若发送端评估当前网络丢包率小于40%、抖动小于100ms、延迟小于200ms,则发送器发送重发包序列,否则不发送。
[0022]进一步的,依据视频帧类型对视频帧进行逐步清理方式,具体如下:
[0023]判断视频帧类型是否为关键帧,若不是,则跳过该帧;
[0024]若是,则判断该帧缓存大小是否超过预设阀值;若未超过阀值则不进行清理;
[0025]若超过阀值,则清空已缓存该帧的所有包;
[0026]依次判断已缓存的所有视频帧。
[0027]在具有相同硬件基础的情况下,本专利技术方法具有一定的通配性,因此,本专利技术还提供一种计算机可读的存储介质,所述的存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述的至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行实现上述基于WebRTC弱网环境视频质量提升方法。
[0028]与现有技术相比,本专利技术具有以下有益效果:
[0029]本专利技术增加了重发包序列号列表判断机制,依据视频帧类型逐步清理,而不是无脑完全清空,增加已缓存的、非完整视频帧利用率,防止视频跳帧现象,提升了用户的视频通话体验,适宜进一步推广应用。
具体实施方式
[0030]为使本专利技术实施方式的目的、技术方案和优点更加清楚,下面对本专利技术实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本专利技术一部分实施方式,而不是全部的实施方式。基于本专利技术中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本专利技术保护的范围。基于本专利技术中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本专利技术保护的范围。
[0031]一种基于WebRTC弱网环境视频质量提升方法,为依据视频帧类型逐步清理,包括:
[0032]对接收到的视频帧数据包进行数据重排和缓存,将已接收到的数据缓存到包队列中等候新包插入,判断该视频帧数据包是否均已到达;
[0033]若该视频帧所有包都已到达,则完整性标志位做置位;
[0034]若存在遗漏的包,则将其序列号保存到重发包序列号队列中,并发送给发送端进行重发操作;
[0035]发送端接收到重发包队列后,根据当前网络状态判断是否发送重发包序列;即若发送端评估当前网络丢包率小于40%、抖动小于100ms、延迟小于200ms,则发送重发包序列,否则不发送。
[0036]当视频帧能够解码或重发包序列号列表过大时,依据视频帧类型逐步清理,具体如下:
[0037]判断视频帧类型是否为关键帧,若不是,则跳过该帧;
[0038]若是,则判断该帧缓存大小是否超过预设阀值(其中阀值为经验值);若未超过阀
值则不进行清理;
[0039]若超过阀值,则清除已缓存该帧的所有包;
[0040]依次判断已缓存的所有视频帧。
[0041]本专利技术增加了重发包序列号列表判断机制,依据视频帧类型逐步清理,而不是无脑完全清空,增加已缓存的、非完整视频帧利用率,防止视频跳帧现象。
[0042]本实施例进一步提供了一种基于WebRTC弱网环境视频质量提升系统,包括:
[0043]接收器,用于视频通话时接收数据包;
[0044]缓存区,用于缓存接收器接收的数据包,对数据包按照不同的视频帧进行存储,并按照序列号重新排序,同时检测遗漏包数据,将遗漏包的序列号保存到重发包序列号队列中,并发送给另一端的发送器进行重发操作;
[0045]作为进一步改进的,在排序过程中,缓存区完成遗漏包数据摸查,将遗漏包的序列号增加到重发包序列号队列中,完成遗漏包的序列号登记,方便后续查询。
[0046]发送器,用于完成设备视频、音频帧的发送,以及接收重发包队列后判断当前网络状态是否发送重发包序列;若评估当前网络丢包率小于40%、抖动小于100ms、延迟小于200ms,则发送器发送重发包序列,否则不发送。
[0047]编码控制器,用于视频帧能够解码或重发包序列号列表过大时,依据视频帧类型对视频帧进行逐步清理,具体如下:
[0048]判断视频帧类型是否为关键帧,若不是,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于WebRTC弱网环境视频质量提升方法,其特征在于,依据视频帧类型逐步清理,包括:判断视频帧类型是否为关键帧,若不是,则跳过该帧;若是,则判断该帧缓存大小是否超过预设阀值;若未超过阀值则不进行清理;若超过阀值,则清除已缓存该帧的所有包;依次判断已缓存的所有视频帧。2.根据权利要求1所述的基于WebRTC弱网环境视频质量提升的解决方法,其特征在于,当视频帧能够解码或重发包序列号列表过大时,依据视频帧类型逐步清理。3.根据权利要求2所述的基于WebRTC弱网环境视频质量提升的解决方法,其特征在于,对接收到的视频帧数据包进行数据重排和缓存,将已接收到的数据缓存到包队列中等候新包插入,判断该视频帧数据包是否均已到达;若该视频帧所有包都已到达,则完整性标志位做置位;若存在遗漏的包,则将其序列号保存到重发包序列号队列中,并发送给发送端进行重发操作;发送端接收到重发包队列后,根据当前网络状态判断是否发送重发包序列。4.根据权利要求3所述的基于WebRTC弱网环境视频质量提升的解决方法,其特征在于,发送器会进行网络状态评估:若网络丢包率小于40%、抖动小于100ms、延迟小于200ms,则发送重发包序列,否则不发送。5.一种基于WebRTC弱网环境视频质量提升系统,其特征在于,包括:接收器,用于视频通话时接收数据包;缓存区...

【专利技术属性】
技术研发人员:冯涛游炳坤林昱
申请(专利权)人:睿云联厦门网络通讯技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1