H.264 SVC

H.264 SVC

 

H.264 SVC (Scalable Video Coding)是以H.264为基础,在语法和工具集上进行了扩展,支持具有分级特性的码流,H.264SVC是H.264标准的附录G,同时作为H.264新的profile。H.264SVC在2007年10月成为正式标准。

 

目录

  1. 简介
  2. ▪ H.264 SVC是什么
  3. ▪ 264 SVC与H.264 AVC 区别
  4. 分级编码的概念
  5. ▪ 时域可分级
  6. ▪ 空间可分级
  7. ▪ 质量可分级
  1. 分级编码的应用
  2. ▪ 1. 监控领域
  3. ▪ 2. 视频会议领域
  4. ▪ 3. 流媒体IPTV应用
  5. ▪ 4. 兼容不同网络环境和终端的应用。
  6. 分级优点缺点
  7. ▪ 优点
  1. ▪ 缺点
  2. 对h264的扩展
  3. ▪ 语法扩展
  4. ▪ 技术扩展
  5. SVC的技术
  6. ▪ 时域分级技术图解
  7. ▪ 空域分级技术图解
  8. ▪ 层间预测技术图解
  1. 原理
  2. ▪ 空间分级编码原理
  3. ▪ 质量分级编码原理
  4. ▪ SVC-->AVC重写工具的原理图解
  5. 时间分级实现方法

简介

编辑

SVC即ScalableVideoCoding(可适性视讯编码或可分级视频编码)是传统H.264/MPEG-4AVC编码的改良,可提升更大的编码弹性,并具有时间可适性(TemporalScalability)、空间可适性(SpatialScalability)及讯杂比(质量)可适性(SNRScalability)三大特性,使视讯传输更能适应在异质的网络带宽。简而言之,就是把视频序列分成不同的部分并赋予不同的等级,根据实际的环境来选择解码

H.264 SVC是什么

H.264SVC (Scalable Video Coding)是以H.264为基础,在语法和工具集上进行了扩展,支持具有分级特性的码流,H.264SVC是H.264标准的附录G,同时作为H.264新的profile。H.264SVC在2007年10月成为正式标准。

H.264 SVC以H.264 AVC视频编解码器标准为基础,利用了AVC编解码器的各种高效算法工具,在编码产生的编码视频时间上(帧率)、空间上(分辨率)可扩展,并且是在视频质 量方面可扩展的,可产生不同帧速率、分辨率或质量等级的解码视频。

264 SVC与H.264 AVC 区别

AVC 实际上是 H.264 协议的别名。但自从 H.264 协议中增加了 SVC 的部分之后,人们习惯将不包含 SVC 的 H.264 协议那一部分称为 AVC,而将 SVC 这一部分单独称为 SVC。所以提到 AVC 的时候,需要根据具体情况判断到底是指 H.264 协议还是指协议中不包含 SVC 的那一部分;SVC是scalable video coding,有的翻译成分层,有的翻译成分级。H.264/AVC是JVT制定视频编码新标准。H. 264扩展标准支持多种可分级类型,其中空域可分级、时域可分级和质量可分级是可分级模式的典型代表。JM86的编解码是基于AVC, JSVM的编解码是基于SVC。

H.264 SVC(H.264可分级编码)作为H.264标准的一个扩展最初由JVT在2004年开始制定,并于2007年7月获得ITU批准。H.264 SVC以H.264 AVC视频编解码器标准为基础,利用了AVC编解码器的各种高效算法工具,在编码产生的编码视频时间上(帧率)、空间上(分辨率)可扩展,并且是在视频质 量方面可扩展的,可产生不同帧速率、分辨率或质量等级的解码视频。

H.264 SVC通过在GOP(编码图像组)中设置可丢弃的参考帧实现时间上的可分级。0-16视频帧构成全帧率视频,除T3标志外的所有视频帧构成了半帧率视频,所有 T0标志和T2标志的视频帧构成了1/3帧率视频,所有 只是T0标志的视频帧构成了1/4帧率视频。

