首页 / 专利库 / 人工智能 / n元语法 / 视频解码器压缩位流的计算和存储要求的调节方法和模块

视频解码器压缩位流的计算和存储要求的调节方法和模

阅读:160发布:2021-02-28

专利汇可以提供视频解码器压缩位流的计算和存储要求的调节方法和模专利检索,专利查询,专利分析的服务。并且一种用于压缩视频位流检验的装置包括一组检验器模 块 :视频复杂度检验器(VCV),视频 存储器 检验器(VMV)和视频显现检验器(VPV)。这些模块规定 解码器 对可变VOP大小和速率的工作性能,并定义新的参数和界限,以测量和检验位流所要求的计算和存储资源。这些模块可用于 视频编码 器,或者预压缩视频分布的检验。,下面是视频解码器压缩位流的计算和存储要求的调节方法和模专利的具体信息内容。

1.一种调节压缩视频位流的计算要求和存储要求的方法,其特征在 于,包括:
把图形划分为多个宏
以不同的编码类型将宏块编码为位流;
根据宏块的编码类型计算位流的成本函数;
将所述成本函数应用到虚拟解码器
调节图形的解码时间标记,使成本函数的分布最佳;
推导一组加权系数;和
应用加权系数,以调节对编码类型的未来判决。
2.根据权利要求1中所述的虚拟解码器,其特征在于,包括下面的 规则:
a)对当前VOP解码所需要的存储量由VOP中宏块的数目确定,并在 当前VOP和下一个VOP的解码时间标记之间以恒定速率消耗;
b)在显现一个I-或P-VOP的时刻,被指派给解码次序中的先前的I- 或P-VOP的整个存储量立即被释放;
c)在显现一个B-VOP的时刻,被指派给那个B-VOP的整个存储量立 即被释放;
d)在任何时间,解码次序中的第(n+1)个VOP的解码时间标记DTSn+1 必须小于或等于解码次序中的第n个VOP的显现时间标记PTSn;
e)在任何时间,所消耗的存储量总和必须不超过可用的最大存储资 源MMax,否则,认为虚拟解码器使存储器上溢;和
f)在任何时间,当前VOP的解码复杂度Cn与可用的解码时间 DTSn+1-DTSn之比,必须小于每秒可用的最大复杂度资源C’Max,否则,虚 拟解码器被认为复杂度上溢。
3.根据权利要求2中所述的保证视频位流有效的方法,其特征在于, 位流中的数值必须满足规定d)、e)和f),并且不引起虚拟解码器在存 储器和复杂度资源的任意一个方面出现上溢。
4.根据权利要求1中所述的根据宏块编码类型计算位流的成本函数 的方法,其特征在于,
宏块的编码类型包括内部编码、预测编码、双向编码、带重叠块运 动补偿的预测编码、带边界形状编码的内部编码和带边界形状编码的预 测编码;以及
成本函数是位流中存在的每种编码的解码成本的归一化加权和。
5.根据权利要求1中所述的调节位流中的图形的解码时间标记的方 法,其特征在于,几个图形的时间标记被最佳化,使得所述这些图形以 最短的时间利用虚拟解码器中的计算和存储资源而被解码。
6.根据权利要求1所述的方法,其特征在于,位流不被限于仅仅是 视频位流。
7.一种虚拟解码器装置,其特征在于,包括:
虚拟存储缓冲器,它测量存储器的占用率;
成本函数产生器,它计算成本函数;
基于成本函数和存储资源使用率的解码时间标记产生器;
显现时间标记和解码时间标记比较器;和
宏块类型加权系数产生器。
8.一种方法,用来验证编码器内产生的压缩视频位流的计算和存储 要求不超过预定的极限,其特征在于,这种方法包括:
获得解码时间标记,显现时间标记和宏块的编码类型;
根据宏块编码类型计算位流的成本函数;
将所述成本函数施加到虚拟解码器,虚拟解码器执行下面的规则:
a)对当前VOP解码所需要的存储量,由VOP中宏块的数目确定,并 在当前VOP和下一个VOP的解码时间标记之间以恒定速率消耗;
b)在显现I-或P-VOP的时刻,被指派给解码次序中的先前的I-或 P-VOP的整个存储量立即被释放;
c)在显现B-VOP的时刻,被指派给该B-VOP的整个存储量立即被释 放;
d)在任何时间,解码次序中的第(n+1)个VOP的解码时间标记DTSn+1 必须小于或等于解码次序中的第n个VOP的显现时间标记PTSn;
e)在任何时间,所耗用的存储量总和必须不超过可用的最大存储资 源MMax,否则,认为虚拟解码器使存储器上溢;和
f)在任何时间,当前VOP的解码复杂度Cn与可用的解码时间 DTSn+1-DTSn之比,必须小于每秒可用的最大复杂度资源C’Max,否则,认 为虚拟解码器使复杂度上溢;
验证解码时间标记、显现时间标记和成本函数满足规则d)、e)和f)。
9.一种方法,通过附加在编码器输出端的假设的虚拟复杂度检验器, 用来验证压缩视频位流的计算和存储要求不超过预定的极限,其特征在 于,这种方法包括:
对编码器输出端的位流进行语法分析,以获得解码时间标记,显现 时间标记和宏块的编码类型;
根据宏块编码类型计算位流的成本函数;
将所述成本函数施加到虚拟解码器,虚拟解码器执行下面的规则:
a)对当前VOP解码所需要的存储量,由VOP中宏块的数目确定,并 在当前VOP和下一个VOP的解码时间标记之间以恒定速率消耗;
b)在显现一个I-或P-VOP的时刻,被指派给解码次序中的先前的I- 或P-VOP的整个存储量立即被释放;
c)在显现一个B-VOP的时刻,被指派给那个B-VOP的整个存储量立 即被释放;以及
验证解码时间标记、显现时间标记和成本函数满足下面的规则:
d)在任何时间,解码次序中的第(n+1)个VOP的解码时间标记DTSn+1 必须小于或等于解码次序中的第n个VOP的显现时间标记PTSn;
e)在任何时间,所耗用的存储量总和必须不超过可用的最大存储资 源MMax,否则,认为虚拟解码器使存储器上溢;以及
f)在任何时间,当前VOP的解码复杂度Cn与可用的解码时间 DTSn+1-DTSn之比,必须小于每秒可用的最大复杂度资源C’Max,否则,认 为虚拟解码器使复杂度上溢;
10.根据权利要求8中所述的虚拟复杂度检验器装置,其特征在于, 包括:
解码时间标记产生器;
显现时间标记产生器;
宏块编码类型产生器;
成本函数产生器,它计算成本函数;
虚拟存储缓冲器,它测量存储器占用率;和
显现时间标记和解码时间标记检验器。
11.根据权利要求9中所述的虚拟复杂度检验器装置,其特征在于, 包括:
位流语法分析器,用于提取解码时间标记、显现时间标记和宏块的 编码类型;
成本函数产生器,它计算成本函数;
虚拟存储缓冲器,它测量存储器占用率;和
显现时间标记和解码时间标记检验器。
12.一种对压缩视频位流解码器的处理器和存储器进行仿真的方法, 其特征在于,所述方法包括:
模拟解码存储在所述压缩位流中的图形所需的处理时间;和
模拟为保存所述图形所需的存储容量,直至解码器不再需要为止。
13.一种对解码器压缩视频位流所需的处理器和参考存储要求进行 调节的方法,其特征在于,所述方法包括:
模拟解码存储在所述压缩位流中的图形所需的处理时间;
模拟保存所述图形所需的存储容量,直至解码器不再需要为止;以 及
调节所述压缩位流的内容,以保证所述模块的状态保持在可允许的 极限以内。
14.根据权利要求12中所述的方法,其中,所述的方法进一步包括:
模拟保存所述图形所需的存储容量,直至显示器不再需要为止。
15.根据权利要求12中所述的方法,其特征在于,所述解码时间模 拟步骤进一步包括:
将位流的解码分离为多个解码单元;
以给定的解码速度,通过能处理所述解码单元的假设解码器,对所 述解码单元的解码要求进行编址;
确定所述图形解码的开始时间;和
确定所述图形解码的结束时间。
16.根据权利要求12中所述的方法,其特征在于,所述解码时间模 拟步骤进一步包括:
将位流的解码分离为多个解码单元;
将所述解码单元分类为多个类别;
将加权系数与每个所述类别相联系;
根据所述已分类的类别和以成本系数等效量为单位的所述有关加权 系数,计算所述解码单元的解码要求;
以给定的解码速度,通过能处理所述成本系数等效量单位的假设解 码器,对所述解码要求编址;
确定所述图形解码的开始时间;和
确定所述图形解码的结束时间。
17.根据权利要求12中所述的方法,其中,所述解码时间模拟步骤 进一步包括:
将位流的解码分离为多个解码单元;
将缓冲器中的所述解码单元的解码要求累加;
以给定的解码速率,通过能处理所述解码单元的假设解码器,对所 述被累加的解码要求编址;
确定所述图形解码的开始时间;和
确定所述图形解码的结束时间。
18.根据权利要求12中所述的方法,其特征在于,所述解码时间模 拟步骤进一步包括:
将位流的解码分离为多个解码单元;
将所述解码单元分类为多个类别;
将加权系数与每个所述类别相联系;
根据所述已分类的类别和以成本系数等效量为单位的所述有关加权 系数,计算所述解码单元的解码要求;
将缓冲器中的所述已计算的解码要求累加;
以给定的解码速度,通过能处理所述成本系数等效量单位的假设解 码器,对所述解码要求编址;
确定所述图形解码的开始时间;和
确定所述图形解码的结束时间。
19.根据权利要求15、16、17或18中所述的方法,其特征在于, 所述开始时间的确定步骤进一步包括:
确定所述压缩位流的解码器等待时间;
确定所述图形的显现时间标记;
确定所述图形的图形重排延迟时间;
从所述显现时间标记减去所述解码器等待时间和所述图形重排延迟 时间,计算候选开始时间;和
选择所述开始时间,其作为所述候选开始时间和紧接在前的图形的 所述结束时间之间的较大值。
20.根据权利要求15、16、17或18中所述的方法,其特征在于, 所述终止时间的确定步骤进一步包括:
对属于所述图形的所述解码单元的所述解码周期求和;
将所述求和步骤的结果除以所述解码速度;和
将所述除法步骤的结果与所述开始时间相加,获得所述结束时间。
21.根据权利要求12中所述的方法,其特征在于,所述存储要求的 模拟步骤进一步包括:
在所述开始时间和所述结束时间之间的周期内,以给定的耗用速度 耗用所述存储量;
在所述图形的所述显现时间标记点,释放所述图形占用的所述存储 量。
22.根据权利要求12中所述的方法,其特征在于,所述存储要求的 模拟步骤进一步包括:
在所述开始时间和所述结束时间之间的周期内,以给定的耗用速度 耗用所述存储量;
将所述图形分类为两种类别;
在所述图形和所述显现时间标记点,释放由第一类别的所述图形占 用的所述存储量;
在属于与所述图形相同的所述第二类别的紧靠在前的图形的所述显 现时间标记点,释放由第二类别的所述图形占用的所述存储量。
23.根据权利要求19中所述的方法,其特征在于,所述解码器等待 时间确定步骤进一步包括:
从所述压缩位流中提取解码器等待时间参数。
24.根据权利要求21或22中的方法,其中,所述存储器最初是空 的。
25.一种对压缩视频位流解码器的处理时间和存储要求进行模拟的 装置,其特征在于,所述装置包括:
模拟包含在所述压缩位流中的图形解码所需的处理时间的装置;和
模拟为保存所述图形所需的存储容量直至解码器和显示器不再需要 为止的装置。
26.一种对解码器压缩视频位流所要求的处理器和参考存储器的要 求进行调节的装置,所述装置包括:
模拟包含在所述压缩位流中的图形解码所要求的处理时间的装置;
模拟为保存所述图形所需的存储容量直至解码器和显示器不再需要 为止的装置;和
调节所述压缩位流的内容,以保证所述模块的状态保持在可允许的 极限以内的装置。
27.根据权利要求25或26中所述的装置,其特征在于,所述解码 时间模拟进一步包括:
将位流的解码分离为多个解码单元的装置;
以给定的解码速度,通过能处理所述解码单元的假设解码器满足对 所述解码单元的解码要求的装置;
确定所述图形解码的开始时间的装置;和
确定所述图形解码的结束时间的装置。
28.根据权利要求25或26中所述的装置,其中,所述解码时间模 拟进一步包括:
将位流的解码分离为多个解码单元的装置;
把所述解码单元分类为多个类别的装置;
将加权系数与每个所述类别相联系的装置;
根据已分类的类别和以成本系数等效量为单位的所述有关加权系 数,计算所述解码单元的解码要求的装置;
以给定的解码速度,通过能处理所述成本系数等效量单位的假设解 码器,满足所述解码要求的装置;
确定所述图形解码的开始时间的装置;和
确定所述图形解码的结束时间的装置。
29.根据权利要求25或26中所述的装置,其特征在于,所述解码 时间模拟进一步包括:
将位流的解码分离为多个解码单元的装置的装置;
将缓冲器中的所述解码单元的解码要求累加的装置;
以给定的解码速率,通过能处理所述解码单元的假设解码器,满足 所述累加的解码要求的装置;
确定所述图形解码的开始时间的装置;和
确定所述图形解码的结束时间的装置。
30.根据权利要求25或26中所述的装置,其特征在于,所述解码 时间模拟进一步包括:
将位流的解码分离为多个解码单元的装置;
把所述解码单元分类为多个类别的装置;
将加权系数与每个所述类别相联系的装置;
根据已分类的类别和以成本系数等效量为单位的所述有关加权系数 计算所述解码单元的解码要求的装置;
将缓冲器中已计算的解码要求累加的装置;
以给定的解码速度,通过能处理所速成本系数等效量单位的假设解 码器,满足所述解码要求的装置;
确定所述图形解码的开始时间的装置;和
确定所述图形解码的结束时间的装置。
31.根据权利要求27中所述的装置,其特征在于,所述开始时间的 确定进一步包括:
确定所述压缩位流的解码器等待时间,并从所述压缩位流中提取解 码器等待时间参数的装置;
确定所述图形的显现时间标记的装置;
确定所述图形的图形重排延迟时间的装置;
从所述显现时间标记减去所述解码器等待时间和所述图形重排延迟 时间,计算候选开始时间的装置;和
选择所述开始时间的装置,该开始时间作为所述候选开始时间和紧 接在前的图形的所述结束时间之间的较大值。
32.根据权利要求27中所述的装置,其特征在于,所述结束时间的 确定步骤进一步包括:
对属于所述图形的所述解码单元的所述解码周期求和的装置;
将所述求和步骤的结果除以所述解码速度的装置;和
将所述除法步骤的结果与所述开始时间相加,获得所述结束时间的 装置。
33.根据权利要求25中所述的装置,其特征在于,所述存储要求的 模拟步骤进一步包括:
在所述开始时间和所述结束时间之间的时间段内,以给定的消耗速 度消耗所述存储量的装置;
在所述图形的所述显现时间标记点释放所述图形占用的所述存储量 的装置。
34.根据权利要求25中所述的装置,其中,所述存储要求的模拟步 骤进一步包括:
在所述开始时间和所述结束时间之间的周期内,以给定的耗用速度 耗用所述存储量的装置;
将所述图形分类为两种类别的装置;
在所述图形的所述显现时间标记点,释放由第一类别的所述图形占 用的所述存储量的装置;
在属于与所述图形相同的所述第二类别的紧靠在前的图形的所述显 现时间标记点,释放由第二类别的所述图形占用的所述存储量的装置。

