你可能搞错了,MP4和H.264可不是一个东西

 

有时,我们经常听到有人说:“这个视频帮我压成H.264格式,那个视频用mp4格式”,其实这句话细说而言,是带有瑕疵的。

 

这个瑕疵就出在大家混淆了封装与编码格式。这二个词对于广电工或数字图像专业的兄dei或许不成问题,但很多朋友可能不太清楚其中的猫腻。

 

我们先简单说一下摄影机是如何记录下一个画面的。整个信号处理流程大面上来看,可以分为采样,量化,编码几个环节。这几个环节相对原始画面信息,都是有损操作,采样不可能全采,量化将连续信号转为一份份的信号,编码则会为了压缩,在过程中删除掉大部分的冗余信息。


你可能搞错了,MP4和H.264可不是一个东西


采样是我们从原始的图像根据需要的画面精细程度得到相应的精度的有损操作,我们以往说的444,422,420就是说的采样。


你可能搞错了,MP4和H.264可不是一个东西

422与420在抠像上的不同


量化是画面从全黑到全白分的层次,我们说的8bit,10bit,16bit就是量化。8bit意味着从全黑到全白分为256个层次,10bit意味着1024个层次,16bit意味着65536个。


你可能搞错了,MP4和H.264可不是一个东西

量化的示意


编码是说我们应该用什么方法来存储一个视音频或其它信息。在我们拍摄的素材中,一般有视频编码和音频编码。视频编码比如我们说的H.264,MPEG-2(这个已经有点被抛弃了),音频编码比如PCM编码,AAC编码。在后期软件中,大家记得有这个选项吧?


你可能搞错了,MP4和H.264可不是一个东西

Premiere中的编码选择界面


编码的目的绝大多数是为了压缩,不压缩的视频,那一般的剪辑电脑可带不起来。编码可以理解为一种保存视频或音频的方式。举个例子,同样是一根根纱线,我们要把它织成布,那么用什么样的方式来织,是一行横一行纵织,还是二行横二行竖织,这个将纱线编织为布的方法,就相当于画面变为视频的编码方式。但是,不管怎么织,它出来的都是布,对应于视频的话,编码后的产品都是视频,虽然我们表观上看的都是视频,但其实它内部的编码却可能是不同的。我们常说的H.264、H.265、MPEG-1(VCD的视频编码)、MPEG-2(DVD的视频编码)就是指视频编码,现在用的最多的编码,大多是通过MPEG-4改编的,H.264就是MPEG-4的第十部分。而音频编码,现在AAC用的比较多。


你可能搞错了,MP4和H.264可不是一个东西

MPEG-4视频编码框架(看看就好)


而在数字图像技术中,编码出来的信息,是不能直接存储的,因为我们现在使用的规则与习惯,是基于文件的,我们都是用一份份的文件来管理,如果直接给出一大堆分散的编码,那计算机怎么存储、拷贝呢。所以针对于计算机的文件规则,我们要将这一堆编码整理起来,打包装在一个个包裹中,成块成块的进行存储或进行其它文件操作。这个打包的过程就是封装。封装时除了要装进视频编码,还要装进音频编码,有的封装还可以装进字幕。我们常说的MP4、MOV、AVI就是指封装文件格式。封装是有规则的,不是说一种封装格式就能够装进任意一个视音频编码。但事实上,很多封装容器对音频编码和视频编码的组合方式放的很开,如AVI可以使用非压缩AVI,也可以使用H.264+AAC组合等。而我们常说的MP4格式,除了经常被封装H.264编码,也能够封装xvid、divx5、3ivx、ffmpeg/ffdshow等编码。


你可能搞错了,MP4和H.264可不是一个东西

一个多媒体文件中能够封装视频、音频与字幕


当然,编码与封装的知识细说起来,远没有这么简单,每个编码有自己的特点,封装格式也可以细挖。现在大家应该能简单理解什么是编码,什么是封装了吧?MP4和H.264不是一个东西哦。


你可能搞错了,MP4和H.264可不是一个东西