SVC 时间可分级、SVC 空间可分级。H.264SVC通过在编码码流嵌入具有相关性的多个不同分辨率的子流实现空间上的可分级。上层所有的视频帧构成了高分辨率视频,下层所有的视频帧构成了低分辨率视频

为此,具备H.264 SVC编码的视频会议系统,在保证高效的视频压缩性能的基础上,视频广播端可以通过一次编码产生具有不同帧率、分辨率的视频压缩码流,以适应不同网络带 宽、不同的显示屏幕和终端解码能力的应用需求,从而有效地避免了视频会议系统中MCU上复杂而昂贵的转码

H.264 SVC 与以往传统视频协议H.264AVC的区别表

 

传统视频协议

(H.264/AVC)

SVC视频协议

(H.264/SVC)

视频会议可以容忍的网络丢包率

< 2 – 3 %

<20%

对网络的要求

专线

共享线路

视频会议延迟:

视频会议效果

&Oslash; 400毫秒

&Oslash; 非实时交互

< 200毫秒

实时交互

HD 会议室型终端的开销

昂贵

普及型


  

分级编码的概念

编辑

码器产生的码流包含一个或多个可以单独解码的子码流,子码流可以具有不同的码率,帧率和空间分辨率。

分级的类型:

时域可分级

(Temporal scalability):可以从码流中提出具有不同帧频的码流。

空间可分级

(Spatial scalability):可以从码流中提出具有不同图像尺寸的码流。

质量可分级

(Quality scalability):可以从码流中提出具有不同图像质量的码流。

分级类型示意图分级类型示意图


  

分级编码的应用

编辑

1. 监控领域

监控视频流一般产生2路,1路质量好的用于存储,1路用于预览。用SVC编码器可以产生2层的分级码流,1个基本层用于预览,1个增强层保证存储的图像质量是较高的。使用手机远程监控预览的情况下,可以产生一个低码率的基本层。

2. 视频会议领域

视频会议终端利用SVC编出多分辨率,分层质量,会议的中心点替代传统MCU二次编解码方法改为视频路由分解转发。也可在网络丢包环境下利用时域可分级,抛弃部分时域级实现网络适应性。在云视讯领域SVC也有想像空间。

3. 流媒体IPTV应用

服务器可以根据不同的网络情况丢弃质量层,保证视频的流畅。

4. 兼容不同网络环境和终端的应用。

针对不同网络和终端的应用针对不同网络和终端的应用


  

分级优点缺点

编辑

优点

分级码流优点是应用非常灵活,可以根据需要产生不同的码流或者提取出不同的码流。使用SVC实现一次分层编码比用AVC编多次更高效。分层编码有技术优势,新的编码器H.265也使用了分层思想,可以实现灵活的应用,也可提高网络适应性。

缺点

分级码流的解码复杂度增加。基本层是AVC兼容码流,编码效率没有影响。在同样的条件下,分级码流比单

分级编码和单层编码效率对比分级编码和单层编码效率对比

层码流的压缩效率要低10%左右,分级层数越多,效率下降越多,现在的JSVM编码器最多支持3个空域分级层。在同样的条件下,分级码流比单层码流的解码计算复杂度高。SVC是2007年10月才做为正式标准,兼容性和对通性远没有AVC好,所以SVC实际应用不是广泛。

(1)对于时域分级,AVC已经实现,时域分级对编码效率没有影响。

(2)质量分级如图 3(a)所示,质量可分级码流对编码效率影响大约在10%。

(3)空域分级如图 3(b)所示,SVC空域分级编码,不只是影响整体编码效率,对于基本层(AVC层)的编码效率也有10%的降低,基本层编码效率降低的原因是基本层帧内预测受限。

对h264的扩展

编辑

语法扩展

NAL头扩展NAL头扩展

(1)对NAL(Network Adaptive Layer)头进行了扩展,用于描述码流的分级信息。为了便于描述AVC兼容码流的分级特性,定一个NAL类型为14的前缀NAL,该类型的NAL出现在AVC兼容码流的NAL前面,用于描述AVC基本层码流的分级信息。见图 4、 图 5。