说明书全文

发明涉及视频解码器压缩位流的计算和存储要求的调节方法和模 。本发明实用于多媒体音频-视频编码和压缩技术领域,其中编码器需 要调节它所产生的位流复杂度要求。这可以保证遵守标准复杂度规范的 解码器能成功地对这些位流进行解码,而不致在缺乏资源的情况下运行。

在过去,符合一种标准的特定性能的视频解码器的实现装置,需要 保证解码器具有充分的资源,以承受按技术规范可能出现的最坏情况。 这不是一种良好的工程实践,因为通常最坏情况表示一种在正常工作条 件下几乎是不可能出现的情况。这就导致过度的工程设计和资源的浪费。

目前,在MPEG-4的标准化中,致于根据位流的复杂度而不是根据 最坏情况,规定一些复杂度界限。这是一种基于复杂度测量的公用单位 的统计学方法。标准将为适应性位流所允许的最大复杂度规定一个固定 值。解码器被要求提供足以对全部适应性位流解码的资源。编码器被要 求保证所产生的全部位流不超出最大复杂度界限,所以位流是适应性的。

图1以图形表示上述概念。在图1中,有效位流被分布在标准的固 定值的左面,所有适应性编码器被分布在标准的固定值的右面。图中的 直线指示复杂度界限。横坐标给出复杂度单位。在直线的左面是全部位 流。在这里表示的是位流的典型分布。大部分位流具有的复杂度,比复 杂度界限低很多。少数位流将接近这个界限。当位流超出这个界限时, 它就不再是适应性位流,所以没有被表示。复杂度界限的右侧是解码器 的分布。大多数解码器被设计得尽可能靠近复杂度界限。为的是节省成 本。少数解码器可能具有较多的被要求的资源,它们处于图中更向右的 地方。不具备满足适应性位流复杂度要求资源的解码器,将处于复杂度 界限的左面,将被认为是非适应性的。

