使用虚拟帧内帧对视频内容进行编码的系统和方法技术方案

技术编号:11490297 阅读:92 留言:0更新日期:2015-05-21 11:15
提供了用于使用一个或多个虚拟帧内帧对经编码的原始图像内容进行编码的系统和方法。在示例性方法中,可以对视频内容流进行编码以生成包括帧内帧和多个对应的帧间帧的压缩视频数据。所述压缩视频数据可被存储在缓冲器中,并且当缓冲器中的数据的量超过阈值时,基于经解码的帧间帧数据来计算虚拟帧内帧。可以输出所述虚拟帧内帧以存储在缓冲器中。

【技术实现步骤摘要】
【国外来华专利技术】使用虚拟帧内帧对视频内容进行编码的系统和方法
本公开一般涉及用于对图像数据进行编码并生成压缩视频内容的系统和方法。更具体地且非限制性地,本公开涉及生成虚拟帧内帧以允许压缩视频内容在网络上的缓冲和交付。
技术介绍
现今,视频系统包含能够使用TCP/IP协议传输图像数据的数字网络相机。这些视频系统正在取代基于模拟闭路电视(CCTV)的传统监控系统。例如,并且相对于模拟CCTV相机,具有数字网络相机的视频系统对原始图像数据进行实时捕捉和编码,以生成高分辨率压缩视频内容来连续地或离散地传送给任意数量的接收器或存储设备。可以将压缩的高分辨率视频内容连续地或替代地传送给指定接收器以便实时观看,或者传送给存储设备以便存档。例如,网络相机可以响应于一个或多个离散触发事件或偶发事件来传送图像数据。为了获得压缩视频内容的高效比特率编码,网络相机可以包括采用差分编码方案的视频编解码器。这些编码方案可以要求帧内刷新帧之间的大的距离。用这样的编码方案生成的压缩视频内容可以具有在跨越网络传送的期间消耗最小网络资源的长的图片组(GOP)长度。此外,并且相对于模拟CCTV相机,网络相机还可以缓冲一部分压缩视频内容,从而使这些网络相机能够分发包括感兴趣的事件或偶发事件的压缩视频内容。然而,由于帧内刷新帧之间的大距离,长GOP长度码在压缩视频数据中的使用增加存储经编码的数据的完整序列所需的存储器的量。因此,网络相机的有限的缓冲器的容量限制了这些相机缓冲压缩视频内容的有意义的部分的能力。鉴于上文,需要改进的系统和方法用于对图像数据进行编码并生成压缩视频内容。而且,需要改进的系统和方法来生成虚拟帧内帧以允许压缩视频内容在网络上的缓冲和交付。还需要这样的系统和方法:其支持对视频数据进行高效的、大GOP长度编码,并且用具有有限的缓冲存储器的网络相机来缓冲经编码的帧数据。还需要可以在基于计算机的环境中实现的这样的系统和方法。
技术实现思路
与本公开的实施例一致,提供用于对图像数据进行编码并且生成压缩视频内容的计算机实现的系统和方法。在一个示例性实施例中,提供一种方法:接收视频内容的流;使用视频编解码器对视频内容流进行编码,以生成包括帧内帧和多个对应的帧间帧的压缩视频数据;以及,在缓冲器内存储压缩的视频数据。与所述示例性方法一致,编码可以包括:获得与经编码的帧内帧相关联的数据;以及,基于所述帧内帧数据,对视频内容流的一部分进行编码,以生成对应的一个帧间帧。此外,所述方法可以包括确定存储在缓冲器中的数据的量是否超过第一阈值。当缓冲器中的数据的量超过第一阈值时,所述方法可以包括:对所生成的帧间帧进行解码;基于经解码的帧间帧数据来计算虚拟帧内帧;以及,输出虚拟帧内帧和对应的帧间帧,以便存储在缓冲器中。在实施例中,可以对视频内容流的第一部分进行编码以生成帧内帧。在这样的实施例中,第一部分可以在与帧间帧相关联的视频内容流的部分之前。在另一实施例中,当缓冲数据的量未能超过第一阈值时,编码步骤可以包括计算与压缩的视频数据相关联的图片组长度。编码步骤还可以包括确定所计算的图片组长度是否超过预定阈长度,并且当所计算的图片组长度不超过预定阈长度时,可以对视频内容流的另外的部分进行编码以生成另外的帧间帧。在这样的实施例中,缓冲器可以包括帧内帧和对应的帧间帧的一个或多个先前编码的组,并且当所计算的图片组长度超过预定阈长度时,所述示例性方法可以丢弃帧内帧和对应的帧间帧的先前编码的组。在另外的实施例中,编码步骤还可以包括确定缓冲数据的量是否超过比第一阈值更大的第二阈值。在这样的实施例中,当缓冲数据的量超过第二阈值时,可以保持虚拟帧内帧并且丢弃虚拟帧内帧之前的经编码的视频内容。在另外的实施例中,可以接收指示触发偶发事件的信息,并且所述示例性方法可以基于所接收的信息来生成向接收器传送缓冲数据的至少一部分的指令。在这样的实施例中,触发偶发事件可以包括请求视频内容、在所接收的视频流内发生预定事件、通过接口接收到预定数据或者由传感器检测到预定事件中的至少一种。此外,生成指令的步骤还可以包括确定缓冲数据是否包括帧内帧和虚拟帧内帧。在这样的实施例中,当缓冲数据包括帧内帧和虚拟帧内帧时,可以丢弃虚拟帧内帧并且保持对应的帧间帧,然后可以基于帧内帧来生成缓冲数据部分。在另外的实施例中,所述示例性方法可以确定缓冲数据是否是包括虚拟帧内帧并且未能包括帧内帧,并且当缓冲数据包括虚拟帧内帧并且未能包括帧内帧时,则可以基于虚拟帧内帧来生成缓冲数据部分。在又一实施例中,所述示例性方法还可以包括:接收并解码压缩视频数据的至少一个帧;确定经解码的帧是否对应于帧内帧;以及,当经解码的帧对应于帧内帧时,至少将经解码的帧存储在数据仓库中。在这样的实施例中,所述方法可以确定经解码的帧对应于帧间帧,并且当经解码的帧是帧间帧时,计算与所接收的数据相关联的图片组长度。所述示例性方法可以确定所计算的图片组长度是否超过预定阈长度,当所计算的图片组长度未能超过预定阈长度时,所述示例性方法可以至少将经解码的帧间帧存储在数据仓库内。此外,在这样的实施例中,当所计算的图片组长度超过预定阈长度时,所述方法可以基于经解码的帧间帧数据来生成另外的帧内帧,然后可以至少将另外的帧内帧存储在数据仓库内。在另外的实施例中,压缩视频内容可以与比特率的对应值相关联,可以在压缩视频内容内的对应时间位置处建立至少一个切换点。在这样的实施例中,所述切换点可以使压缩视频内容的接收器或分发器中的至少一个能够修改比特率。在这样的实施例中,所述示例性方法可以生成将压缩视频数据和与切换点相关联的信息存储在数据仓库中的指令。此外,在建立切换点时,所述示例性方法可以识别与对应时间位置相关联的帧间帧,对所识别的帧间帧进行解码,并且基于经解码的帧间帧数据来计算虚拟帧内帧,然后输出虚拟帧内帧以便按照所述时间位置存储在数据仓库中。在另外的实施例中,编码步骤还可以包括在压缩视频内容中的对应时间位置处建立多个切换点。在实施例中,可以在压缩视频内容内以固定间隔安排所述对应时间位置。在另外的实施例中,所述示例性方法可以接收创建切换位置的请求,所述请求包括识别压缩视频内容内的时间位置的信息,并且响应于所述请求,编码步骤还可以包括在所识别的时间位置处建立切换点。与本公开的另外的实施例一致,提供了一种装置,其包括:视频编解码器单元,被配置为对视频内容的流进行编码,以生成包括帧内帧和多个对应的帧间帧的压缩视频数据。所述装置还包括:存储设备,耦合到视频编解码器单元,并且被配置为在缓冲器内存储压缩视频数据。所述视频编解码器还可以被配置为:获得与经编码的帧内帧相关联的数据;基于帧内帧数据,对视频内容流的一部分进行编码以生成对应的一个帧间帧;以及,确定存储在缓冲器中的数据的量是否超过第一阈值。当缓冲数据的量超过第一阈值时,所述视频编解码器可以对所生成的帧间帧进行解码,基于经解码的帧间帧数据来计算虚拟帧内帧,并且提供虚拟帧内帧和对应的帧间帧作为输出,以便存储在缓冲器中。在实施例中,视频编解码器还可以被配置为对视频内容流的第一部分进行编码以生成帧内帧。在这样的实施例中,所述第一部分可以在与帧间帧相关联的视频内容流的部分之前。在另一实施例中,当缓冲数据的量未能超过第一阈值时,视频编解码器可以被配置为计本文档来自技高网
...

