home > theory > CG-CV-IP >

视频编码简史:H.263/H.264/H.265和MPEG2/MPEG4以及VP9,H264优点

author:zhoulujun@live.cn    hits:

高清编码标准有:MPEG-2、H 264、VC-1、H 265、VP9,这些标准是怎么来的呢?各种标准有什么优势呢?

首先推荐阅读《水煮RGB与CMYK色彩模型—色彩与光学相关物理理论浅叙》、《色彩空间HSL/HSV/HSB理论,RGB与YUV如何转换》、《三色视者与四色视者身后的理论基础:色彩原理》、《视频采样,量化,编码,压缩,解码相关技术原理学习笔记 》、《视频文件格式知多少? mpeg、wmv、flv、rmvb、avi、mp4、mov、ProRes、DNxHR、mfx、mkv、webm... 》

高清编码标准有:MPEG-2、H.264、VC-1,其中H.264也叫MPEG-4 AVC,有两个名字是因为早前它是由两个组织命名的,国际电联ITUT-T、ISO/IEC国际标准化组织分别给它取了名字,不论是MPEG-4 AVC、MPEG-4 Part 10,还是ISO/IEC 14496-10,都是指H.264。VC-1也有很多称呼,比如Windows Media Video 9。

先来熟悉几个组织

  • ITU,国际电报联盟(International Telegraph Union),1865年成立

  • IEC,国际电工委员会(The International Electrotechnical Commission),1906年成立

  • ISO,国际标准化组织(International Organization for Standardization),1947年成立,就是推出ISO9001质量认证的那个

  • MPEG,动态图像专家组(Moving Picture Expert Group),1988年由ISO和IEC联合成立的一个专家组,负责开发电视图像数据和声音数据的编码、解码和它们的同步等标准。

  • JVT,视频联合工作组(oint Video Team),由ITU和ISO/IEC联合成立

世界上主流的视频编码标准,基本上都是它们提出来的。

  • ITU提出了H.261、H.262、H.263、H.263+、H.263++,这些统称为H.26X系列,主要应用于实时视频通信领域,如会议电视、可视电话等。

  • ISO/IEC联合专家组MPEG提出了MPEG1、MPEG2、MPEG4、MPEG7、MPEG21,统称为MPEG系列。

ITU和ISO/IEC一开始是各自捣鼓,后来,两边成立了一个联合小组,名叫JVT(Joint Video Team,视频联合工作组)

JVT致力于新一代视频编码标准的制定,后来推出了包括H.264在内的一系列标准

H.264如何成为主流标准的

MPEG-2出道时间早,压缩比小,占用空间大,影响也是最低的,H.264与VC-1是720p、1080p高清视频编码的主流,压缩比上虽然VC-1>H.264>MPEG-2,但是影响最大、使用最多的还是H.264标准,VC-1一家独大及局限于Windows平台的缺陷还是让厂商有些忌惮。

H.264在1997年ITU的视频编码专家组提出时被称为H.26L,在ITU与ISO合作研究后被称为MPEG4 Part10或H.264(JVT)。

H.264视频编码标准的技术特点

  1. 更高的编码效率:同H.263等标准的特率效率相比,能够平均节省大于50%的码率。

  2. 高质量的视频画面:H.264能够在低码率情况下提供高质量的视频图像,在较低带宽上提供高质量的图像传输是H.264的应用亮点。

  3. 提高网络适应能力:H.264可以工作在实时通信应用(如视频会议)低延时模式下,也可以工作在没有延时的视频存储或视频流服务器中。

  4. 采用混合编码结构:同H.263相同,H.264也使用采用DCT变换编码加DPCM的差分编码的混合编码结构,还增加了如多模式运动估计、帧内预测、多帧预测、基于内容的变长编码、4x4二维整数变换等新的编码方式,提高了编码效率。

  5. H.264的编码选项较少:在H.263中编码时往往需要设置相当多选项,增加了编码的难度,而H.264做到了力求简洁的“回归基本”,降低了编码时复杂度。

  6. H.264可以应用在不同场合:H.264可以根据不同的环境使用不同的传输和播放速率,并且提供了丰富的错误处理工具,可以很好的控制或消除丢包和误码。

  7. 错误恢复功能:H.264提供了解决网络传输包丢失的问题的工具,适用于在高误码率传输的无线网络中传输视频数据。

  8. 较高的复杂度:264性能的改进是以增加复杂性为代价而获得的。据估计,H.264编码的计算复杂度大约相当于H.263的3倍,解码复杂度大约相当于H.263的2倍。