图2表示一种简单的复杂度测量方法,其中,编码器对所选择的各 个宏块类型的数目进行计数,并根据给予各个宏块类型的某种预定的成 本函数,估算位流的复杂度。图2表示一种简单的计算位流的成本函数 的方法,它是通过计算等效的I-MB单位的产生的。但是,这种方法的问 题是不能给出瞬时的复杂度测量,并且未考虑其他的资源例如存储器。 有关当前的宏块的信息从宏块类型判决模块201中通过,那里以特定的 方法进行判决以便对宏块编码。然后,这种划分由成本函数产生器(即模 块202)计数,它将这个信息转换为复杂度成本函数。复杂度成本函数再 被反馈到宏块类型判决模块,以便未来判决。

模块203至210是混合变换编码器所要求的典型模块。输入图形被 划分为一些块,它们分别被运动估算和补偿模块210和209处理。要注 意,如果没有运动预测,则这一步骤被跳过。然后,所补偿的运动差量 信号被DCT变换模块203处理。变换系数再在量化模块204中被量化。 然后在可变长度编码器模块205中,将量化系数与宏块类型和运动矢量 的附加信息一起进行熵编码(平均信息量编码)。由模块206至209组成 的本地解码器重建已编码的图形,用于预测未来图形。反量化模块206 在系数被馈送到反离散余弦变换(反DCT)模块207之前,对它进行反量 化,在反离散余弦变换模块207中,差量信号被恢复。然后,差量信号 和运动预测相加,形成重建的块。这些块再被存储在存储器模块208 中,以备未来使用。

另外,在视频编码中,压缩处理引起可变位速率位流是固有的特征。 这个位流通常在恒定位速率信道被派送。为了吸收速率的瞬时变化,一 般是在编码器输出端和解码器输入端加进缓冲器。这些缓冲器用作为数 位的储存器。使恒定位速率信道能连接到产生可变位速率位流的编码器, 同时能连接到消耗可变位速率位流的解码器。

缓冲器占用按时变化,因为使缓冲器被填充的速率与使它排空的速 率是不同的。但是,在一个长的时间周期内,使缓冲器被填充的平均速 率与在缓冲器排空的速率可以被确定为相同。所以,如果我们提供一个 足够大的缓冲器,是可以实现稳态工作的。为了正确地工作,缓冲器不 能变成全空(下溢)或完全地充满(上溢)。为了保证这个约束,在例如 MPEG-1和MPEG-2文献中已经介绍了这种缓冲器的模块,其中,视频缓冲 器模块具有能使可变位速率解码器连接到恒定位速率信道的性能。解码 器的其余部分不需要模块化,因为视频解码方法已经在恒定帧速率和每 一帧具有恒定尺寸的条件下确定了。所以,解码的恒定速率和缓冲器的 消耗能及时地规定,并且,视频缓冲检验器(VBV)被用来通过检查位流 的传送速率函数R(t),检验解码器中所要求的缓冲存储器容量是否小于 被规定的缓冲器尺寸。

确定复杂度测量,对保证解码器能明确的方法而设计来说,是不充 分的。这有两个原因。

第一个原因是复杂度是及时测量的。由于时间足够长,它能适应几 个图形帧。复杂度分布可能是解码器的资源在瞬息之间被耗尽,而平均 复杂度却低于极限设置。将窗限制为较短的时间,又会限制了图形复杂 度的可变性。这意味着所有图形必须有不变的复杂度。这不是个好办法, 因为从编码方式的性质来说,不同的图形类型应该有不同的复杂度。

