CN114554198A - 基于纠删码的视频关键帧冗余传输方法和系统 - Google Patents
基于纠删码的视频关键帧冗余传输方法和系统 Download PDFInfo
- Publication number
- CN114554198A CN114554198A CN202210447201.0A CN202210447201A CN114554198A CN 114554198 A CN114554198 A CN 114554198A CN 202210447201 A CN202210447201 A CN 202210447201A CN 114554198 A CN114554198 A CN 114554198A
- Authority
- CN
- China
- Prior art keywords
- frame
- data
- packet loss
- erasure code
- video
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 230000005540 biological transmission Effects 0.000 title claims abstract description 30
- 238000004806 packaging method and process Methods 0.000 claims description 11
- 238000012856 packing Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 6
- 238000012795 verification Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/114—Adapting the group of pictures [GOP] structure, e.g. number of B-frames between two anchor frames
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明实施例涉及视频传输技术领域,公开了一种基于纠删码的视频关键帧冗余传输方法和系统。该方法包括:发送端根据视频流数据创建I帧时,对创建的I帧使用纠删码算法生成校验数据块,在构建P帧时,均以上一个I帧作为参考;接收端接收当前数据,并判断当前数据是否属于I帧或校验数据块,如果属于I帧,则判断I帧有无丢包,如果没有丢包,则直接丢弃校验数据块,如果丢包数目小于或等于纠删码冗余度,则使用纠删码算法重构丢失的数据;然后对视频进行解码。实施本发明实施例,可以减少对延迟敏感的视频直播业务在传输过程中因数据丢包造成的画面卡顿,提高用户体验。
Description
技术领域
本发明涉及视频传输技术领域,具体涉及一种基于纠删码的视频关键帧冗余传输方法和系统。
背景技术
视频是由一连串的画面(帧)组合而成,视频图像的数据量非常大,例如,未经压缩的1080分辨率视频比特率可达1.5Gbit/s(1920*1080*24bits*30f/s)。数据若不经压缩而保存或者经网络传输会占用非常大的存储空间或网络带宽。由于原始图像内部(帧内)及图像序列之间(帧间)在空间上或时间上存在很大的冗余度,因此产生了多种视频压缩方法。
视频图像序列在时间上具有明显相关性:当前图像与其上一个或下一个图像的内容往往只有细小差别,对视频会议等场景尤其如此。因此可以只对相邻视频帧中变化的部分进行编码以减少数据量(即压缩)。现有的视频编码标准,如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。
传统的电视直播,包括基于互联网的网络电视,因为不涉及与电视观众的互动,所以即使视频画面与现场有数十秒延迟,只要视频能流畅播放,用户体验不受影响。与电视直播相比,诸如视像电话、远程会议、远程手术等对延迟敏感、交互性强的实时视频直播流业务,确保视频低延迟是提高用户体验的关键。低延迟直播对编码有一定限制,一般要求直播流中不包含 B 帧,以避免因解码时须等待其后P帧到来所产生的延迟。
不含B帧的视频流可降低延迟,但一个GoP内前后的P帧依然有依赖关系(图2),因此一个P帧的丢失仍会影响余下所有P帧的解码,造成画面卡顿。
发明内容
针对所述缺陷,本发明实施例公开了一种基于纠删码的视频关键帧冗余传输方法和系统,其减少诸如视频会议等对延迟敏感的视频直播业务在传输过程中因数据丢包造成的画面卡顿,提高用户体验。
本发明实施例第一方面公开一种基于纠删码的视频关键帧冗余传输方法,所述方法包括:
发送端根据视频流数据创建I帧时,对所述创建的I帧使用纠删码算法生成校验数据块,在构建P帧时,均以上一个I帧作为参考;
接收端接收当前数据,并判断当前数据是否属于I帧或校验数据块,如果属于I帧,则判断所述I帧有无丢包,如果没有丢包,则直接丢弃校验数据块,如果丢包数目小于或等于纠删码冗余度,则使用纠删码算法重构丢失的数据;然后对所述视频进行解码。
作为较佳的实施例,在本发明实施例的第一方面中,发送端根据视频流数据创建I帧时,对所述创建的I帧使用纠删码算法生成校验数据块,在构建P帧时,均以上一个I帧作为参考,包括:
发送端接收视频流数据;
发送端根据I帧的生成间隔或发送端和接收端建立连接时的协商结果判断是否以当前视频流数据创建I帧;
如果是以当前视频流数据创建I帧,则创建I帧,并对所述创建的I帧使用纠删码算法生成校验数据块,将所述I帧和校验数据块打包并发送给接收端;
如果不是以当前视频流数据创建I帧,则构建P帧序列,每个P帧序列中的P帧均以上一个相邻的I帧作为参考,并将所述P帧序列打包发送给接收端。
作为较佳的实施例,在本发明实施例的第一方面中,创建I帧,并对所述创建的I帧使用纠删码算法生成校验数据块,将所述I帧和校验数据块打包并发送给接收端,包括:
创建I帧并将I帧数据平均分割成N块,使用标准纠删码算法对所述N块的I帧数据生成校验数据块, N为正整数且N≥2;
将所述N块的I帧数据和校验数据块按序打包,并发送给接收端。
作为较佳的实施例,在本发明实施例的第一方面中,当所述I帧数据无法平均分割成N块时,在所述I帧数据的尾部使用0填充,直至填充后的I帧数据被平均分割成N块。
作为较佳的实施例,在本发明实施例的第一方面中,使用纠删码算法重构丢失的数据,包括:
使用标准纠删码算法重构丢失的I帧数据,形成重构I帧数据包,并将接收到的I帧数据包和重构I帧数据包按发送端打包顺序排列后进行视频解码。
作为较佳的实施例,在本发明实施例的第一方面中,当发送端接收的当前数据为P帧时,则直接进行视频解码。
本发明实施例第二方面公开了基于纠删码的视频关键帧冗余传输系统,其包括:发送设备和接收设备,所述发送设备和接收设备通过UDP/IP协议进行通讯;其中:
发送设备,用于根据视频流数据创建I帧时,对所述创建的I帧使用纠删码算法生成校验数据块,在构建P帧时,均以上一个I帧作为参考;
接收设备,用于接收当前数据,并判断当前数据是否属于I帧或校验数据块,如果属于I帧,则判断所述I帧有无丢包,如果没有丢包,则直接丢弃校验数据块,如果丢包数目小于或等于纠删码冗余度,则使用纠删码算法重构丢失的数据;然后对所述视频进行解码。
作为较佳的实施例,在本发明实施例的第二方面中,所述发送设备具体包括:
第一接收模块,用于接收视频流数据;
第一判断模块,用于根据I帧的生成间隔或发送端和接收端建立连接时的协商结果判断是否以当前视频流数据创建I帧;
第一创建模块,用于如果是以当前视频流数据创建I帧,则创建I帧,并对所述创建的I帧使用纠删码算法生成校验数据块,将所述I帧和校验数据块打包并发送给接收端;
第二创建模块,用于如果不是以当前视频流数据创建I帧,则构建P帧序列,每个P帧序列中的P帧均以上一个相邻的I帧作为参考,并将所述P帧序列打包发送给接收端。
作为较佳的实施例,在本发明实施例的第二方面中,所述接收设备,具体包括:
第一接收模块,用于接收当前数据;
第二判断模块,用于判断当前数据是否属于I帧或校验数据块;
第三判断模块,用于在当前数据属于I帧时,判断所述I帧是否存在丢包;
重构模块,用于在I帧有丢包且丢包数目小于或等于纠删码冗余度时,使用纠删码算法重构丢失的数据;
丢弃模块,用于在满足以下任意条件时丢弃校验数据块,条件一:在当前数据为I帧且不存在丢包;条件二:当前数据为I帧并存在丢包,且丢包数目大于纠删码冗余度;条件三:当前数据为I帧并存在丢包,且丢包数目小于或等于纠删码冗余度,且使用纠删码算法重构丢失的数据。
解码模块,用于在当前数据为P帧或完整的I帧时进行解码;所述完整的I帧为当前数据为I帧且不存在丢包,或者对丢包的I帧数据进行重构丢失数据形成重构后将接收的I帧数据和重构的I帧数据按原顺序排列后形成的I帧数据。
与现有技术相比,本发明实施例具有以下有益效果:
本发明实施例发送端对视频流的I帧做冗余,且其后所有P帧均以I帧作为参考。若传输过程中发生小量丢包,接收端可即时、本地恢复数据。另外,由于冗余本身会加重网络传输开销,因此本系统使用纠删码技术以尽可能降低冗余带来的负面影响。
发送端在生成I帧的同时,采用标准的纠删码计算出校验数据后,把校验数据打包紧随I帧发送。接收端接收数据后根据数据包序列号判断是否发生I帧丢包以及丢包的严重程度。假如丢包在可恢复范围内,即丢包数量不大于数据保护级别,调用数据恢复模块,把丢失数据计算出来,按序提交上层应用;假如丢包不可恢复,则直接把数据丢弃。对于接收到的P帧,按序提交上层应用。
本系统具有如下特点:1. 校验生成、数据恢复等操作对上层应用透明;2. 用户可自行配置冗余度,以期在数据保护级别与冗余开销之间取得平衡; 3. 当丢包没有发生时,接收端没有计算校验的开销。4. 以纠删码而不是副本作为冗余手段,可降低对网络带宽的额外开销。5. 所有P帧的解码均以对上一个I帧作为参考,因此当前P帧丢包不会影响下一个P帧的解码。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是一个标准图像群组(GoP)及其不同帧之间依赖关系示意图;
图2是无B帧直播流的I帧与P帧依赖关系示意图;
图3是本发明实施例提出的I帧与P帧依赖关系示意图;
图4是本发明实施例公开的一种基于纠删码的视频关键帧冗余传输方法的流程示意图;
图5是本发明实施例公开的I帧数据和校验数据的配置示意图;
图6是本发明实施例公开的一种基于纠删码的视频关键帧冗余传输系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书中的术语“第一”、“第二”、“第三”、“第四”等是用于区别不同的对象,而不是用于描述特定顺序。本发明实施例的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,示例性地,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例公开了一种基于纠删码的视频关键帧冗余传输方法和系统,该方法可减少诸如视频会议等对延迟敏感的视频直播业务在传输过程中因数据丢包造成的画面卡顿,提高用户体验,以下结合附图进行详细描述。
实施例一
使用可靠的传输协议传输数据可导致延迟增加,因此对延迟敏感的应用,可使用不可靠的传输协议传输,但这样会引入数据丢包的问题,造成画面卡顿。本发明之目的在于设计一种对视频流关键帧传输使用纠删码冗余的数据保护方法,以应对不可靠的传输协议传输过程中的丢包问题。
互联网传输协议主要有TCP与UDP两种。TCP下,发送方需要等待接收方对数据的确认信息,以确定继续发送余下数据还是重发数据,因此传输是可靠的但会造成延迟增加;UDP没有确认环节,因此数据存在丢失风险但传输延迟较低。文件传输一般只使用TCP,但视频会议等应用可采用UDP。
纠删码是一种采用数据冗余保护数据的方法,与传统的副本技术不同在于纠删码以较低的存储开销、较高的CPU计算开销达到数据保护的目的。常见的纠删码,例如Reed-Solomon编码,已广泛应用于数据存储领域。
在本发明较佳的实施例中,针对每个GoP而言:视频流的关键帧(I帧)使用纠删码冗余。若传输过程中发生小部分丢包,接收端可本地、即时重构丢失数据并对上层应用透明。而关键帧之后的预测帧(P帧)编码全部以关键帧作为参考(图3所示)。若传输过程中发生P帧丢包,其后的P帧解码不受影响
具体地,请参阅图4,图4是本发明实施例公开的一种基于纠删码的视频关键帧冗余传输方法的流程示意图。如图4所示,该基于纠删码的视频关键帧冗余传输方法包括两个部分的步骤:即编码过程和解码过程。
其中,发送端操作过程(编码)包括以下步骤:
第一步,向发送端输入视频流数据。
在本发明较佳的实施例中,使用直播视频流经RTP协议传输为例,对整个过程中的编码解码进行解释和说明。
第二步,根据I帧的生成间隔(例如2s * 30fps),判断是否以当前视频流数据创建I帧(生成间隔可预先设置,或发送端与接收端建立连接时协商)。
第三步,假如否,则构建P帧序列,每个P帧均以上一个I帧作为参考(图3),并用RTP协议把构建的每个P帧的数据打包,然后执行第七步。
第四步,假如是,则创建I帧并用RTP协议把数据打包发出的同时把I帧读入内存。当前常见尺寸及清晰度的视频,一个I帧的大小一般为几十KB~几百KB。
第五步,当整个I帧创建完毕后,对I帧数据平均分割成N块,N为预先设置的大小,若无法平均分割,可采用0填充数据尾部,直至可平均分割为止;使用标准纠删码算法生成校验数据块。
图5示出了一种配置保护数据的示意图,示例性地,图5示出了使用 12 + 4的配置方式实现数据保护,即将I帧数据切分为12等分,生成4份校验数据。在这种配置下,根据纠删码的性质,12块I帧数据中的任意4块丢失,丢失的数据可从剩余12块(包括4份校验数据)数据恢复。
第六步,用RTP协议把I帧和校验数据块按序打包,校验数据在RTP协议的载荷类型(“Payload Type”)字段设置一个与接收端约定好的数,例如127等。
第七步,发送数据。
将使用RTP协议打包好的P帧数据或I帧和校验数据块通过UDP/IP协议使用IP网络发送至接收端。
接收端的视频解码过程包括以下步骤:
A,判断当前接收的数据是否属于I帧或校验数据块,如果不是,则转去执行F步骤,如果是,则执行B步骤。
B,检测I帧有无丢包,没有则转去执行F步骤,并丢弃校验数据包,否则执行C步骤。
C,确定I帧丢包严重程度,若丢包数目大于纠删码冗余度,此时数据丢失已不可避免,直接丢弃校验数据包,否则转去执行D步骤。
D,使用标准纠删码算法重构丢失数据,重构方法为纠删码常规技术,这里不再赘述。
E,把接收到的I帧数据包与重构出来的I帧数据包按原顺序排列后转去执行F步骤,并丢弃校验数据包。
F,对I帧数据或P帧数据进行解码。
实施例二
本发明实施例二公开了一种基于纠删码的视频关键帧冗余传输系统,请参照图6所示,该系统主要包括发送设备10和接收设备20,其中,发送设备用于对视频进行编码,接收设备通过UDP/IP协议接收发送设备发送的编码后的视频数据,并对该视频数据进行解码。
具体地,发送设备10,用于根据视频流数据创建I帧时,对所述创建的I帧使用纠删码算法生成校验数据块,在构建P帧时,均以上一个I帧作为参考;
接收设备20,用于接收当前数据,并判断当前数据是否属于I帧或校验数据块,如果属于I帧,则判断所述I帧有无丢包,如果没有丢包,则直接丢弃校验数据块,如果丢包数目小于或等于纠删码冗余度,则使用纠删码算法重构丢失的数据;然后对所述视频进行解码。
优选地,所述发送设备10具体可以包括:
第一接收模块,用于接收视频流数据;
第一判断模块,用于根据I帧的生成间隔或发送端和接收端建立连接时的协商结果判断是否以当前视频流数据创建I帧;
第一创建模块,用于如果是以当前视频流数据创建I帧,则创建I帧,并对所述创建的I帧使用纠删码算法生成校验数据块,将所述I帧和校验数据块打包并发送给接收端;
第二创建模块,用于如果不是以当前视频流数据创建I帧,则构建P帧序列,每个P帧序列中的P帧均以上一个相邻的I帧作为参考,并将所述P帧序列打包发送给接收端。
优选地,所述接收设备20,具体可以包括:
第一接收模块,用于接收当前数据;
第二判断模块,用于判断当前数据是否属于I帧或校验数据块;
第三判断模块,用于在当前数据属于I帧时,判断所述I帧是否存在丢包;
重构模块,用于在I帧有丢包且丢包数目小于或等于纠删码冗余度时,使用纠删码算法重构丢失的数据;
丢弃模块,用于在满足以下任意条件时丢弃校验数据块,条件一:在当前数据为I帧且不存在丢包;条件二:当前数据为I帧并存在丢包,且丢包数目大于纠删码冗余度;条件三:当前数据为I帧并存在丢包,且丢包数目小于或等于纠删码冗余度,且使用纠删码算法重构丢失的数据。
解码模块,用于在当前数据为P帧或完整的I帧时进行解码;所述完整的I帧为当前数据为I帧且不存在丢包,或者对丢包的I帧数据进行重构丢失数据形成重构后将接收的I帧数据和重构的I帧数据按原顺序排列后形成的I帧数据。
本发明较佳的实施例中,发送设备在生成I帧的同时,采用标准的纠删码计算出校验数据后,把校验数据打包紧随I帧发送。接收设备接收数据后根据数据包序列号判断是否发生I帧丢包以及丢包的严重程度。假如丢包在可恢复范围内,即丢包数量不大于数据保护级别,调用数据重构模块,把丢失数据计算出来,按序提交上层应用;假如丢包不可恢复,则直接把数据丢弃。对于接收到的P帧,按序提交上层应用,进行解码操作。
在本发明的各种实施例中,应理解,所述各过程的序号的大小并不意味着执行顺序的必然先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可位于一个地方,或者也可以分布到多个网络单元上。可根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。所述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元若以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可获取的存储器中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或者部分,可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干请求用以使得一台计算机设备(可以为个人计算机、服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本发明的各个实施例所述方法的部分或全部步骤。
在本发明所提供的实施例中,应理解,“与A对应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其他信息确定B。
本领域普通技术人员可以理解所述实施例的各种方法中的部分或全部步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
以上对本发明实施例公开的一种基于纠删码的视频关键帧冗余传输方法和系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (9)
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帧时,则直接进行视频解码。
7.一种基于纠删码的视频关键帧冗余传输系统,其特征在于,其包括:发送设备和接收设备,所述发送设备和接收设备通过UDP/IP协议进行通讯;其中:
发送设备,用于根据视频流数据创建I帧时,对所述创建的I帧使用纠删码算法生成校验数据块,在构建P帧时,均以上一个I帧作为参考;
接收设备,用于接收当前数据,并判断当前数据是否属于I帧或校验数据块,如果属于I帧,则判断所述I帧有无丢包,如果没有丢包,则直接丢弃校验数据块,如果丢包数目小于或等于纠删码冗余度,则使用纠删码算法重构丢失的数据;然后对所述视频进行解码。
8.根据权利要求7所述的基于纠删码的视频关键帧冗余传输系统,其特征在于,所述发送设备具体包括:
第一接收模块,用于接收视频流数据;
第一判断模块,用于根据I帧的生成间隔或发送端和接收端建立连接时的协商结果判断是否以当前视频流数据创建I帧;
第一创建模块,用于如果是以当前视频流数据创建I帧,则创建I帧,并对所述创建的I帧使用纠删码算法生成校验数据块,将所述I帧和校验数据块打包并发送给接收端;
第二创建模块,用于如果不是以当前视频流数据创建I帧,则构建P帧序列,每个P帧序列中的P帧均以上一个相邻的I帧作为参考,并将所述P帧序列打包发送给接收端。
9.根据权利要求7所述的基于纠删码的视频关键帧冗余传输系统,其特征在于,所述接收设备,具体包括:
第一接收模块,用于接收当前数据;
第二判断模块,用于判断当前数据是否属于I帧或校验数据块;
第三判断模块,用于在当前数据属于I帧时,判断所述I帧是否存在丢包;
重构模块,用于在I帧有丢包且丢包数目小于或等于纠删码冗余度时,使用纠删码算法重构丢失的数据;
丢弃模块,用于在满足以下任意条件时丢弃校验数据块,条件一:在当前数据为I帧且不存在丢包;条件二:当前数据为I帧并存在丢包,且丢包数目大于纠删码冗余度;条件三:当前数据为I帧并存在丢包,且丢包数目小于或等于纠删码冗余度,且使用纠删码算法重构丢失的数据;
解码模块,用于在当前数据为P帧或完整的I帧时进行解码;所述完整的I帧为当前数据为I帧且不存在丢包,或者对丢包的I帧数据进行重构丢失数据形成重构后将接收的I帧数据和重构的I帧数据按原顺序排列后形成的I帧数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210447201.0A CN114554198B (zh) | 2022-04-27 | 2022-04-27 | 基于纠删码的视频关键帧冗余传输方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210447201.0A CN114554198B (zh) | 2022-04-27 | 2022-04-27 | 基于纠删码的视频关键帧冗余传输方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114554198A true CN114554198A (zh) | 2022-05-27 |
CN114554198B CN114554198B (zh) | 2022-08-26 |
Family
ID=81667245
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210447201.0A Active CN114554198B (zh) | 2022-04-27 | 2022-04-27 | 基于纠删码的视频关键帧冗余传输方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114554198B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08340540A (ja) * | 1995-06-14 | 1996-12-24 | Matsushita Electric Ind Co Ltd | 画像フレームの符号化又は復号化の方法及びその装置 |
US6289054B1 (en) * | 1998-05-15 | 2001-09-11 | North Carolina University | Method and systems for dynamic hybrid packet loss recovery for video transmission over lossy packet-based network |
JP2009272684A (ja) * | 2008-04-30 | 2009-11-19 | Saxa Inc | 映像通信装置 |
CN102845008A (zh) * | 2011-04-25 | 2012-12-26 | 华为技术有限公司 | 报文冗余度调整方法、相关设备及网络系统 |
WO2017157303A1 (zh) * | 2016-03-15 | 2017-09-21 | 中兴通讯股份有限公司 | 实时通信中的抗丢包方法、装置和系统 |
WO2018006861A1 (zh) * | 2016-07-07 | 2018-01-11 | 腾讯科技(深圳)有限公司 | 一种视频数据处理方法及装置 |
US20190268601A1 (en) * | 2018-02-26 | 2019-08-29 | Microsoft Technology Licensing, Llc | Efficient streaming video for static video content |
CN112333470A (zh) * | 2020-10-27 | 2021-02-05 | 杭州叙简科技股份有限公司 | 一种基于视频帧的fec纠错系统 |
-
2022
- 2022-04-27 CN CN202210447201.0A patent/CN114554198B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08340540A (ja) * | 1995-06-14 | 1996-12-24 | Matsushita Electric Ind Co Ltd | 画像フレームの符号化又は復号化の方法及びその装置 |
US6289054B1 (en) * | 1998-05-15 | 2001-09-11 | North Carolina University | Method and systems for dynamic hybrid packet loss recovery for video transmission over lossy packet-based network |
JP2009272684A (ja) * | 2008-04-30 | 2009-11-19 | Saxa Inc | 映像通信装置 |
CN102845008A (zh) * | 2011-04-25 | 2012-12-26 | 华为技术有限公司 | 报文冗余度调整方法、相关设备及网络系统 |
WO2017157303A1 (zh) * | 2016-03-15 | 2017-09-21 | 中兴通讯股份有限公司 | 实时通信中的抗丢包方法、装置和系统 |
WO2018006861A1 (zh) * | 2016-07-07 | 2018-01-11 | 腾讯科技(深圳)有限公司 | 一种视频数据处理方法及装置 |
US20190268601A1 (en) * | 2018-02-26 | 2019-08-29 | Microsoft Technology Licensing, Llc | Efficient streaming video for static video content |
CN112333470A (zh) * | 2020-10-27 | 2021-02-05 | 杭州叙简科技股份有限公司 | 一种基于视频帧的fec纠错系统 |
Non-Patent Citations (2)
Title |
---|
刘涛等: "基于RTP的多媒体可靠实时传输", 《华中科技大学学报(自然科学版)》 * |
施博学等: "基于RTP实时远程图像传输研究与实现", 《微计算机信息》 * |
Also Published As
Publication number | Publication date |
---|---|
CN114554198B (zh) | 2022-08-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6490705B1 (en) | Method and apparatus for receiving MPEG video over the internet | |
US6317462B1 (en) | Method and apparatus for transmitting MPEG video over the internet | |
JP4982024B2 (ja) | ビデオ符号化方法 | |
RU2385541C2 (ru) | Изменение размера буфера в кодере и декодере | |
KR100960282B1 (ko) | 비디오 부호화 | |
KR101125846B1 (ko) | 패킷 기반의 영상 프레임 전송 방법 및 장치 | |
US8971415B2 (en) | Video communication system, device and method based on feedback reference frames | |
JP5341629B2 (ja) | ピクチャ復号化方法 | |
US7957465B2 (en) | Moving picture data code conversion/transmission method and device, code conversion/reception method and device | |
WO2011091769A1 (zh) | 一种纠错校验方法、设备和系统 | |
KR20050122281A (ko) | 픽처 코딩 방법 | |
CN114554198B (zh) | 基于纠删码的视频关键帧冗余传输方法和系统 | |
WO2014065844A1 (en) | A cloud-based system for flash content streaming | |
Vilei et al. | A novel unbalanced multiple description scheme for video transmission over wlan | |
Lecuire et al. | Enhancing quality of mpeg video through partially reliable transport service in interactive application |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20220527 Assignee: Guangdong Zhongda Testing and Inspection Center Co.,Ltd. Assignor: GUANGZHOU PANYU POLYTECHNIC Contract record no.: X2023440000025 Denomination of invention: A method and system for redundant transmission of video keyframes based on erasure correction codes Granted publication date: 20220826 License type: Exclusive License Record date: 20231221 |
|
EE01 | Entry into force of recordation of patent licensing contract |