基于纠删码的视频关键帧冗余传输方法和系统技术方案

技术编号:33624131 阅读:16 留言:0更新日期:2022-06-02 00:51
本发明专利技术实施例涉及视频传输技术领域,公开了一种基于纠删码的视频关键帧冗余传输方法和系统。该方法包括:发送端根据视频流数据创建I帧时,对创建的I帧使用纠删码算法生成校验数据块,在构建P帧时,均以上一个I帧作为参考;接收端接收当前数据,并判断当前数据是否属于I帧或校验数据块,如果属于I帧,则判断I帧有无丢包,如果没有丢包,则直接丢弃校验数据块,如果丢包数目小于或等于纠删码冗余度,则使用纠删码算法重构丢失的数据;然后对视频进行解码。实施本发明专利技术实施例,可以减少对延迟敏感的视频直播业务在传输过程中因数据丢包造成的画面卡顿,提高用户体验。提高用户体验。提高用户体验。

【技术实现步骤摘要】
基于纠删码的视频关键帧冗余传输方法和系统


[0001]本专利技术涉及视频传输
,具体涉及一种基于纠删码的视频关键帧冗余传输方法和系统。

技术介绍

[0002]视频是由一连串的画面(帧)组合而成,视频图像的数据量非常大,例如,未经压缩的1080分辨率视频比特率可达1.5Gbit/s(1920*1080*24bits*30f/s)。数据若不经压缩而保存或者经网络传输会占用非常大的存储空间或网络带宽。由于原始图像内部(帧内)及图像序列之间(帧间)在空间上或时间上存在很大的冗余度,因此产生了多种视频压缩方法。
[0003]视频图像序列在时间上具有明显相关性:当前图像与其上一个或下一个图像的内容往往只有细小差别,对视频会议等场景尤其如此。因此可以只对相邻视频帧中变化的部分进行编码以减少数据量(即压缩)。现有的视频编码标准,如H.264和MPEG

4,定义了3种主要类型帧:I帧(帧内编码帧)、P帧(预测帧)、B帧(双向预测帧)。I帧只使用本帧内的数据进行编码,是其他帧编码的基础。P帧使用前面的一个I帧或P帧作为参考(获取差值)进行编码;B帧是结合前面的一个I帧(或P帧)和后面的一个I帧(或P帧)进行编码。I帧数据量较大但数目较少。由于I帧可被P帧或B帧用作参考,因此I帧属于关键帧,I帧的数据包若有丢失,不但影响I帧本身的显示,亦影响有依赖关系的P帧或B帧的解码。一个I帧以及其后与之有依赖关系的P帧和B帧,组成一个图像群组GoP(Group of Pictures)(图1)。为避免一帧画面失真持续影响其后所有与其有依赖关系的帧的播放,一般每隔几秒钟生成一个新的GoP。
[0004]传统的电视直播,包括基于互联网的网络电视,因为不涉及与电视观众的互动,所以即使视频画面与现场有数十秒延迟,只要视频能流畅播放,用户体验不受影响。与电视直播相比,诸如视像电话、远程会议、远程手术等对延迟敏感、交互性强的实时视频直播流业务,确保视频低延迟是提高用户体验的关键。低延迟直播对编码有一定限制,一般要求直播流中不包含 B 帧,以避免因解码时须等待其后P帧到来所产生的延迟。
[0005]不含B帧的视频流可降低延迟,但一个GoP内前后的P帧依然有依赖关系(图2),因此一个P帧的丢失仍会影响余下所有P帧的解码,造成画面卡顿。

技术实现思路