第二个原因是复杂度并不只是涉及计算时间。第二个因素是存储技 术要求,它不是在复杂度测量中能获取的。

所以,要解决的问题是发明一种方法,用于对于计算和存储要求调 节位流的复杂度要求。

另外,近来在视频压缩处理技术的发展中,一种更为灵活的编码方 法已经由MPEG确定。这种编码方案支持在一个视频图形内的宏块数目可 变。这就需要测量各个时间的这些速率,以保证它们不妨碍解码器的最 大性能。

另外,要解决的问题是如何规定新的检验器和算法,从而测量被压 缩的视频数据流的参数,以保证所产生的位流能以规定的性能和资源被 解码。

为了解决上面的问题,设计了一个组合计算和存储要求的模块。通 过对位流的计算和存储要求加以考虑,我们可以精确地约束解码器的资 源要求。

存储要求可以由可利用的存储量来很好地确定。存储器的使用和释 放也可通过视频序列的解码和扫描时间标记很好地及时确定。这个时间 标记嵌入在位流当中。

使计算复杂度单位与存储器使用链接,可以解决第一个问题,那里 用于确定复杂度界限的窗是模糊的。通过这些要求的链接,计算和存储 要求就能根据解码和扫描时间标记被界定,不再需要为测量复杂度而确 定一个滑移窗。同时,图形也不受限于恒定的复杂度。

再有,VCV模块130提供计算要求,以决定宏块解码的开始和终止时 间。VMV140模块描述参考存储器的行为和参考存储器的占用率。VPV105 模块确定一个算法,对位流进行检验并验证显现缓冲器的容量。

本发明从存储器消耗这个意义上将这些模块链接起来,它通过解码 器的物理界限使位流被约束。在本发明中,也提供检验的实现装置。

另外,开发了成套的新的验证器模块:视频复杂度检验器(VCV), 视频存储器检验器(VMV)和视频显现检验器。这些模块规定解码器在可 变VOP尺寸和速率方面的性能,并确定一些用于测量的新参数和界限, 检验位流所要求的计算和存储资源。

本发明的操作如下。编码器通过对宏块类型的计数,监控所产生的 位流的复杂度。每个宏块以某些复杂度单位被指配预定的成本。每个被 解码的宏块也消耗一个预定数量的存储器空间。取决于VOP的类型,存 储器在不同期间被占用。当VOP中的宏块不再被需要用于显示和预测时, 存储器被释放。

虚拟解码器被指派以复杂度单位和存储器的最大界限。虚拟解码器 被允许在复杂度界限的限制条件下,尽可能快地对位流解码。但是,这 样做的时候,解码器就得有额外的存储容量,以保持已解码的VOP,一直 到它们不再被显示或者不再需要用于预测之时为止。所以虚拟解码器显 然受到处理容量和可利用的存储器容量两方面的约束。

因此,通过对位流的复杂单位要求的监控和对VOP的解码时间标记 的调节,虚拟解码器能避免存储器的使用超出其界限。所以虚拟解码器 能为简单的VOP使用较少的时间而为复杂的VOP使用较多的时间。

虚拟解码器由下述规则定义:

a)当前VOP解码所需要的存储量,由VOP的宏块的数目确定,并在 当前VOP和下一个VOP的解码时间标记之间,以恒定的速率被消耗。

b)在一个I-或P-VOP的显现时间,被指派给解码次序中的前面的I- 或P-VOP的全部存储器,被立即释放。

c)在一个B-VOP的显现时间,被指派给那个B-VOP的全部存储器立 即释放。

d)在任何时间,在解码次序中的第(n+1)个VOP的解码时间标记 DTSn+1必须小于或者等于解码次序中的第n个VOP的时间标记PTSn。

      DTSn+1≤PRSn

其中,n是解码次序。                               (1)

e)在任何时间,被消耗的存储器的和,必须不超过可用的最大存储 器资源Mmax。否则,虚拟解码器被认为有存储器溢出。

f)在任何时间,当前VOP的解码复杂度Cn与可用的解码时间 DTSn+1-DTSn的比,必须小于每秒可用的最大复杂度资源C’Max。否则,虚 拟解码器被认为有复杂度溢出。

    Cn/(DTSn+1-DTSn)<C’Max

其中,n是解码次序。                                (2)

因此,一个有效位流是这样一个位流,即其中的数值满足d)、e)和 f)中的条件,不会引起虚拟解码器有存储溢出或复杂度资源溢出。

图1是现有技术的位流复杂度和解码器资源在复杂度单位上的分布 图。

图2是现有技术的视频编码器中的复杂度测量和控制示意图。

图3是根据第一实施例的视频编码器中使用虚拟解码器时的复杂度 测量和控制示意图。

图4是第一实施例的虚拟解码器的方块图。

图5表示虚拟解码器在解码时的功能性,并显示不作重新排序时的 时间标记。

图6表示虚拟解码器在解码时的功能性,并显示不作重新排序时的 时间标记,特别表示虚拟解码器实施例的一个例子。

图7表示根据本发明在视频编码器中用假设的虚拟复杂度检验器进 行复杂度测量和检验的方块图。

图8是表示用假设的虚拟复杂度检验器进行复杂度测量和检验的方 块图。

图9是视频检验器模块的方块图,特别地表示VBV、VCV、VMV和VPV 之间的内在关系。

图10是视频缓冲器检验器的方块图,特别地表示与编码器输出相连 接的视频缓冲检验器的布置。

图11是表示占用时间的视频缓冲器检验器的操作示意图。

图12是视频复杂度检验器的方块图,特别地表示与编码器输出相连 接的视频复杂度检验器的布置。

图13是表示占用时间的视频复杂度检验器的操作示意图。

图14是视频存储器检验器的方块图,特别地表示与编码器输出相连 接的视频存储器检验器的布置。

图15是表示占用时间的视频存储器检验器的操作示意图。

图16是视频显现检验器的方块图,特别地表示与编码器输出相连接 的视频显现检验器的布置。

图17是表示占用时间的视频显现检验器的操作示意图。

图18视频编码器中使用的视频检验器模块的方块图。

图19是视频位流检验的流程图,表示可独立应用的视频位流检验的 操作。

图20是表示VBV缓冲器占用率的曲线图。

图21是表示VCV、VMV和VPV缓冲器占用率的曲线图。

第一实施例

第一实施例被在图3、4、5和6中示出。图3表示与现有技术图2 相同的图,但具有根据本发明增加的新部分。第一实施例使用虚拟解码 器303。成本函数产生器302不直接反馈到宏块类型判定模块301,而是 通过虚拟解码器303。虚拟解码器303也接收被编码图形的显现时间标 记。虚拟解码器303执行如上所述的功能。它是假设的模块,用以对具 有被界定的计算和存储器资源的解码器进行仿真。这些资源根据成本函 数产生器和显现时间标记中所发现的编码信息而消耗。