【技术保护点】
一种计算机实现的方法,其包含:接收视频内容的流;使用视频编解码器对视频内容流进行编码以生成压缩视频数据,所述压缩视频数据包含帧内帧和多个对应的帧间帧;以及在缓冲器内存储所述压缩视频数据,其中,所述进行编码包含:获得与经编码的帧内帧相关联的数据;基于帧内帧数据对视频内容流的一部分进行编码以生成对应的一个帧间帧;确定存储在缓冲器中的数据的量是否超过第一阈值;当缓冲器中的数据的量超过第一阈值时,对所生成的帧间帧进行解码,并且基于经解码的帧间帧数据来计算虚拟帧内帧;以及输出虚拟帧内帧和对应的帧间帧以便存储在缓冲器中。

【技术特征摘要】
【国外来华专利技术】2012.06.28 US 61/665,8551.一种计算机实现的方法,其包含:接收视频内容的流;使用视频编解码器对视频内容流进行编码以生成压缩视频数据,所述压缩视频数据包含帧内帧和多个对应的帧间帧;以及在缓冲器内存储所述压缩视频数据,其中,所述进行编码包含:获得与经编码的帧内帧相关联的帧内帧数据;基于帧内帧数据对视频内容流的一部分进行编码以生成对应的一个帧间帧;确定存储在缓冲器中的压缩数据的量是否超过第一阈值;当缓冲器中的压缩数据的量超过第一阈值时,对所述缓冲器中最后所生成的帧间帧进行解码,并且基于经解码的帧间帧数据来计算虚拟帧内帧,所述虚拟帧内帧表示在图片组中序列外帧内帧;以及输出虚拟帧内帧和所述最后所生成的帧间帧以便存储在缓冲器中。2.如权利要求1所述的方法,其中,所述进行编码还包含对视频内容流的第一部分进行编码以生成帧内帧,所述第一部分在与帧间帧相关联的视频内容流的部分之前。3.如权利要求1所述的方法,其中,所述进行编码还包含:当缓冲数据的量未能超过第一阈值时,计算与压缩视频数据相关联的图片组长度;确定所计算的图片组长度是否超过预定阈长度;以及当所计算的图片组长度不超过预定阈长度时,对视频内容流的另外的部分进行编码以生成另外的帧间帧。4.如权利要求3所述的方法,其中:缓冲器包含帧内帧和对应的帧间帧的一个或多个先前编码的组;以及当所计算的图片组长度超过预定阈长度时,丢弃帧内帧和对应的帧间帧的先前编码的组。5.如权利要求1所述的方法,其中,所述进行编码还包含确定缓冲数据的量是否超过第二阈值,所述第二阈值大于第一阈值。6.如权利要求5所述的方法,其中,所述进行编码还包含当缓冲数据的量超过第二阈值时,保持虚拟帧内帧,并且丢弃虚拟帧内帧之前的经编码的视频内容。7.如权利要求1所述的方法,还包含:接收指示触发偶发事件的信息;以及基于所接收的信息来生成向接收器传送缓冲数据的至少一部分的指令。8.如权利要求7所述的方法,其中,所述触发偶发事件包含请求视频内容、在所接收的视频流内发生预定事件、经过接口接收预定数据、或者由传感器检测到预定事件中的至少一种。9.如权利要求7所述的方法,其中,生成指令还包含:确定缓冲数据是否包括帧内帧和虚拟帧内帧;当缓冲数据包括帧内帧和虚拟帧内帧时,丢弃所述虚拟帧内帧,并且保持对应的帧间帧;以及基于帧内帧来生成缓冲数据部分。10.如权利要求7所述的方法,还包含:确定缓冲数据是否是包括虚拟帧内帧并且未能包括帧内帧;以及当缓冲数据包括虚拟帧内帧并且未能包括帧内帧时,基于虚拟帧内帧来生成缓冲数据部分。11.如权利要求1所述的方法,还包含:接收压缩视频数据的至少一个帧;对所接收的帧进行解码;确定经解码的帧是否对应于帧内帧;以及当经解码的帧对应于帧内帧时,至少将经解码的帧存储在数据仓库中。12.如权利要求11所述的方法,还包含:确定经解码的帧对应于帧间帧;当经解码的帧是帧间帧时,计算与所接收的数据相关联的图片组长度;确定所计算的图片组长度是否超过预定阈长度;以及当所计算的图片组长度未能超过预定阈长度时,至少将经解码的帧间帧存储在数据仓库内。13.如权利要求12所述的方法,还包含:当所计算的图片组长度超过预定阈长度时,基于经解码的帧间帧数据来生成另外的帧内帧;以及至少将另外的帧内帧存储在数据仓库内。14.如权利要求1所述的方法,其中:压缩视频内容与比特率的对应值相关联;并且所述进行编码还包含在压缩视频内容内的对应时间位置处建立至少一个切换点。15.如权利要求14所述的方法,其中,所述切换点使压缩视频内容的接收器或分发器中的至少一个能够修改比特率。16.如权利要求14所述的方法,还包含生成将压缩视频数据和与切换位置相关联的信息存储在数据仓库中的指令。17.如权利要求16所述的方法,其中,所述建立切换点包含:识别与对应时间位置相关联的帧间帧;对所识别的帧间帧进行解码,并且基于经解码的帧间帧数据来计算虚拟帧内帧;以及输出虚拟帧内帧以便按照所述时间位置存储在数据仓库中。18.如权利要求14所述的方法,其中,所述进行编码还包含在压缩视频内容内的对应时间位置处建立多个切换点。19.如权利要求18所述的方法,其中,在压缩视频内容内以固定间隔安排所述对应时间位置。20.如权利要求14所述的方法,其中:所述方法还包含接收创建切换点的请求,所述请求包含识别压缩视频内容内的时间位置的信息;并且所述进行编码还包含响应于所述请求,在所识别的时间位置处建立切换点。21.一种装置,包含:视频编解码器,被配置为对视频内容的流进行编码以生成压缩视频数据,所述压缩视频数据包含帧内帧和多个对应的帧间帧;以及存储设备,耦合到视频编解码器单元,并且被配置为在缓冲器内存储压缩视频数据,其中,所述视频编解码器还被配置为:获得与经编码的帧内帧相关联的帧内帧数据;基于帧内帧数据对视频内容流的一部分进行编码以生成对应的一个帧间帧;确定存储在缓冲器中的压缩数据的量是否超过第一阈值;当所述缓冲器中的压缩数据的量超过第一阈值时,对所述缓冲器中最后所生成的帧间帧进行解码,并且基于经解码的帧间帧数据来计算虚拟帧内帧,所述虚拟帧内帧表示图片组中序列外帧内帧;以及提供虚拟帧内帧和所述最后所生成的帧间帧作为输出,以便存储在缓冲器中。22.如权利要求21所述的装置,其中,所述视频编解码器还被配置为:对视频内容流的第一部分进行编码以生成帧内帧,所述第一部分在与帧间帧相关联的视频内容流的部分之前。23.如权利要求21所述的装置,其中,所述视频编解码器还配置为:当缓冲数据的量未能超过第一阈值时,计算与压缩视频内容相关联的图片组长度;确定所计算的图片组长度是否超过预定阈长度;以及当所计算的图片组长度未能超过预定阈长度时,对视频内容流的另外的部分进行编码以生成另外的帧间帧。24.如权利要求23所述的装置,其中:缓冲器包含帧内帧和对应的帧间帧的一个或多个先前编码的组;并且当所计算的图片组长度超过预定阈长度时,视频编解码器还配置为丢弃帧内帧和对应的帧间帧的先前编码的组。25.如权利要求21所述的装置,其中,所述视频编解码器还被配置为:确定缓冲数据的量是否超过第二阈值,所述第二阈值大于第一阈值。26.如权利要求25所述的装置,其中,所述视频编解码器还被配置为:当缓冲数据的量超过第二阈值时,保持虚拟帧内帧并且丢弃虚拟帧内帧之前的经编码的视频内容。27.如权利要求21所述的装置,其中,所述视频编解码器还被配置为:接收指示触发偶发事件的信息;以及基于所接收的信息来生成向接收器传送缓冲数据的至少一部分的指令。28.如权利要求27所述的装置,其中,所述视频编解码器还被配置为:确定缓冲数据包括帧内帧和虚拟帧内帧;当缓冲数据包括帧内帧和虚拟帧内帧时,丢弃虚拟帧内帧并且保持对应的帧间帧;以及基于帧内帧来生成缓冲数据部分。29.如权利要求27所述的装置,其中,所述视频编解码器还被配置为:确定缓冲数据是否是包括虚拟帧内帧并且未能包括帧内帧;当缓冲数据包括虚拟帧内帧并且未能包括帧内帧时,基于帧内帧来生成缓冲数据部分。30.如权利要求21所述的装置,其中,所述视频编解码器还被配置为:接收压缩视频数据的至少一个帧;对所接收的帧进行解码;确定经解码的帧是否对应于帧内帧;以及当经解码的帧对应于帧内帧时,生成至少将经解码的帧存储在存储设备中的指令。31.如权利要求30所述的装置,其中,所述视频编解码器还被配置为:确定经解码的帧对应于帧间帧;当经解码的帧...

【专利技术属性】
技术研发人员:S伦德伯格
申请(专利权)人:阿克西斯股份公司
类型:发明
国别省市:瑞典;SE

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

1