(2) 使用保留的NAL类型14、20编码增强层码流。

技术扩展

分层编码为了提高编码效率,就需要最大程度的利用层间相关性。SVC增加了层间预测的工具集,主要如下。

1.层间帧内预测(Inter-layer intra prediction)。

2.层间宏块模式和运动参数预测(Inter-layer macroblock mode and motion prediction)。

3.层间残差预测(Inter-layer residual prediction)

SVC的技术

编辑

时域分级技术图解

时域分级示意图时域分级示意图

可以通过依次丢弃棕色、绿色、蓝色得到不同帧频的码流。

空域分级技术图解

空域分级技术图解

空域分级示意图空域分级示意图

层间预测技术图解

层间帧内预测(Inter-layer intra prediction):图像纹理复杂并且帧间搜索匹配不好的宏块,如果基本层采用

的是帧内预测,增强层可以采用层间帧内预测模式提高编码效率。具体做法是把基本层的I块重建上采样得到增强层的预测,增强层只需要传原始图像和层间帧内预测的残差。

层间宏块模式和运动参数预测(Inter-layer macroblock mode and motion prediction):如图中所示,增强

(左)帧内预测(中)类型预测(右)残差预测(左)帧内预测(中)类型预测(右)残差预测

层的宏块类型可以通过基本层预测获取。增强层的运动参数也可以通过基本层运动参数上采样获取。这一点是h.264SVC和其他分级编码技术的区别之一。其它分级编码技术一般通过像素域的上采样进行预测,而对于h.264SVC,认为时域相关性大的区域,利用层间的运动参数预测,在增强层做运动补偿效率更高。对于层间运动参数的预测,语法支持的颗粒大小可以是一个宏块,最小是一个8x8块。

层间残差预测(Inter-layer residual prediction):如图右所示,对于帧间编码的宏块,增强层的图像残差和基本层的图像残差具有相关性,可以利用基本层的残差进行上采样减少增强层编码的图像残差。对于空间分辨率发生变化的层间残差预测,发生在残差像素域,计算量较大;对于空间分辨率不发生变化的层间残差预测(质量分级),发生在变换系数或变换电平域,计算量较小。多层码流只进行一次运动补偿:通过技术上来保证只需要一次运动补偿。因为层间预测没有利用帧间块的重建,所以参考层(或者称为基本层)不需要解码重建,层间预测使用的是运动矢量预测,对于解码重建只需要最后做一次运动补偿即可。这样做的好处:(1)节省计算量,降低解码复杂度;(2)减少对解码器对内存的需求。

原理

编辑

空间分级编码原理

举例说明,两层编码,基本层为AVC编码,增强层采用层间预测自适应编码。

(1) 基本层采用AVC的编码方式,限制条件就是帧内块预测受限。

(2) 增强层的编码可以利用基本层的运动矢量上采样预测,残差上采样预测,I块的像素上采样预测,宏块类型预测。同时增强层的宏块也可以不采用层间预测,编码方式类似AVC。

质量分级编码原理

以2层的CGS(coarse-grain scalability)为例说明质量分级编码的原理,不启用SVC-->AVC重现选项。基本层采用AVC的编码方式,限制条件就是帧内块预测受限。因为分辨率不变,可以更好的利用层间预测信息。IBL类型宏块:层间I块,利用基本层的I块重建作为预测,对原始图像减去层间预测的残差进行编码。利用运动矢量预测的P块:即可以直接利用基本层的运动矢量作为当前层的运动矢量,也可以利用基本层的运动矢量作为预测运动矢量,在码流中传运动矢量的偏移。利用变换系数域预测的P块:增强层的残差进行变换之后得到变换系数,减去基本层的变换系数反量化之后的值,对得到的变化系数残差进行量化,然后进行熵编码传输。

SVC-->AVC重写工具的原理图解

使用提案“V-035”中的PPT中的图说明原理。

时间分级实现方法

编辑

时域分级通过层次B帧或者层次P帧来实现,实际中一般使用层次B帧。通过语法元素中的Temporal_id标记不同的时域层,可以很方便的提取。

词条图册

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值