图4说明虚拟解码器303的功能。来自成本函数产生器302的复杂 度成本函数被传送到虚拟VOP存储缓冲器401,和解码时间标记(DTS) 产生器402。虚拟VOP存储缓冲器401也接收显现时间标记(PTS)和解 码时间标记(DTS)信号。然后对存储缓冲器的使用进行仿真。虚拟VOP 存储器缓冲401的输出是存储缓冲器的占用率。这个信息被传送到DTS 产生器402,以允许该产生器产生下一个DTS。

DTS的产生取决于存储缓冲器占用和复杂度成本函数。当存储器被填 满时,下一个DTS可以被延迟,使得对当前图形解码有更多的时间,并 因此较迟地填充存储缓冲器。类似地,在当前图形的复杂性成本函数提 出时,下一个图形的DTS也能被延迟,以允许解码器对当前图形解码有 更多的时间。下面,给出可能的功能。

DTSn+1=DTSn+c1×缓冲器满度+c2×复杂度成本            (2)

其中c1和c2是由序列的帧速率决定的常量系数。

DTS不能太快,因为,如果两个相继的DTS太靠近,等式(2)的分 母将变小,等式的左侧超过右侧的限度。当出现这种情况时,解码器失 去计算资源。参看上面说明的规则f)。

类似地,DTS不能够无限制地延迟,因为图形必须要在PTS给出的特 定时间被显示。参见上面的规则d)。这种检查在PTS/DTS比较器403中 完成,在那里对PTS与DTS之间的差别进行检查。结果被传送到宏块类 型加权系数产生器404,产生器产生每个宏块类型的加权系数。这些权重 用于调节宏块类型判定模块301做出的判定。

虚拟VOP存储缓冲器执行规则a)至c),而确保不违反规则e)。图 5和6中所示的是这个实施例的两个例子。图5表示的情况是VOP编码类 型仅由I和P-VOP组成。因此,可用相同的次序对VOP进行解码和显示。 图6表示的情况是VOP编码类型由I、P和B-VOP组成。由于B-VOP的编 码次序和显示次序不同。因此,在模块中,以不同的次序对VOP进行解 码和显示。 情况1:仅是I和P-VOP

下面对仅有I和P-VOP时的虚拟VOP存储缓冲器的操作进行说明。 平轴表示事件开始的时间和对应时间标记。垂直轴表示存储器的使用。 存储器资源的限度用最大可利用存储器资源来标记。

根据规则a),在时间DTS0解码器开始对第一个VOP(即,I-VOP0)进行 解码。在DTS1完成解码。虚拟解码器或者模块假定VOP0所使用的存储器 与时间是线性的,因此DTS0和DTS1之间所示的是直线。在DTS1和DTS2 之间,对P-VOP1进行解码,并消耗VOP1存储器价值。这个过程在DTSi 至DTSi+1所有间隔内重复,如图5所示为线性上升的直线。

规则b)在除PTS0之外的每个PTS处被表现出来,PTS0没有在前的 VOP。在PTS1,瞬时地释放被VOP0占用的存储器。这被表示为图形上的 垂线。类似的在消耗的存储器中垂直下降被表示在遍及图中的时间PTSi。

只要图形停留在可利用的最大存储器资源与DTS和PTS满足规则e) 的条件限度之间,则模块在它的限度内操作。当违反规则d)、e)和f) 中一个或多个时,模块已经溢出。 情况2:I、P和B-VOP

图6表示具有I、P和B-VOP的情况。当序列中有B-VOP时,则必需 重新解码的次序。在这个例子中,编码序列包括VOP 0、1、2、3、4、..., VOP0是I-VOP,VOP1和3是P-VOP,而VOP2和4是B-VOP。这些VOP 的实际显示次序是0、2、1、4、3、....。注意,VOP1和2以及3和4重 新排列。这是因为B-VOP2为了预测需要P-VOP1,因此选对P-VOP1进 行解码,尽管P-VOP1在B-VOP2之后显示。

根据规则a),在时间DTS0,虚拟解码器开始对第一个VOP,即I-VOP0 解码。在DTS1完成解码。该模块假定由VOP0使用的存储器随时间是线性 的,因此,DTS0和DTS1之间表示为直线。在DTS1和DTS2之间,解码器对 P-VOP1解码,并消耗VOP1占用的存储器。在DTS2和DTS3之间,解码器 对B-VOP2解码,并消耗VOP2占用的存储器。

规则b)和c)适用于除PTS0以外的每个PTS,那里没有以前的VOP。 在PTS2,瞬时地释放被VOP2占用的存储器。这被表示为图形上的垂直线。 在整个图中,类似的存储器占用率垂直下降在时间PTSi示出。

只要图形停留在可利用的最大存储器资源与DTS和PTS满足规则e) 的条件限定之间,则模块在它的限度内操作。当违反规则d)、e)或f) 中一个或多个时,该模块溢出。 虚拟复杂度的检验

在一个单独的实施例中,虚拟解码器303不是用于控制编码的位流 的复杂度,而是用于检验位流是否符合复杂度的规定。有两种检验的方 法。一种方法是,在位流产生时在编码器内部完成检验,而另一种方法 是,位流产生之后在编码器外部完成检验。它们分别表示在图7和图8 中。

在图7中,假设的虚拟复杂度检验器经由成本函数产生器702计算 成本函数,并从PTS,DTS产生器701接收PTS和DTS。然后这个信息被 加到虚拟解码器703,如上所述。检验器确保规则a)至f)被满足,使 位流有效。

图8表示的情况是,假设的虚拟复杂度检验器被连接到编码器801 的输出端。分析器802分析从编码器输出的位流,以获得PTS、DTS和宏 块编码类型。然后,将宏块编码类型传送到成本函数产生器803,在那里 对成本函数进行估算。成本函数与PTS和DTS一起被加到虚拟解码器804, 如以前的部分所叙述的。检验器确保规则a)至f)被满足,使位流有效。

对于第一实施例,编码器能够控制和调节它所产生的被编码的位流 的复杂度。同时,解码器保证不产生太复杂的位流。本发明的效果是不 再根据最坏的情况设想来设计解码器,而是根据由标准规定的共同复杂 度测量。因而这些产品的成本能得到减少,因为不需要过度的工程设计。 第二实施例

第二实施例叙述本实施例的一般操作。

模块是仿真目标解码器的作用和它的一些模块,例如位流缓冲器, 中心处理单元(CPU),或存储器存储装置。为了保证典型的解码器对编 码器产生的位流进行解码,在被编码的位流产生期间,模块可被用作独 立视频检验器,或者被嵌入视频检验器。模块也可用作独立的视频检验 器。独立的视频检验器被使用于检查和检验用某些方法已经编码的位流, 以保证典型的解码器能够对它解码。

图9所示实施例表示一个视频检验器,它包括如下模块:

      1)视频缓冲器模块120,

      2)视频复杂度模块130,

      3)视频参考存储器模块140,和

      4)视频显现模块150。

每个模块分别单独地表示在图10、12、14和16中。

图10表示一个具有视频缓冲器检验器202的视频缓冲器模块120。 为了限制视频解码器所需要位流缓冲器的存储器要求,需要一个视频缓 冲器检验器202,用这个检验器,可以约束视频编码器,使得可以用预定 缓冲存储器容量解码其所产生的位流。视频缓冲器检验器202附加在编 码器201的输出端,被用于对出现在实际解码器203中的位流缓冲器204 进行仿真。