H.264标准的主要目标是:与其它现有的视频编码标准相比,在相同的带宽下提供更加优秀的图象质量。

H.264最大的优势体现在以下四个方面:

  1. 将每个视频帧分离成由像素组成的块,因此视频帧的编码处理的过程可以达到块的级别。

  2. 采用空间冗余的方法,对视频帧的一些原始块进行空间预测、转换、优化和熵编码(可变长编码)。

  3. 对连续帧的不同块采用临时存放的方法,这样,只需对连续帧中有改变的部分进行编码。该算法采用运动预测和运动补偿来完成。对某些特定的块,在一个或多个已经进行了编码的帧执行搜索来决定块的运动向量,并由此在后面的编码和解码中预测主块。

  4. 采用剩余空间冗余技术,对视频帧里的残留块进行编码。例如:对于源块和相应预测块的不同,再次采用转换、优化和熵编码。

H.264具体优势表现为:


  1. 低码流:和MPEG2和MPEG4 ASP等压缩技术相比,在同等图像质量下,采用H.264技术压缩后的数据量只有MPEG2的1/8,MPEG4的1/3。显然,H.264压缩技术的采用将大大节省用户的下载时间和数据流量收费。

  2. 高质量的图象:H.264能提供连续、流畅的高质量图象(DVD质量)。

  3. 容错能力强:H.264提供了解决在不稳定网络环境下容易发生的丢包等错误的必要工具。

  4. 网络适应性强:H.264提供了网络适应层, 使得H.264的文件能容易地在不同网络上传输(例如互联网,CDMA,GPRS,WCDMA,CDMA2000等)。

H.264和以前的标准一样,也是DPCM加变换编码的混合编码模式。但它采用“回归基本”的简洁设计,不用众多的选项,获得比H.263++好得多的压缩性能;加强了对各种信道的适应能力,采用“网络友好”的结构和语法,有利于对误码和丢包的处理;应用目标范围较宽,以满足不同速率、不同解析度以及不同传输(存储)场合的需求。

相比以往的方案使得在同等速率下,H.264能够比H.263减小50%的码率。也就是说,用户即使是只利用 384kbit/s的带宽,就可以享受H.263下高达 768kbit/s的高质量视频服务。H.264 不但有助于节省庞大开支,还可以提高资源的使用效率,同时令达到商业质量的实时视频服务拥有更多的潜在客户。

H.264尤其适合互联(包括移动互联网)的实时视频领域

H.264 草案中包含了用于差错消除的工具,便于压缩视频在误码、丢包多发环境中传输,如移动信道或IP信道中传输的健壮性。

为了抵御传输差错,H.264视频流中的时间同步可以通过采用帧内图像刷新来完成,空间同步由条结构编码(slice structured coding)来支持。同时为了便于误码以后的再同步,在一幅图像的视频数据中还提供了一定的重同步点。另外,帧内宏块刷新和多参考宏块允许编码器在决定宏块模式的时候不仅可以考虑编码效率,还可以考虑传输信道的特性。

除了利用量化步长的改变来适应信道码率外,在H.264中,还常利用数据分割的方法来应对信道码率的变化。从总体上说,数据分割的概念就是在编码器中生成具有不同优先级的视频数据以支持网络中的服务质量QoS。例如采用基于语法的数据分割(syntax-based data partitioning)方法,将每帧数据的按其重要性分为几部分,这样允许在缓冲区溢出时丢弃不太重要的信息。还可以采用类似的时间数据分割(temporal data partitioning)方法,通过在P帧和B帧中使用多个参考帧来完成。

在无线通信的应用中可以通过改变每一帧的量化精度或空间/时间分辨率来支持无线信道的大比特率变化。可是,在多播的情况下,要求编码器对变化的各种比特率进行响应是不可能的。因此,不同于MPEG-4中采用的精细分级编码FGS(Fine Granular Scalability)的方法(效率比较低),H.264采用流切换的SP帧来代替分级编码。

1080P及4G普及后的H.265

后1080p视频时代则是到了4G时代,H.264不能满足市场需求。