[0006]针对所述缺陷,本专利技术实施例公开了一种基于纠删码的视频关键帧冗余传输方法和系统,其减少诸如视频会议等对延迟敏感的视频直播业务在传输过程中因数据丢包造成的画面卡顿,提高用户体验。
[0007]本专利技术实施例第一方面公开一种基于纠删码的视频关键帧冗余传输方法,所述方法包括:发送端根据视频流数据创建I帧时,对所述创建的I帧使用纠删码算法生成校验数据块,在构建P帧时,均以上一个I帧作为参考;接收端接收当前数据,并判断当前数据是否属于I帧或校验数据块,如果属于I帧,
则判断所述I帧有无丢包,如果没有丢包,则直接丢弃校验数据块,如果丢包数目小于或等于纠删码冗余度,则使用纠删码算法重构丢失的数据;然后对所述视频进行解码。
[0008]作为较佳的实施例,在本专利技术实施例的第一方面中,发送端根据视频流数据创建I帧时,对所述创建的I帧使用纠删码算法生成校验数据块,在构建P帧时,均以上一个I帧作为参考,包括:发送端接收视频流数据;发送端根据I帧的生成间隔或发送端和接收端建立连接时的协商结果判断是否以当前视频流数据创建I帧;如果是以当前视频流数据创建I帧,则创建I帧,并对所述创建的I帧使用纠删码算法生成校验数据块,将所述I帧和校验数据块打包并发送给接收端;如果不是以当前视频流数据创建I帧,则构建P帧序列,每个P帧序列中的P帧均以上一个相邻的I帧作为参考,并将所述P帧序列打包发送给接收端。
[0009]作为较佳的实施例,在本专利技术实施例的第一方面中,创建I帧,并对所述创建的I帧使用纠删码算法生成校验数据块,将所述I帧和校验数据块打包并发送给接收端,包括:创建I帧并将I帧数据平均分割成N块,使用标准纠删码算法对所述N块的I帧数据生成校验数据块, N为正整数且N≥2;将所述N块的I帧数据和校验数据块按序打包,并发送给接收端。
[0010]作为较佳的实施例,在本专利技术实施例的第一方面中,当所述I帧数据无法平均分割成N块时,在所述I帧数据的尾部使用0填充,直至填充后的I帧数据被平均分割成N块。
[0011]作为较佳的实施例,在本专利技术实施例的第一方面中,使用纠删码算法重构丢失的数据,包括:使用标准纠删码算法重构丢失的I帧数据,形成重构I帧数据包,并将接收到的I帧数据包和重构I帧数据包按发送端打包顺序排列后进行视频解码。
[0012]作为较佳的实施例,在本专利技术实施例的第一方面中,当发送端接收的当前数据为P帧时,则直接进行视频解码。
[0013]本专利技术实施例第二方面公开了基于纠删码的视频关键帧冗余传输系统,其包括:发送设备和接收设备,所述发送设备和接收设备通过UDP/IP协议进行通讯;其中:发送设备,用于根据视频流数据创建I帧时,对所述创建的I帧使用纠删码算法生成校验数据块,在构建P帧时,均以上一个I帧作为参考;接收设备,用于接收当前数据,并判断当前数据是否属于I帧或校验数据块,如果属于I帧,则判断所述I帧有无丢包,如果没有丢包,则直接丢弃校验数据块,如果丢包数目小于或等于纠删码冗余度,则使用纠删码算法重构丢失的数据;然后对所述视频进行解码。
[0014]作为较佳的实施例,在本专利技术实施例的第二方面中,所述发送设备具体包括:第一接收模块,用于接收视频流数据;第一判断模块,用于根据I帧的生成间隔或发送端和接收端建立连接时的协商结果判断是否以当前视频流数据创建I帧;第一创建模块,用于如果是以当前视频流数据创建I帧,则创建I帧,并对所述创建的I帧使用纠删码算法生成校验数据块,将所述I帧和校验数据块打包并发送给接收端;第二创建模块,用于如果不是以当前视频流数据创建I帧,则构建P帧序列,每个P
帧序列中的P帧均以上一个相邻的I帧作为参考,并将所述P帧序列打包发送给接收端。
[0015]作为较佳的实施例,在本专利技术实施例的第二方面中,所述接收设备,具体包括:第一接收模块,用于接收当前数据;第二判断模块,用于判断当前数据是否属于I帧或校验数据块;第三判断模块,用于在当前数据属于I帧时,判断所述I帧是否存在丢包;重构模块,用于在I帧有丢包且丢包数目小于或等于纠删码冗余度时,使用纠删码算法重构丢失的数据;丢弃模块,用于在满足以下任意条件时丢弃校验数据块,条件一:在当前数据为I帧且不存在丢包;条件二:当前数据为I帧并存在丢包,且丢包数目大于纠删码冗余度;条件三:当前数据为I帧并存在丢包,且丢包数目小于或等于纠删码冗余度,且使用纠删码算法重构丢失的数据。
[0016]解码模块,用于在当前数据为P帧或完整的I帧时进行解码;所述完整的I帧为当前数据为I帧且不存在丢包,或者对丢包的I帧数据进行重构丢失数据形成重构后将接收的I帧数据和重构的I帧数据按原顺序排列后形成的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于纠删码的视频关键帧冗余传输方法,其特征在于,包括:发送端根据视频流数据创建I帧时,对所述创建的I帧使用纠删码算法生成校验数据块,在构建P帧时,均以上一个I帧作为参考;接收端接收当前数据,并判断当前数据是否属于I帧或校验数据块,如果属于I帧,则判断所述I帧有无丢包,如果没有丢包,则直接丢弃校验数据块,如果丢包数目小于或等于纠删码冗余度,则使用纠删码算法重构丢失的数据;然后对所述视频进行解码。2.根据权利要求1所述的基于纠删码的视频关键帧冗余传输方法,其特征在于,发送端根据视频流数据创建I帧时,对所述创建的I帧使用纠删码算法生成校验数据块,在构建P帧时,均以上一个I帧作为参考,包括:发送端接收视频流数据;发送端根据I帧的生成间隔或发送端和接收端建立连接时的协商结果判断是否以当前视频流数据创建I帧;如果是以当前视频流数据创建I帧,则创建I帧,并对所述创建的I帧使用纠删码算法生成校验数据块,将所述I帧和校验数据块打包并发送给接收端;如果不是以当前视频流数据创建I帧,则构建P帧序列,每个P帧序列中的P帧均以上一个相邻的I帧作为参考,并将所述P帧序列打包发送给接收端。3.根据权利要求2所述的基于纠删码的视频关键帧冗余传输方法,其特征在于,创建I帧,并对所述创建的I帧使用纠删码算法生成校验数据块,将所述I帧和校验数据块打包并发送给接收端,包括:创建I帧并将I帧数据平均分割成N块,使用标准纠删码算法对所述N块的I帧数据生成校验数据块, N为正整数且N≥2;将所述N块的I帧数据和校验数据块按序打包,并发送给接收端。4.根据权利要求3所述的基于纠删码的视频关键帧冗余传输方法,其特征在于,当所述I帧数据无法平均分割成N块时,在所述I帧数据的尾部使用0填充,直至填充后的I帧数据被平均分割成N块。5.根据权利要求1所述的基于纠删码的视频关键帧冗余传输方法,其特征在于,使用纠删码算法重构丢失的数据,包括:使用标准纠删码算法重构丢失的I帧数据,形成重构I帧数据包,并将接收到的I帧数据包和重构I帧数据包按发送端打包顺序排列后进行视频解码。6.根据权利要求1所述的基于纠删码的视频关键帧冗余传输方法,其特征在于,当发送端接收的当前数据为P帧时,则直接进行视频解...

【专利技术属性】
技术研发人员:刘国良李茂沛
申请(专利权)人:广州番禺职业技术学院
类型:发明
国别省市:

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

1