视频缓冲器检验器202按如图11所描述的图形的方式进行工作。通 过做出如下假设,对解码器的位流缓冲器进行仿真。首先它假设虚拟缓 冲器检验器的某个最大的缓冲器容量,251,和初始占用率,252。其次, 它假设用从编码器所产生的位流来的一些位流填充虚拟缓冲器检验器, 253。假设虚拟缓冲器检验器以这样的特定速率被填充,这个速率被用于 输送位流的信道控制。然后通过解译嵌入在位流中的时序,视频缓冲器 检验器可估计时间,即解码器要求开始对位流中被编码的各个输入数据 图形进行解码的时间,254。在解码器要完成对各个输入数据图形进行解 码的时间,表示当前图形的总的位数被从虚假缓冲器检验器移去,255。 假设这些位从缓冲器是瞬时地被移去的。

虚拟缓冲器检验器202的内容被在一些位从那里移去之前和之后的 时间检查。如虚拟缓冲器检验器的占用超过最大的缓冲器容量,则认为 虚拟缓冲器检验器已上溢。如果被移去的位多于虚拟缓冲器检验器可利 用的容量,则认为虚拟缓冲器检验器已下溢。对于正常的操作,缓冲器 不允许溢出,在下溢情况下,假设解码器空闲,直至所要求的位到达虚 拟缓冲器检验器。

通过执行这个模块,并使用它调节和检查由编码器来产生的位流, 我们能够确信,任何遵守标准规定的解码器能够对如此产生的位流进行 解码。位流将不会从解码器的位流缓冲器上溢或下溢。

图12表示视频复杂度模块130,这个模块具有视频复杂度检验器 302。为了限制视频解码器所需要的处理速度要求,需要视频复杂度检验 器302,用这个检验器,视频编码器能够被约束,使得其所产生的位流用 预定的解码器处理容量可以解码。附加到编码器301的视频复杂度检验 器302被用于对出现在实际解码器303的处理器305进行仿真。

视频复杂度检验器302按如图13所示图形的方式工作。它通过做出 如下假设,对解码器的处理器进行仿真。将图形分段为称为宏块的小处 理单元。首先假设,具有某个最大数目的宏块,351,处理器能够在它的 缓冲器中对这些宏块进行累加处理。在完成图形解码之前,处理器被允 许具有的延迟量有一个限制。其次,通过检查被编码在位流中的信息, 视频复杂度检验器确定开始解码的时间。在解码器希望开始对位流中各 个被编码的输入数据图形进行解码的时间,352,虚拟复杂度检验器根据 宏块数目,确定被解码图形的复杂度,353。然后,将这个宏块的数目放 在视频复杂度检验器队列中,以便处理。视频检验器以单元时间给定最 大宏块速率对宏块进行处理,354。这个最大速率是根据标准规定的。使 用这些假设,计算图形解码的完成时间,355。由处理速率划分队列大小 的简单公式,将给出完成被提交给队列的图形解码所花的时间。

视频复杂度检验器队列在解码的开始时间被查验,以保证队列不超 过宏块最大极限数目。这样可保证全部图形能在某个解码器等待时间内 被解码。

在视频复杂度检验器的不同变化中,位流的复杂度按照不同的宏块 的类型进一步被测量。宏块的编码类型用来将宏块分类为复杂度的不同 种类。然后,复杂度相对于宏块的最简单的类型被归一化,这个最简单 的类型被作为一个宏块复杂度单位,其余的种类被给予w倍于一个宏块 复杂度的权重,其中,w对每一种类随复杂度而变化并常常是大于一的值。 然后,宏块复杂度的加权和被使用在视频复杂度检验器中。

实现这个模块,并用它调节和查验由编码器产生的位流,我们就确 信,任何遵守标准规范的解码器能对如此产生的位流进行解码。对于解 码器中的处理器来说,位流将不会太复杂。

图14表示视频存储器模块140,它有一个视频存储器检验器402。 视频存储器检验器402被要求用来限制视频解码器所需要的参考存储器 要求,利用它可约束视频编码器,使得其产生的位流能以预定的参考存 储器容量进行解码。附加在编码器401的输出端的视频存储器检验器402 被用来对实际解码器403中存在的参考存储器406进行仿真。

视频存储器检验器402的工作按下述步骤如图5中的图形所示。它 通过下列假设对解码器的存储器消耗进行仿真。它首先假设某个最大参 考存储器对宏块来说是可用的,451。在解码时间452,参考存储器以图 形解码速率所给出的恒定速率被消耗,453。这个速率与每单位时间内的 宏块有关。在当前图形的显现时间454,存储器中被以前的图形占用的存 储器立即被释放,455。

由以前的图形而不是当前的图形占用的存储器被释放的原因是因为 以前的图形所占用的参考存储器是用于对当前的图形解码。仅仅在不再 被需要时它才能被释放。当前图形的显示时间被用来判定现形图形已经 被解码,所以以前的图形不再被需要,可以被释放。在双向预测的情况 下,存储器的释放更为复杂。因为双向预测的图形不是被用于未来图形 的预测,所以它们被从存储器释放,是在它们的显现时刻而没有任何延 迟。

视频存储器检验器在每个图形的显现时刻被检查,看它是否已超出 最大参考存储器容量。这是为了保证常有足以储存已解码的图形的参考 存储器。

实现这个模块,并用它调节和查验由编码器产生的位流,我们就能 确信任何遵守标准规范的解码器能对如此生成的位流进行解码。位流将 不会占比在解码器中可用的更多的参考存储器。 视频显现模块

图16表示一个视频显现模块150,它有一个视频显现检验器502。 需要视频显现检验器502来约束视频显示所需要的显现存储器要求,可 利用它约束视频编码器,使得其产生的位流能以预定的显示存储器容量 显示。附加在编码器501的输出端的视频显现检验器502,被用来对与实 际的解码器503相连的显现存储器507进行仿真。

视频显现检验器502按下述步骤工作,如图17中的图形所示。它通 过下列假设对显示用的显现存储缓冲器进行仿真。它首先假设某个最大 显现存储器容量对宏块来说是可用的,551。在显现时间内,552,显现 存储器被完整的已解码的图形充满。然后,在图形被显示时,这个存储 器以恒定速率被释放,553。显现检验器被检查,以保证在缓冲器中被累 积的宏块不超出最大可用存储器容量。

上面独立存在的视频检验器模块可以被组合成完整的视频检验器。 图18表示包括编码器中的全部模块的解决办法。它表示视频检验器模块 和各种编码器模块,它们受到检验器的反馈作用的控制。本发明视频检 验器模块能被用在视频编码器和预编码的视频位流的检验中。

当被用在视频编码器中时,VBV模块613被用来检查位流的速率。如 果速率大于规定的界限,反馈信号将被送到速率控制器610,以控制量化 604和VLC605。VCV模块612被用来检查所生成的位流的复杂度或解码 成本。如果复杂度超过规定的界限,反馈信号将被送到宏块类型控制器 611,以控制宏块类型判决601。VMV614和VPV615被用来检查参考存 储器608要求。如果它溢出,反馈信号也将被送到宏块类型控制器611, 去改变宏块类型判决601。

