一种视频编码方法、视频解码方法以及相关设备技术

技术编号:15522594 阅读:191 留言:0更新日期:2017-06-04 11:34
本发明专利技术实施例公开了一种视频编码方法、视频解码方法以及相关设备,其中方法包括:编码器在视频数据的多个帧间编码帧中选择至少一个帧间编码帧,以作为虚拟随机接入帧,为视频数据中的多个帧内编码帧和多个帧间编码帧中各帧间编码帧分别设置对应的时序层次数值;携带时序层次数值的多个帧间编码帧包括虚拟随机接入帧和普通帧,并将携带时序层次数值的视频数据发送到解码器,以使解码器在检测到对视频数据中的目标普通帧进行播放操作时,根据目标普通帧对应的时序层次数值以及处于目标普通帧的解码顺序之前且距离最近的虚拟随机接入帧对应的时序层次数值,解码目标普通帧。采用本发明专利技术,可在提高视频编码效率的同时,提高随机接入的访问效率。

Video coding method, video decoding method and related equipment

The embodiment of the invention discloses a video encoding method, video decoding method and related device, wherein the method comprises the following steps: the encoder selects at least one inter frame encoding in multiple frames of video data between the encoding frame, as a virtual random access frame, sequential hierarchy for setting the corresponding numerical encoding frame of each frame number frame of video data in the encoding frame and a plurality of inter frame encoding frame respectively; a plurality of frames with sequential hierarchy between the numerical encoding frame includes a virtual random access frame and ordinary frames, video data transmission and will carry a sequential hierarchy to numerical decoder, the decoder of video data to the target the general frame playback operation in the detection, according to timing level and corresponding numerical targets for ordinary frame in ordinary frame decoding order and distance virtual random access frame corresponding to the nearest The timing hierarchy value of the decoded target common frame. The invention can improve the efficiency of video coding while improving the access efficiency of random access.

