H.264可扩展视频编解码器(SVC)应用详解
时间:02-09
来源:电子工程世界
点击:
编解码器被用于压缩视频,以减小传输视频流所需要的带宽,或者,降低把视频文件存档所需要的存储空间。这种压缩的代价就是增大计算要求:压缩比越高,对计算能力的要求就越高。
在带宽与计算要求之间做出折中,对于定义承载编码视频流所需要的最小信道带宽以及编码设备的最小指标均有影响。在传统的像广播电视机这样的视频系统中,解码器的最小规范(在机顶盒的情形下)易于被定义。
然而,目前视频被越来越多地由各种各样的应用所采用,相应地,有各种各样的客户设备,这些设备包括从计算机观看互联网视频,到便携式数字助理(PDA)以及小巧的蜂窝电话。针对这些设备的视频流必需是不同的。
为了更好地兼容特定的观看设备以及信道带宽,必须采用不同的设置对视频流多次编码。每一个设置的组合必须向用户产生一个满足视频流传输所需带宽的视频流以及对观看设备进行解码的能力。如果原始解压视频流不可用,那么,编码视频流必须首先被解码,然后采用新的设置进行解码。这种做法是十分昂贵的。
在理想的情形下,视频仅仅以高效率的编解码器被编码一次。如果经过解码的话,得到的视频流会产生全分辨率的视频。此外,在理想的情形下,如果较低分辨率或带宽的视频流需要被进一步延伸至网络之中,以锁定较低性能的设备,那么,可以不必采取附加的处理,就能够发送一小部分的编码视频。这种较小的视频流便于解码并产生较低分辨率的视频。以这种方式,编码视频流自身就能够适应它需要经过的信道带宽以及目标设备的性能。这些就是可扩展视频编解码器的品质所在。
H.264 可扩展视频编解码器
扩展至H.264的可扩展视频编解码器(H.264 SVC),被设计来传递上述理想情形的各种好处。它以H.264先进视频编解码器标准(H.264 AVC)为基础,并高度利用了原始编解码器的各种工具以及概念。然而,它产生的编码视频是空间上临时可扩展的,并且是在视频质量方面可扩展的。也就是说,它能够产生不同帧速率、分辨率或质量等级的解码视频。
SVC扩展引入了一种原始H.264 AVC编解码器-在编码视频内的各层-不存在的概念。基础层对视频流的最低临时、空间和品质表现进行编码。增强各层利用基础层作为起点,对附加信息进行编码,从而在解码过程中把编码结果用于重构高质量、高分辨率或;临时的视频版本。
通过对基本层以及仅仅是所需要的后来增强层进行解码,解码器能够以所希望的特征产生一种视频流。图1所示为H.264 SVC流的分层结构。在编码的过程中,要利用仅仅对较低级各层的参考,小心地解码一个特殊层。以这种方式,编码流可以在任意点被删节,但是,仍然维持有效的、可解码的视频流。
图1:H.264 SVC分层结构。
这种分层方法让所生成的一个编码流能够被删节以限制所消耗的带宽或者降低解码计算的要求。删节过程完全通过从编码视频流提取所需要的各层而构成。这个过程甚至能够在网络中执行。
也就是说,随着视频流从高带宽转换为较低带宽的网络(例如,通过WiFi链路从以太网转换至手持),要针对可用的带宽调节视频流的大小。在上述例子中,要针对无线链路的带宽调节视频流的大小以及手持解码器的解码能力。图2显示了个人电脑把低带宽的视频流转为为移动设备视频流的例子。
图2:调节等级以降低带宽和分辨率。
H.264 SVC揭秘
为了实现临时的可扩展性,H.264 SVC链接其参考帧以及预测帧,这与传统的H.264 AVC编码器稍微不同。SVC采用分层预测结构,如图3所示,而不是传统的内帧(I帧)、双向帧(B帧)以及预测帧(P帧)的关系。
图3:传统的I、P和B帧的关系。
分层结构定义最终视频流的临时分层。图4描述了可能的分层结构。在这个特殊的例子中,各帧仅仅根据上次出现的各帧进行预测。这就确保该结构不仅仅展示临时的可扩展性,而且显示了低的延迟。
图4:在SVC中的分层预测帧。
这个方案具有四个嵌套的临时层:T0 (基础层)、T1、T2和T3。由T1和T2各层构成的帧仅仅由T0层中的各帧预测。在T3层中的各帧仅仅由T1或T2各层中的各帧来预测。
为了以3.75帧每秒的速度播放编码帧,仅仅构成T0的各帧需要被解码。所有的其它各帧可以被丢弃。为了以7.5fps的速度播放,要对构成T0以及T1的各层进行解码。在T2和T3中的各帧被丢弃。类似地,如果构成T0、T1和T2的各帧被解码,所得到的视频流将以15fps的速度播放。如果所有帧均被解码,那么,完全的30fps视频流被恢复。
相比之下,在H.264 SVC(对于Baseline Profile来说,仅仅双向预测帧被应用)中,不管需要的显示率是什么,所有帧均需被解码。为了转换至一个低带宽网络,整个视频流均需要被解码,不需要的帧可以被丢弃,然后,重新编码。
在H.264 SVC中的空间可扩展性遵循类似的原则。在这一情形下,较低分辨率的各帧被编码为基础帧。经解码和上行采样的基础帧被用于对较高阶各层进行预测。重构原始场景细节所需要的附加信息被编码为一个独立的增强层。在某些情形下,重用运动信息能够进一步增加编码效率。
在带宽与计算要求之间做出折中,对于定义承载编码视频流所需要的最小信道带宽以及编码设备的最小指标均有影响。在传统的像广播电视机这样的视频系统中,解码器的最小规范(在机顶盒的情形下)易于被定义。
然而,目前视频被越来越多地由各种各样的应用所采用,相应地,有各种各样的客户设备,这些设备包括从计算机观看互联网视频,到便携式数字助理(PDA)以及小巧的蜂窝电话。针对这些设备的视频流必需是不同的。
为了更好地兼容特定的观看设备以及信道带宽,必须采用不同的设置对视频流多次编码。每一个设置的组合必须向用户产生一个满足视频流传输所需带宽的视频流以及对观看设备进行解码的能力。如果原始解压视频流不可用,那么,编码视频流必须首先被解码,然后采用新的设置进行解码。这种做法是十分昂贵的。
在理想的情形下,视频仅仅以高效率的编解码器被编码一次。如果经过解码的话,得到的视频流会产生全分辨率的视频。此外,在理想的情形下,如果较低分辨率或带宽的视频流需要被进一步延伸至网络之中,以锁定较低性能的设备,那么,可以不必采取附加的处理,就能够发送一小部分的编码视频。这种较小的视频流便于解码并产生较低分辨率的视频。以这种方式,编码视频流自身就能够适应它需要经过的信道带宽以及目标设备的性能。这些就是可扩展视频编解码器的品质所在。
H.264 可扩展视频编解码器
扩展至H.264的可扩展视频编解码器(H.264 SVC),被设计来传递上述理想情形的各种好处。它以H.264先进视频编解码器标准(H.264 AVC)为基础,并高度利用了原始编解码器的各种工具以及概念。然而,它产生的编码视频是空间上临时可扩展的,并且是在视频质量方面可扩展的。也就是说,它能够产生不同帧速率、分辨率或质量等级的解码视频。
SVC扩展引入了一种原始H.264 AVC编解码器-在编码视频内的各层-不存在的概念。基础层对视频流的最低临时、空间和品质表现进行编码。增强各层利用基础层作为起点,对附加信息进行编码,从而在解码过程中把编码结果用于重构高质量、高分辨率或;临时的视频版本。
通过对基本层以及仅仅是所需要的后来增强层进行解码,解码器能够以所希望的特征产生一种视频流。图1所示为H.264 SVC流的分层结构。在编码的过程中,要利用仅仅对较低级各层的参考,小心地解码一个特殊层。以这种方式,编码流可以在任意点被删节,但是,仍然维持有效的、可解码的视频流。
图1:H.264 SVC分层结构。
这种分层方法让所生成的一个编码流能够被删节以限制所消耗的带宽或者降低解码计算的要求。删节过程完全通过从编码视频流提取所需要的各层而构成。这个过程甚至能够在网络中执行。
也就是说,随着视频流从高带宽转换为较低带宽的网络(例如,通过WiFi链路从以太网转换至手持),要针对可用的带宽调节视频流的大小。在上述例子中,要针对无线链路的带宽调节视频流的大小以及手持解码器的解码能力。图2显示了个人电脑把低带宽的视频流转为为移动设备视频流的例子。
图2:调节等级以降低带宽和分辨率。
H.264 SVC揭秘
为了实现临时的可扩展性,H.264 SVC链接其参考帧以及预测帧,这与传统的H.264 AVC编码器稍微不同。SVC采用分层预测结构,如图3所示,而不是传统的内帧(I帧)、双向帧(B帧)以及预测帧(P帧)的关系。
图3:传统的I、P和B帧的关系。
分层结构定义最终视频流的临时分层。图4描述了可能的分层结构。在这个特殊的例子中,各帧仅仅根据上次出现的各帧进行预测。这就确保该结构不仅仅展示临时的可扩展性,而且显示了低的延迟。
图4:在SVC中的分层预测帧。
这个方案具有四个嵌套的临时层:T0 (基础层)、T1、T2和T3。由T1和T2各层构成的帧仅仅由T0层中的各帧预测。在T3层中的各帧仅仅由T1或T2各层中的各帧来预测。
为了以3.75帧每秒的速度播放编码帧,仅仅构成T0的各帧需要被解码。所有的其它各帧可以被丢弃。为了以7.5fps的速度播放,要对构成T0以及T1的各层进行解码。在T2和T3中的各帧被丢弃。类似地,如果构成T0、T1和T2的各帧被解码,所得到的视频流将以15fps的速度播放。如果所有帧均被解码,那么,完全的30fps视频流被恢复。
相比之下,在H.264 SVC(对于Baseline Profile来说,仅仅双向预测帧被应用)中,不管需要的显示率是什么,所有帧均需被解码。为了转换至一个低带宽网络,整个视频流均需要被解码,不需要的帧可以被丢弃,然后,重新编码。
在H.264 SVC中的空间可扩展性遵循类似的原则。在这一情形下,较低分辨率的各帧被编码为基础帧。经解码和上行采样的基础帧被用于对较高阶各层进行预测。重构原始场景细节所需要的附加信息被编码为一个独立的增强层。在某些情形下,重用运动信息能够进一步增加编码效率。
- 数字机顶盒技术综述 (08-08)
- H.264:视频压缩编码的新发展(08-28)
- H.264/AVC视频压缩编码标准的新进展(08-29)
- 数字视频系统中的集成新概念(下)(09-12)
- 数字视频系统设计中的集成新概念(上)(09-12)
- H.264视频解码芯片中视频控制器的设计 (01-03)