JVT提出的HEVC,也就是现在风头正盛的H.265。作为一种的编码标准,相比H.264有极大的性能提升,目前已经成为最新视频编码系统的标配。


视频编码标准的发展关系

H.265也叫HEVC,2012年就已经完成了标准制定工作。与H.264相比,H.265的最大本领是可以在维持画质基本不变的前提下,让数据传输带宽减少至H.264的一半同时其还支持最高为7680*4320的分辨率,因此即使是2160P甚至是更高级别的超高清视频同样可以通过H.265格式进行编码。

H.265在互联网中的困境

互联网霸主google不支持H.265,推自家孩子VP9。因为VP9有VP8进化而来,VP8 是类似于 H.264 的另一种视频编码,由 On2 公司开发。后来 Google 收购了 On2,因此 VP8 现在归 Google 所有,2010 年中的时候 Google 宣布将 VP8 永久免费。先对比下H.264和VP8

  • 采用 H.264 视频编码和 AAC 音频编码的 MP4 文件(H.264/AAC/MP4 组合)

  • 采用 VP8 视频编码和 Vorbis 音频编码的 WebM 文件(VP8/Vorbis/WebM 组合)

AAC(Advanced Audio Coding)是由Fraunhofer IIS-A、杜比和AT&T共同开发的一种音频格式,它是MPEG-2规范的一部分。MP3(MPEG 1 Layer 3)的主要发明者Fraunhofer IIS(德国弗劳恩霍夫集成电路研究所),2017年宣布终止允许公司创建MP3编码器和解码器的许可程序(1993年诞生的MP3格式终究还是不敌1997年诞生的AAC)。

Vorbis 是由非盈利组织 Xiph 开发的一种免费、开源的音频编码。业界的普遍共识是 Vorbis 是和 AAC 一样优秀、用以替代 MP3 的下一代音频压缩技术。由于 Vorbis 是免费、开源的,并且没有 AAC 的专利问题

WebM 是 Google 基于开源容器格式 Matroska(.mkv 很多朋友应该不陌生)而专门开发的一种新型容器格式。其目的是用来封装 VP8 编码的视频和 Vorbis 编码的音频数据以供网络媒体使用。

免费浏览器厂商如 Mozilla 和 Opera 强烈反对将 H.264 列为 HTML5 视频标准。因为这意味着 Mozilla 和 Opera 如果要支持 HTML5 标准,那么他们必须支付相关的授权费。且不说这做法和其信条相去甚远,Mozilla 没有从其开发的浏览器上获得直接收入,反而需要付出相应成本才能自由分发其浏览器产品;Opera 则抱怨说 H.264 的授权费太贵。因此两者都认为不可接受。由于各方争执不下,最后在 2007 年底的时候 HTML5 标准放弃了制定统一的视频格式的努力,将选择的自由留给了浏览器厂商。

H.265 继承了 H.264 的视频编码标准体系,多使用于安防、军政、企业等场景中,但由于其专利持有者过多,导致其商用费用过高,在推广中面临较大阻力。跟H.264中,在互联行业中,个人觉得应该没有多少席位。

VP9的崛起

由 Google 研发,可以免费使用VP9,进入人们的视野。但是在实际推广中,微软、苹果等公司不愿看到 VP9 一家独大,其他互联网厂商也不希望主流视频编码格式被垄断,因此目前在主要在 Google 自家的产品中得到支持,其他使用 VP9 的大厂并不多。

但是就互联网的尿性来讲,开源免费才是主流。所以虽然H.265 在企业、安防中使用较为广泛,但VP9 因其简易、实用的解决方案以及开发免费的特性在互联网应用场景中使用非常多

参考文章:

HEVC,VP9,x264性能对比 https://blog.csdn.net/leixiaohua1020/article/details/19014955

认识主流视频编码技术H.264 www.52im.net/thread-237-1-1.html

视频编码H.264、VP8的前世今生 www.52im.net/thread-274-1-1.html

硬解谁主沉浮,私人影院级享受的4K视频体验 https://www.expreview.com/32376-2.html

AAC、MP3、WMA、OGG几种音频格式的对比 www.leawo.cn/space-138176-do-thread-id-58841.html

转载本站文章《视频编码简史:H.263/H.264/H.265和MPEG2/MPEG4以及VP9,H264优点》, 请注明出处:https://www.zhoulujun.cn/html/theory/CG-CV-IP/6780.html