【技术实现步骤摘要】
一种视频编码方法、视频解码方法以及相关设备
本专利技术涉及视频数据处理
,尤其涉及一种视频编码方法、视频解码方法以及相关设备。
技术介绍
在一些监控视频中,通常会有大量的静止或小运动的区域,对于这些区域的当前视频图像,很容易在之前甚至很久之前处理过的帧里面找到匹配的参考图像。因此,在编码器对这些监控视频进行编码时,应当尽量多使用帧间编码帧,以减少对帧内编码帧的使用,从而可以大大降低码率以提高视频编码效率。其中,编码器所编码得到的帧间编码帧可以包括P帧和B帧,即P帧和B帧均是基于帧间压缩算法生成的,P帧具体为前向预测编码帧,B帧具体为双向预测内插编码帧;其中,编码器所编码得到的帧内编码帧可以包括I帧,I帧是基于帧内压缩算法生成的,I帧具体为完整编码的帧。另一方面,随机接入是对于编码后的视频码流的一个重要需求。目前的随机接入方法是:先由编码器将视频码流中的I帧设置为随机接入点,并将携带随机接入点的视频码流发送到解码器,若解码器检测到要从所接收到的视频码流中的目标帧(该目标帧可以为视频码流中的任意一个数据帧)的位置开始播放视频,则解码器可以在视频码流中沿着与解码顺序相反的方向搜索处于目标帧之前且离目标帧最近的随机接入点(即I帧),从该最近的随机接入点开始按照解码顺序逐一解码数据帧,直到解码完目标帧,则解码器可以将解码后的目标帧发送到播放器以进行播放。由此可见,若视频码流中的I帧数量比较少,则可能导致该最近的随机接入点到目标帧之间的帧间编码帧比较多,即解码器需要花费较多的时间才能解码出目标帧,从而降低了随机接入的访问效率。现有技术提供了一种提高随机接入的访问效率的方法,通过在视频码流中增加I帧数量来提高随机接入的访问效率,但是由于I帧数量较多,此时又会降低视频编码效率。
技术实现思路
本专利技术实施例提供一种视频编码方法、视频解码方法以及相关设备,可在提高视频编码效率的同时,提高随机接入的访问效率。本专利技术第一方面提供了一种视频编码方法,包括:编码器在视频数据的多个帧间编码帧中选择至少一个帧间编码帧,以作为虚拟随机接入帧;多个帧间编码帧中除了虚拟随机接入帧以外的帧间编码帧均为普通帧;为视频数据中的多个帧内编码帧和多个帧间编码帧中各帧间编码帧分别设置对应的时序层次数值;携带时序层次数值的多个帧间编码帧包括虚拟随机接入帧和普通帧;时序层次数值是指时序层次代码对应的数值;将携带时序层次数值的视频数据发送到解码器,以使解码器在检测到对视频数据中的目标普通帧进行播放操作时,根据目标普通帧对应的时序层次数值以及处于目标普通帧的解码顺序之前且距离最近的虚拟随机接入帧对应的时序层次数值,从处于目标普通帧的解码顺序之前且距离最近的帧内编码帧开始选择跳过至少一个帧间编码帧,直到解码完目标普通帧。由于通过编码器设置虚拟随机接入帧以及分配不同的时序层次数值,可以使解码器从帧内编码帧解码到目标虚拟随机接入帧的过程中跳过大量的普通帧和/或虚拟随机接入帧,所以相比于现有技术的随机接入方式可以有效减少需要解码的帧数量,从而可以有效提高随机接入的访问效率,而且本专利技术实施例并不需要增加帧内编码帧的数量,所以不会影响视频编码效率。在第一种可能的实施方式中,编码器在视频数据的多个帧间编码帧中选择至少一个帧间编码帧,以作为虚拟随机接入帧,具有包括:分别在每个画面组GOP中的多个帧间编码帧中,每间隔预设数量或每间隔随机数量的帧间编码帧,设置一个虚拟随机接入帧;其中,将任意一个虚拟随机接入帧作为待编码虚拟随机接入帧,待编码虚拟随机接入帧的参考帧包括最近的帧内编码帧或待编码虚拟随机接入帧与最近的帧内编码帧之间的虚拟随机接入帧;最近的帧内编码帧是处于待编码虚拟随机接入帧的编码顺序之前且距离待编码虚拟随机接入帧最近的帧内编码帧;其中,将任意一个普通帧作为待编码普通帧,待编码普通帧的参考帧包括最近的虚拟随机接入帧或待编码普通帧与最近的虚拟随机接入帧之间的普通帧;最近的虚拟随机接入帧是处于待编码普通帧的编码顺序之前且距离待编码普通帧最近的虚拟随机接入帧。例如,某个GOP中的数据帧为IPPBPPPBPP(此处为解码顺序),其中,I为I帧(即第一个数据帧),P为P帧,B为B帧,若每间隔3个数据帧设置一个虚拟随机接入帧,则可以将第2个数据帧“P帧”、第6个数据帧“P帧”以及第10个数据帧“P帧”均设置为虚拟随机接入帧,即这3个虚拟随机接入帧的参考帧可以均为第一个数据帧“I帧”,或者第6个和第10个数据帧的参考帧均可以为各自的前一个虚拟随机接入帧(如第6个数据帧的参考帧为第2个数据帧)。为非虚拟随机接入帧的其余P帧(即普通帧)的参考帧可以为该普通帧与位于该普通帧前面且最近的虚拟随机接入帧之间的任意一个数据帧(如第5个数据帧“P帧”的参考帧为第4个数据帧“B帧”),或者为位于该普通帧前面且最近的虚拟随机接入帧。B帧(即普通帧)的参考帧可以为该普通帧与位于该普通帧前面且最近的虚拟随机接入帧之间的任意两个数据帧,或者为位于该普通帧前面且最近的虚拟随机接入帧以及该普通帧与位于该普通帧前面且最近的虚拟随机接入帧之间的任意一个数据帧(如第4个数据帧“B帧”的参考帧包括第2个数据帧“P帧”和第3个数据帧“P帧”)。可选的,若某个虚拟随机接入帧为B帧,那么该B帧的参考帧可以包括位于该B帧之前且距离该B帧最近的I帧、以及位于该B帧之前且距离该B帧最近的虚拟随机接入帧。结合第一方面,或第一方面的第一种可能的实现方式,在第二种可能的实现方式中,为视频数据中的多个帧内编码帧和多个帧间编码帧中各帧间编码帧分别设置对应的时序层次数值,包括:分别在每个GOP中,将各普通帧分别对应的时序层次数值均设置为第一数值,并将各帧内编码帧以及各虚拟随机接入帧分别对应的时序层次数值均设置为第二数值;第一数值大于第二数值。这种编码方式,可以在随机播放过程中,使解码器跳过解码后的I帧与目标虚拟随机接入帧之间的所有普通帧,从而可以有效减少需要解码的帧数量,从而可以有效提高随机接入的访问效率,而且本专利技术实施例并不需要增加帧内编码帧的数量,所以不会影响视频编码效率结合第一方面,或第一方面的第一种可能的实现方式,在第三种可能的实现方式中,为视频数据中的多个帧内编码帧和多个帧间编码帧中各帧间编码帧分别设置对应的时序层次数值,包括:分别在每个GOP中,将虚拟随机接入帧和普通帧划分为至少两个帧组;每个帧组中的第一个帧为虚拟随机接入帧,且每个帧组分别包含各自帧组内的第一个帧到下一个虚拟随机接入帧之间的所有普通帧;在每个GOP中,将位于GOP中最前的帧组中的虚拟随机接入帧和各普通帧分别对应的时序层次数值均设置为所在GOP中的最大时序层次数值,并按照时序层次数值从大到小的顺序,逐一设置各帧组中的虚拟随机接入帧和各普通帧分别对应的时序层次数值,直至将位于GOP中最后的帧组中的虚拟随机接入帧和各普通帧分别对应的时序层次数值均设置为所在GOP中的最小时序层次数值;将每个GOP中的帧内编码帧对应的时序层次数值均设置为所在GOP中的最小时序层次数值。这种编码方式,可以使得解码器在解码I帧后,跳过目标虚拟随机接入帧之前的所有普通帧和所有虚拟随机接入帧,从而可以有效减少需要解码的帧数量,从而可以有效提高随机接入的访问效率,而且本专利技术实施例并不需要本文档来自技高网
...
一种视频编码方法、视频解码方法以及相关设备