如在图19中所示,检验器模块也被用来检查位流的适应性。按照流 程图,视频位流逐个地被VBV、VCV、VMV和VPV检查。如果这些界限中 的任一个不能被满足,则位流就不是适应性的,必须被舍弃。 第三实施例

第三实施例是本发明的一般化概括。它描述视频检验器模块完整的 技术规范的一个例子。它被分段说明下面的定义: 视频缓冲器模块定义

视频缓冲检验器(VBV)是一种算法,用来检查位流的传送速率函数 R(t),验证在解码器中需要的速率缓冲存储器的容量小于规定的缓冲容 量。根据MPEG-2,新VBV以指向视频编码的新特征来确定。如果可视位 流由多个视频目标(VO)组成,每个有一个或多个视频目标层(VOL), 则速率缓冲器模块独立地适用于每个VOL(使用那个VOL所特定的缓冲器 容量和速率函数)。

VBV适用于被编码的实际视频,这种视频编码是内部的、预测的和双 向的视频目标面的联合(I、P和B-VOP)。下一段涉及图20。被编码的视 频位流将根据下面确定的VBV的要求而被约束:

1.当vbv缓冲器容量和vbv占用率参数由系统级的结构信息规定时, 位流将根据规定的数值而被约束。当vbv缓冲器容量和vbv占用率参数 未被规定时(除了短的视频首标的情况以外,如下面的叙述),这表明位 流应根据vbv缓冲器容量和vbv占用率的缺省值而被约束。vbv缓冲器容 量的缺省值是在曲线和层级上能允许的vbv缓冲器容量的最大值。vbv占 用率的缺省值是170×vbv缓冲器容量,这里,vbv缓冲器占用率是以64 比特为单位,vbv缓冲器容量是以16384比特为单位。这相当于缓冲器满 容量的三分之二左右的初始占用率。

2.VBV缓冲器容量由以16384比特为单位的VOL首标中的vbv缓冲 器容量字段规定,vbv缓冲器容量为0是被禁止的。定义B=16384×vbv 缓冲器容量,是VBV缓冲器的比特容量。

3.从编码器看来的瞬时视频目标层信道位速率被表示为Rvol(t)每 秒比特。如果位速率字段在VOL首标中出现,它确定峰值速率(每秒400 比特,0值被禁止),以使Rvol(t)<=400×位速率。注意,Rvol(t)对 于当前的VOL仅对可视的语法计数(涉及下面对di的定义)。如果信道是 包含其他VOL的串行时间多路复用的或者如ISO/IEC所定义的,从R(t) 的编码器看来是总瞬时信道速率,那么

4.VBV缓冲器最初被排空。vbv占用率字段规定在对初始的VOP解 码以前,VBV缓冲器的占用率以64比特为单位。VBV缓冲器中的第一位 是单元流的第一位。

5.定义di为第i个VOP外加任何紧接领先的GOV首标的比特容量, 其中i是VOP的索引,在解码次序中增量为1。VOP包括下一个开始码之 前的任何拖尾填充码字,由于开始码的,已编码的VOP(di)常是多个8 位。

6.令ti为与解码次序中的VOPi关连的解码时间。VOPi的所有位 (di)在ti瞬时被从VBV缓冲器中移出。这种瞬时迁移特性使VBV缓冲 器模块有别于实际速率缓冲器。ti值的决定方法在下面第7项中确定。

7.τi是VOPi的合成时间(或在无合成器解码器中的显现时间)。 对于视频目标面,τi由vop时间增量(以1/vop时间增量分辨率(秒) 为单位)外加由模块时基规定的全部秒的累积数。在隔行扫描视频的情 况下,VOP由两字段的行组成,τi是是第一字段的合成时间。VOP的合 成时间与解码时间之间的关系由下式给出:

ti=τi如果((VOPi==B-VOP的VOP编码类型)||低延迟||可量测 性)

ti=τi-mi    其它

这里,如果单元位流不含有B-VOP,则低延迟为真(‘1’)。如果低延 迟是‘0’,可量测性也是‘0’,那么,I和P-VOP的合成时间被延迟,直 至所有暂时紧靠在前面的B-VOP已经被合成。这个延迟周期是mi=τf-τp, 其中,用于I或P-VOP的f是VOP本身地索引,用于B-VOP的f是与VOPi 相关的最接近的未来的非B VOP的索引,而p是相对于vopi最接近的 未来的非B-VOP的索引。

当第一个VOP需要mi时,为了对模块解码器初始化,有必要为第一 个VOP确定起始解码时间t0(由于定时结构被定于B-VOP节拍,并且 第一个被解码的VOP不会是B-VOP)。这个被确定的解码时间将是t0= 2t1-t2(也就是假设t1-t0=t2-t1)。

下面的例子演示对于顺序数目可变的B-VOP的序列如何确定mi:

解码次序:I0P1P2P3B4P5B6P7B8B9P10B11B12

显现次序:I0P1P2B4P3B6P5B8B9P7B11B12P10

假设在这个例子中vop,时间增量=1,模数时基=0。子索引i是解 码次序。

            表1    演示如何确定mi的一个例子     i     τi     ti     mi     0     0     0-1=-1     1     1     1     1-1=0     1     2     2     2-1=1     1     3     4     4-2=2     2     4     3     3     2     5     6     6-2=4     2     6     5     5     2     7     9     9-3=6     3     8     7     7     3     9     8     8     3     10     12     12-3=9     3     11     10     10     3     12     11     11     3

8.定义bi是紧随从速率缓冲器移去VOPi之后缓冲器占用位数。使 用上述定义,bi可迭代地确定

b0=64×vbv占用率-d0

9.速率缓冲器模块要求VBV缓冲器从不上溢或下溢,也就是

0<bi和bi+di<B    对于所有i

实际估值算法被用来计算bi,所以误差不会累积。

被编码的VOP的容量大小必须总小于VBV缓冲器的容量大小,即di <B对于所有i。

10.如果使用了短的视频首标(即当“短视频首标”=1),那么, 参数“vbv缓冲器容量”不出现,并且,VBV操作要求下面的条件。在解 码器操作开始时,缓冲器最初是空的(即在产生带短首标的第一个视频 面的时刻是t=0),并且,在每个1001/30000秒时间间隔(即在t=1001 /30000,2002/30000,等等)以后逐次检查它的充满度。如果在检查 的时刻,带短首标的完整的视频面在缓冲器中,它就被除去。在VOP被 除去之后的缓冲器的充满度bi将大于零而小于(4·Rmax·1001)/30000 比特,这里Rmax是曲线和层级内可允许的位速率,以每秒比特为单位。 对任何单个VOP编码所使用的比特数di将不超过k·16384比特,这里, 对于QCIF和子-QCIF,k=4;对于CIF,k=16;对于4CIF,k=32;对 于16CIF,k=64,除了在轮廓和层的定义中规定k为更大的值以外。此 外,整个缓冲器充满度将不超过B=k·16384+(4·Rmax·1001)/30000 的值。