【技术保护点】
一种视频编码方法,其特征在于,包括:编码器在视频数据的多个帧间编码帧中选择至少一个帧间编码帧,以作为虚拟随机接入帧;所述多个帧间编码帧中除了所述虚拟随机接入帧以外的帧间编码帧均为普通帧;为所述视频数据中的多个帧内编码帧和所述多个帧间编码帧中各帧间编码帧分别设置对应的时序层次数值;携带所述时序层次数值的多个帧间编码帧包括所述虚拟随机接入帧和所述普通帧;所述时序层次数值是指时序层次代码对应的数值;将携带所述时序层次数值的所述视频数据发送到解码器,以使所述解码器在检测到对所述视频数据中的目标普通帧进行播放操作时,根据所述目标普通帧对应的时序层次数值以及处于所述目标普通帧的解码顺序之前且距离最近的虚拟随机接入帧对应的时序层次数值,从处于所述目标普通帧的解码顺序之前且距离最近的帧内编码帧开始选择跳过至少一个帧间编码帧,直到解码完所述目标普通帧。

【技术特征摘要】
1.一种视频编码方法,其特征在于,包括:编码器在视频数据的多个帧间编码帧中选择至少一个帧间编码帧,以作为虚拟随机接入帧;所述多个帧间编码帧中除了所述虚拟随机接入帧以外的帧间编码帧均为普通帧;为所述视频数据中的多个帧内编码帧和所述多个帧间编码帧中各帧间编码帧分别设置对应的时序层次数值;携带所述时序层次数值的多个帧间编码帧包括所述虚拟随机接入帧和所述普通帧;所述时序层次数值是指时序层次代码对应的数值;将携带所述时序层次数值的所述视频数据发送到解码器,以使所述解码器在检测到对所述视频数据中的目标普通帧进行播放操作时,根据所述目标普通帧对应的时序层次数值以及处于所述目标普通帧的解码顺序之前且距离最近的虚拟随机接入帧对应的时序层次数值,从处于所述目标普通帧的解码顺序之前且距离最近的帧内编码帧开始选择跳过至少一个帧间编码帧,直到解码完所述目标普通帧。2.如权利要求1所述的方法,其特征在于,所述编码器在视频数据的多个帧间编码帧中选择至少一个帧间编码帧,以作为虚拟随机接入帧,具有包括:分别在每个画面组GOP中的多个帧间编码帧中,每间隔预设数量或每间隔随机数量的帧间编码帧,设置一个虚拟随机接入帧;其中,将任意一个虚拟随机接入帧作为待编码虚拟随机接入帧,所述待编码虚拟随机接入帧的参考帧包括最近的帧内编码帧或所述待编码虚拟随机接入帧与所述最近的帧内编码帧之间的虚拟随机接入帧;所述最近的帧内编码帧是处于所述待编码虚拟随机接入帧的编码顺序之前且距离所述待编码虚拟随机接入帧最近的帧内编码帧;其中,将任意一个普通帧作为待编码普通帧,所述待编码普通帧的参考帧包括最近的虚拟随机接入帧或所述待编码普通帧与所述最近的虚拟随机接入帧之间的普通帧;所述最近的虚拟随机接入帧是处于所述待编码普通帧的编码顺序之前且距离所述待编码普通帧最近的虚拟随机接入帧。3.如权利要求1或2所述的方法,其特征在于,所述为所述视频数据中的多个帧内编码帧和所述多个帧间编码帧中各帧间编码帧分别设置对应的时序层次数值,包括:分别在每个GOP中,将各所述普通帧分别对应的时序层次数值均设置为第一数值,并将各所述帧内编码帧以及各所述虚拟随机接入帧分别对应的时序层次数值均设置为第二数值;所述第一数值大于所述第二数值。4.如权利要求1或2所述的方法,其特征在于,所述为所述视频数据中的多个帧内编码帧和所述多个帧间编码帧中各帧间编码帧分别设置对应的时序层次数值,包括:分别在每个GOP中,将所述虚拟随机接入帧和所述普通帧划分为至少两个帧组;每个帧组中的第一个帧为所述虚拟随机接入帧,且每个帧组分别包含各自帧组内的第一个帧到下一个虚拟随机接入帧之间的所有普通帧;在每个GOP中,将位于GOP中最前的帧组中的虚拟随机接入帧和各普通帧分别对应的时序层次数值均设置为所在GOP中的最大时序层次数值,并按照所述时序层次数值从大到小的顺序,逐一设置各帧组中的虚拟随机接入帧和各普通帧分别对应的时序层次数值,直至将位于GOP中最后的帧组中的虚拟随机接入帧和各普通帧分别对应的时序层次数值均设置为所在GOP中的最小时序层次数值;将每个GOP中的帧内编码帧对应的时序层次数值均设置为所在GOP中的最小时序层次数值。5.如权利要求1或2所述的方法,其特征在于,所述为所述视频数据中的多个帧内编码帧和所述多个帧间编码帧中各帧间编码帧分别设置对应的时序层次数值,包括:分别在每个GOP中,将所有普通帧分别对应的时序层次数值均设置为所在GOP中的最大时序层次数值;分别在每个GOP中,将所有虚拟随机接入帧划分为至少两个虚拟随机接入帧组;每个虚拟随机接入帧组均包含至少两个虚拟随机接入帧,且每个虚拟随机接入帧组中每相邻两个虚拟随机接入帧之间存在至少一个普通帧;在每个GOP中,将位于GOP中最前的虚拟随机接入帧组中的各虚拟随机接入帧分别对应的时序层次数值均设置为所在GOP中的第二大时序层次数值,并按照所述时序层次数值从大到小的顺序,逐一设置各虚拟随机接入帧组中的各虚拟随机接入帧分别对应的时序层次数值,直至将位于GOP中最后的虚拟随机接入帧组中的各虚拟随机接入帧分别对应的时序层次数值均设置为所在GOP中的最小时序层次数值;将每个GOP中的帧内编码帧对应的时序层次数值设置为所在GOP中的最小时序层次数值。6.一种视频解码方法,其特征在于,包括:解码器接收编码器发送的携带时序层次数值的视频数据;所述视频数据中的多个帧间编码帧包括预先由所述编码器所选择出的虚拟随机接入帧,所述多个帧间编码帧中除了所述虚拟随机接入帧以外的帧间编码帧均为普通帧;所述视频数据中的多个帧内编码帧和所述多个帧间编码帧中各帧间编码帧分别具有对应的时序层次数值;所述时序层次数值是指时序层次代码对应的数值;当检测到对所述视频数据中的目标普通帧进行播放操作时,查找与所述目标普通帧相关联的目标虚拟随机接入帧和帧内编码帧,并解码与所述目标普通帧相关联的帧内编码帧;从解码后的帧内编码帧开始解码具有所述目标虚拟随机接入帧对应的时序层次数值的虚拟随机接入帧,直到解码完所述目标虚拟随机接入帧,则从解码后的目标虚拟随机接入帧开始解码具有所述目标普通帧对应的时序层次数值的普通帧,直到解码完所述目标普通帧。7.如权利要求6所述的方法,其特征在于,所述当检测到对所述视频数据中的目标普通帧进行播放操作时,查找与所述目标普通帧相关联的目标虚拟随机接入帧和帧内编码帧,并解码与所述目标普通帧相关联的帧内编码帧,具体包括:当检测到对所述视频数据中的目标普通帧进行播放操作时,将位于所述目标普通帧的解码顺序之前且距离所述目标普通帧最近的虚拟随机接入帧,作为目标虚拟随机接入帧,并解码位于所述目标普通帧的解码顺序之前且距离所述目标普通帧最近的帧内编码帧。8.如权利要求6或7所述的方法,其特征在于,所述解码后的帧内编码帧与所述目标虚拟随机接入帧之间的各帧间编码帧分别对应的时序层次数值大于或等于所述目标虚拟随机接入帧对应的时序层次数值;所述目标普通帧与所述目标虚拟随机接入帧之间的各普通帧的时序层次数值均等于所述目标普通帧对应的时序层次数值。9.如权利要求8所述的方法,其特征在于,所述从解码后的帧内编码帧开始解码具有所述目标虚拟随机接入帧对应的时序层次数值的虚拟随机接入帧,直到解码完所述目标虚拟随机接入帧,则从解码后的目标虚拟随机接入帧开始解码具有所述目标普通帧对应的时序层次数值的普通帧,直到解码完所述目标普通帧,包括:将解码条件参数设置为所述目标虚拟随机接入帧对应的时序层次数值,生成第一解码条件;所述第一解码条件是解码时序层次数值小于或等于所述目标虚拟随机接入帧对应的时序层次数值的帧;根据所述第一解码条件,从解码后的帧内编码帧开始按照所述解码顺序解码具有所述目标虚拟随机接入帧对应的时序层次数值的虚拟随机接入帧,并跳过时序层次数值大于所述目标虚拟随机接入帧对应的时序层次数值的虚拟随机接入帧和/或普通帧,直到解码完所述目标虚拟随机接入帧;将解码条件参数重新设置为所述目标普通帧对应的时序层次数值,生成第二解码条件;所述第二解码条件是解码时序层次数值小于或等于所述目标普通帧对应的时序层次数...

【专利技术属性】
技术研发人员:张怡轩吴东昇秘谧
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

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

1