要求编码器产生不使VBV缓冲器上溢或下溢的位流。这意味着编码 器必须被设计得能在Rvol,decoder(t)的数值范围内提供正确的VBV操作, 在这个范围内,系统将进行输送位流的操作。信道有恒定的延迟,假设 单个比特在时间t进入信道,编码器的位速率Rvol,decoder(t)等于Rvol,decoder (t+L),这里,比特在(t+L)时被接收到,L是常数。在恒定延迟信 道的情况下,编码器能利用它的在本地估算的Rvol,decoder(t)去模拟VBV 占用率,并控制每个VOP的比特数di,以防止上溢或下溢。

VBV模块假设恒定延迟信道。这能允许编码器产生单元位流,这不会 于使采用Rvol,decoder(t)的缓冲器上溢或下溢——注意,在上面的第2项, Rvol(t)被定义为Rvol,decoder(t)。 视频复杂度模块定义

视频复杂度检验器(VCV)是一种检查位流的算法,以验证解码器所 要求的处理容量小于与I-MB/秒成本函数等效的固定复杂度测量。如果 虚拟位流由多个VO合成,每个VO具有一个或多个VOL,则视频复杂度模 块公用于所有的VOL(对于所有的VOL使用一个累积的“vcv缓冲器容 量”)。

VCV应用于被编码为I,P和B-VOP组合的实际视频。被编码的位流 应当被约束,使其遵守如下定义的VCV要求:

1.“vcv缓冲器容量”定义为可包含在VCV缓冲器中的等效I-MB的 数目。这个等效I-MB由解码器以成本函数等效的I-MB解码速率“vcv解 码器速率”进行消耗。“vcv解码器等待时间”定义为解码器以MB-解码 速率(等效I-MB/s)对满VCV-缓冲器(“vcv缓冲器容量MBs”)解码所 需要的处理时间。因此,关系式“vcv缓冲器容量”=“vcv解码器等待 时间”דvcv解码器速率”可保持。在开始解码时,VCV-缓冲器最初是 空的。

2.当“vcv解码器等待时间”参数由“vol控制参数”指定时,位 流应当根据所指定的值被约束。当“vcv解码器等待时间”参数不被指定 时,位流应当根据“vcv解码器等待时间”的缺省值被约束。

3.以等效I-MB为单位的vop的复杂度成本Mi,可根据如下公式进 行计算:

Mi是在时间标记ti的新宏块数量。Mi可包括I-、P-和B-宏块。这些 宏块的“解码成本”依赖于宏块的类型,并由权重WI、WP、WSI和WSP给出。

Mi=wIMIi+wPMPi+wBMBi+wSIMSIi+wSPMSPi

这里I、P和B分别涉及I-、P-和B-宏块,而SI和SP分别涉及包 括目标界线(形状)的I-和P-宏块。

4.在时间ti-“vcv解码等待时间”,vop的复杂度成本被加到VCV- 缓冲器,这里ti是区域0被计算的解码时间。

5.复杂度模块要求VCV缓冲器决不能溢出,也就是说,解码处理必 须在解码器等待时间内完成。在那种情况下,只有模块的严格要求被满 足:解码结束时间必须在区域0被计算的解码时间之前。如果VCV缓冲 器不出现溢出,这个约束总可以实现。  

6.复杂度模块允许VCV缓冲器下溢,在这种情况下,解码器简单地 保持空闲,而VCV缓冲器是空的。 视频参考存储器定义

视频存储器检验器(VMV)是一种检查位流的算法,以验证解码器所 需要的参考存储器容量小于以MB为单位的固定最大的参考存储器总量。 如果虚拟位流由多个VO合成,每一个有一个或多个VOL,则视频参考存 储模块公用于所有的VOL(因为这个模块假设一个被分享的存储器空间)。

VMV应用于被编码为I、P和B-VOP组合的实际视频位流。被编码的 视频位流应当被约束,使其遵守如下定义的VMV要求:

1.参考存储器最初是空的。当每个宏块解码时,它被解码数据填充。

2.第i个vop解码所需要的参考存储器的容量被定义为vop当中的 宏块数目ni,并且,在vop解码期间Ti,存储器以恒定速率被消耗。第 i个vop的解码持续时间Ti出现在si和ei之间,这里si和ei是第i个vop 解码的开始时间和解码的结束时间,并且可从图21中的解码器处理斜坡 与VCV的解码时间轴的交叉点得到。

3.在I-或P-VOP合成时刻(或者在无合成器解码器的显现时刻)τi ,按解码次序分配给以前的I-或者P-VOP的存储总量被瞬时地释放。

4.在B-VOP合成时刻(或在无合成器解码器的显现时刻)τi,分 配给B-VOP的存储总量被瞬时地释放。

5.参考存储器模块要求VMV缓冲器从来不溢出。

视频存储器检验器的缓冲器占用率表示在图21。在图21中,箭头A1 指向之处是参考存储器在解码周期期间被消耗。箭头A2指向之处是参考 存储器在无合成器的解码器中的合成时刻或者显现时刻被释放。 VBV、VCV和VMV之间的相互作用

速率缓冲器模块确定何时位流可用于解码,并从缓冲器被移去。复 杂度模块确定宏块被解码的速率,参考存储器模块确定被消耗并被释放 的参考存储器的量。明显地,尽可能早地预先解码是视频解码器的优点。 但是,这受VBV和VMV约束。解码器只有在位流可用于解码时,才能够 开始解码。同时,当解码器对位流解码时,它产生消耗参考存储器的宏 块。所以,如果解码太快,它将使参考存储器溢出。

另一方面,如果解码器开始解码太晚,则将不能及时完成解码,并 且位流在可以处理之前将从VBV被移去。类似地,当前VOP预测所要求 的参考存储器也可能被从VMV被移去。

因此,编码器针必须调节“vbv缓冲器容量”,“vbv占用率”,和“vcv 解码器等待时间”等参数,这样得到的位流不破坏任何VBV、VCV和VMV 模块。除调节这些参数之外,编码器也可适当地调节它的编码参数,这 样得到的位流不破坏模块。 视频显现模块定义

视频显现检验器(VPV)是一种检查位流的算法,以验证解码器中所 要求的显现缓冲器容量小于以MB为单位的存储器的给定的容量。也可用 于约束依照最大数目MB/秒的合成速率。

VPV以与VCV相同的方式操作:

1.在第i个VOP的合成时间τi,VOP被放在显现缓冲器。

2.显现缓冲器中的数据,由合成器以等效于MB/秒的最大数目的速 率进行消耗。

3.在τi+“合成等待时间”,VOP被合成。

4.显现存储器模块要求VPV缓冲器从不溢出。

根据本发明的第三实施例,编码器能够控制和调节由它产生的已编 码位流的复杂度。同时,解码器被保证将不会形成太复杂的位流。本发 明效果是,解码器的设计不再根据最坏的假设,而是根据由标准规定的 公用的复杂度测量。所以,这些产品的成本可能被减少,因为不需要过 度的工程设计。

高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