最近在研究音视频编解码这一块儿,看到@bitbit大神写的【各种音视频编解码学习详解】这篇文章,非常感谢,佩服的五体投地。奈何大神这边文章太长,在这里我把它分解成很多小的篇幅,方便阅读。大神博客传送门:https://www.cnblogs.com/skyofbitbit/p/3651270.html。若读过@bitbit大神写的【各种音视频编解码学习详解】这篇文章,就不用向后看啦
视频是现在电脑中多媒体系统中的重要一环。为了适应储存视频的需要,人们设定了不同的视频文件格式来把视频和音频放在一个文件中,以方便同时回放。视频档实际上都是一个容器里面包裹着不同的轨道,使用的容器的格式关系到视频档的可扩展性。
FourCC全称Four-Character Codes,是由4个字符(4 bytes)组成,是一种独立标示视频数据流格式的四字节,在wav、avi档案之中会有一段FourCC来描述这个AVI档案,是利用何种codec来 编码的。因此wav、avi大量存在等于“IDP3”的FourCC。
ISO/IEC |
MPEG-PS · MPEG-TS · MPEG-4 Part 12 /JPEG 2000 Part 12 · MPEG-4 Part 14 |
ITU-T |
H.222.0 |
Others |
3GP and 3G2 · ASF · AVI · Bink · DivX Media Format · DPX · EVO · Flash Video · GXF · M2TS · Matroska · MXF · Ogg · QuickTime File Format· RealMedia · REDCODE RAW · RIFF · Smacker · MOD and TOD · VOB · WebM |
Audio Only |
AIFF · AU · WAV |
3GP和3G2容器
3GP(3GPP文件格式)是一个多媒体容器由第三代合作伙伴计划(3GPP)针对3G UMTS多媒体服务定义。它用于3G移动电话,但也可以用于某些2G和4G的电话。3GP在ETSI 3GPP技术规范中定义,他是视频文件格式,并带有讲话/音频媒体类型和带时间信息的文本,用于IMS,MMS,多媒体广播/多播服务(MBMS)和传输端到端的包交换流媒体服务(PSS)。
3G2(3GPP2文件格式)是一个多媒体容器有3GPP2为3G CDMA 2000多媒体服务定义。她与3GP文件格式非常相似,但与之相比存在一些扩展和限制。3G2在3GPP2技术规范中定义。
3GP和3G2文件格式都是基于在ISO/IEC 14496-12(MPEG-4 Part 12)定义的ISO基础媒体文件格式,但是老板不的3GP文件格式不具有其中某些属性。3GP和3G2与MP4(MPEG-4 Part 14)相似,MP4也是基于MPEP-4 Part 12。3GP和3G2设计目的是为移动电话减少存储和带宽要求,它们是非常相似的标准,但有区别:
3GP文件存贮视频流:MPEG-4 Part2,H.263,MPEG-4 Part 10(AVC/H.264),音频流 AMR-NB, AMR-WB, AMR-WB+,AAC-LC, HE-AAC v1 和 Enhanced aacPlus (HE-AAC v2)。3GPP允许ISO基础文件格式(MPEG-4Part12)中使用AMR和H.263编解码,因为3GPP在ISO基础文件格式中规定了采样条目和模板字段的使用,可以为编解码定义新的box。这些 扩展在ISO基础媒体文家格式(“MP4家族”文件)中由登记授权登记为code-point。对于在3GP文件中存贮MPEG-4媒体,3GP规定参加了MP4和AVC文件格式规范,它们也是基于ISO基础媒体文件格式。MP4和AVC文件格式规范描述在ISO基础媒体文件格式中使用MPEG-4内容。 有些手机使用.mp4作为3GP视频的扩展。
3G2文件格式可以存贮与3GP文件格式相同的视频流和觉得部分的音频流。此外3G2可以存在音频流还包括 EVRC,EVRC-B,EVRC- WB,13K(QCELP),SMV,和VMR-WR。3G2规范还定义了在3GPP带时间文件的某些货站。3G2文件格式不支持Enhanced aacPlus (HE-AAC v2) 和AMR-WB+ audiostreams。对于在3G2文件中存在MPEG-4媒体(AAC音频,MPEG-4 Part 2音频,MPEG-4 Part 10/H.264/AVC),3G2规范提及了MP4 文件格式和AVC文件格式规范,在那里描述了如果在ISO基础媒体文件格式中使用这些内容。对于在3G2中存储H.263和AMR内容,3G2规范参见了 3GP文件格式规范。
3GP格式视频有两种分辨率:
ANIM
ANIM标准的多媒体文件用于经典的Commodore Amiga的数字动画。它遵循IFF ILBM主规范,他是第一个动画格式被操作系统正式采纳。
ASF
微软WMA和WMV的标准容器。
WMV(Windows Media Video)是微软公司开发的一组数字视频编解码格式的通称,ASF(Advanced Systems Format)是其封装格式。ASF封装的WMV档具有"数字版权保护"功能。扩展名:wmv/asf、wmvhd。
ASF (Advanced Streaming format高级流格式)。ASF 是 MICROSOFT为了和现在的 Real player 竞争而发展出来的一种可以直接在网上观看视频节目的文件压缩格式。ASF使用了 MPEG4 的压缩算法,压缩率和图像的质量都很不错。因为 ASF 是以一个可以在网上即时观赏的视频"流"格式存在的,所以它的图像质量比 VCD 差一点点并不出奇,但比同是视频"流"格式的 RAM 格式要好。
AVI
AVI (the standard Microsoft Windows container, also based on RIFF)。AVI是英语Audio Video Interleave("音频视频交织"或译为"音频视频交错")的首字母缩写,由微软在 1992年11月推出的一种多媒体文件格式,用于对抗苹果Quicktime的技术。现在所说的AVI多是指一种封装格式。
比较早的AVI是Microsoft开发的。其含义是Audio Video Interactive,就是把视频和音频编码混合在一起存储。AVI也是最长寿的格式,已存在10余年了,虽然发布过改版(V2.0于1996年发布),但已显老态。AVI格式上限制比较多,只能有一个视频轨道和一个音频轨道(现在有非标准插件可加入最多两个音频轨道),还可以有一些附加轨道,如文字等。AVI格式不提供任何控制功能。扩展名:avi。
AVI能使用的编码:
编码组合能根据以下的例子自由选择。
以XviD+MP3构成的AVI最为常见。
DVB-MS
DVR-MS (Microsoft Digital Video Recording,微软数字视频录制)是一种专用的视频和音频文件容器格式,有微软开发,用于存储由Windows XPMedia Center Edition,Windows Vista和Windows 7录制的电视内容。多个数据流(视频和音频)在带有DVR-MS扩展的ASF容器中封装。视频使用MPEG-2标准编码,音频使用MPEG-1 Layer II或者杜比数字AC-3(ATSC A/52)。扩展的格式包括内容和数字版权管理的元数据。这些格式的文件有流缓存引擎(SBE.dll)生成,这是一个在Windows XP Service Pack 1的DirectShow组件。
MPEG/MPG/DAT
MPEG格 式:MPEG(Moving Picture Experts Group),是一个国际标准组织(ISO)认可的媒体封装形式,受到大部份机器的支持。其存储方式多样,可以适应不同的应用环境。MPEG-4档的档容 器格式在Part 1(mux)、14(asp)、15(avc)等中规定。MPEG的控制功能丰富,可以有多个视频(即角度)、音轨、字幕(位图字幕)等等。MPEG的一个简化版本3GP还广泛的用于准3G手机上。扩展名:dat(用于VCD)、vob、mpg/mpeg、3gp/3g2(用于手机)等。
MPEG也是Motion Picture Experts Group 的缩写。这类格式包括了 MPEG-1, MPEG-2 和 MPEG-4在内的多种视频格式。MPEG-1相信是大家接触得最多的了,因为目前其正在被广泛地应用在 VCD 的制作和一些视频片段下载的网络应用上面,大部分的 VCD 都是用 MPEG1 格式压缩的( 刻录软件自动将MPEG1转为 .DAT格式 ) ,使用 MPEG-1 的压缩算法,可以把一部 120 分钟长的电影压缩到 1.2 GB 左右大小。MPEG-2 则是应用在 DVD 的制作,同时在一些 HDTV(高清晰电视广播)和一些高要求视频编辑、处理上面也有相当多的应用。使用MPEG-2 的压缩算法压缩一部 120 分钟长的电影可以压缩到 5-8 GB 的大小(MPEG2的图像质量MPEG-1 与其无法比拟的)。
MPEG-PS:MPEG节目流(programstream),是MPEG-1和MPEG-2基准流的标准容器,用于在可靠介质上,例如磁盘,也用于DVD-Video光碟。
MPEG-TS:MPEG传输流,是数字广播和在非可靠媒体传输的标砖容器,也在蓝光光碟使用,通常携带多个视频和音频流以及一个电子节目指南。
n AVI
如果你发现原来的播放软件突然打不开此类格式的AVI文件,那你就要考虑是不是碰到了n AVI。n AVI是 New AVI 的缩写,是一个名为 Shadow Realm 的地下组织发展起来的一种新视频格式。它是由MicrosoftASF 压缩算法的修改而来的(并不是想象中的 AVI),视频格式追求的无非是压缩率和图像质量,所以 NAVI 为了追求这个目标,改善了原始的 ASF 格式的一些不足,让 NAVI 可以拥有更高的帧率。可以这样说,NAVI 是一种去掉视频流特性的改良型 ASF 格式。
注:上述材料来源于wiki的整理。
Matroska(MKV)
MKV ,不是任何的编解码或者系统的标准,但实际上可封装任何的东西。是一个开放以及开源的容器格式。
扩展名 .mkv .mka .mks
互联网媒体类型 video/x-matroska audio/x-matroska 开
发者 Matroska.org
格式 视频文件格式
专门属 多媒体
自由文件格式? Yes: GNU LGPL
Matroska,很多人把它当作为MKV,其实MKV只 是Matroska媒体系列的其中一种文件。Matroska是一种新的多媒体封装格式,这个封装格式可把多种不同编码的视频及16条或以上不同格式的音频和语言不同的字幕封装到一个Matroska Media档内。它也是其中一种开放源代码的多媒体封装格式。
多媒体封装格式,简称MCF、多媒体容器,是一个开放(没有身份规限,免费)及自由把数据存放的格式。开发者承诺大家可以自 由地使用这种格式和经这种格式所开发的软件;又不会在这种格式普遍的时候变成一个商业的科研项目。
Matroska媒体定义了三种类型的档:
这三种文件中以MKV最为常见。
Matroska最大的特点就是能容纳多种不同类型的视频编码、音频编码及字幕流,并且它能把非常高密的RealMedia及QuickTime文 件也容纳在内,同时将它们的音频和视频重新组织起来,从而达到一个更好和鲜明的效果。
Matroska的开发是对多种传统媒体格式的一次大挑战,虽则如此,Matroska也被开发成一个多功能的多媒体容器。
MP4
MP4,是MPEG-4定义的标准音视频容器,基于ISO基础媒体文件格式(在MPEG-4 Part 12以及JPEG 2000 Part 12中定义),在MPEG-4 Part 14中描述。是一种使用MPEG-4的多媒体电脑档案格式,副档名为.mp4,以储存数码音讯及数码视讯为主。
扩展名 .mp4
互联网媒体类型 video/mp4, audio/mp4, application/mp4
类型代码 mpg4
开发者 ISO
格式 视频文件格式
专门属 Audio, video, text
延伸自 QuickTime .mov and MPEG-4 Part 12
标准 ISO/IEC 14496-14
MOD
MOD格式是JVC生产的 硬盘摄录机所采用的存储格式名称。
MOV
MOV是评估公司的标准QuickTime视频容器。QuickTime Movie是由苹果公司 开发的容器,由于苹果电脑在专业图形领域的统治地位,QuickTime格式格式基本上成为电影制作行业的通用格式。1998年2月11 日,国际标准组织(ISO)认可QuickTime文件格式作为MPEG-4标准的基础。QT可存储的内容相当丰富,除了视频、音频以外还可支持图片、文字(文本字幕)等。扩展名:mov
使用过Mac机的朋友应该多少接触过QuickTime。QuickTime原本是Apple公司用于Mac计 算机上的一种图像视频处理软件。 Quick-Time提供了两种标准图像和数字视频格式 , 即可以支持静态的PIC和JPG图像格式,动态的基于Indeo压缩法的MOV和基于MPEG压缩法的MPG视频格式。
Ogg
Ogg是Xiph.org音频编解码Vorbis和视频编解码Theora的标砖容器,Ogg Media一个完全开放性的多媒体系统计划,OGM(Ogg Media File)是其容器格式。OGM可以支持多视频、音频、字幕(文本字幕)等多种轨道。扩展名:ogg。
OGM
OGM(Ogg Media),是Xiph.ofg的视频编解码容器,已经不再支持,并不鼓励使用。
RealMedia
RealMedia是RealVideo和RealAudio的标准容器。Real Video或者称Real Media(RM)档是由RealNetworks开发的一种档容器。它通常只能容纳Real Video和Real Audio编码的媒体。该档带有一定的交互功能,允许编写脚本以控制播放。RM,尤其是可变比特率的RMVB格式,体积很小,非常受到网络下载者的欢迎。 扩展名:rm/rmvb
RM
Real Networks公司所制定的音频/视频压缩规范Real Media中的一种,Real Player能做的就是利用Internet资源对这些符合Real Media技术规范的音频/视频进行实况转播。在Real Media规范中主要包括三类文件:RealAudio、Real Video和Real Flash (Real Networks公司与Macromedia公司合作推出的新一代高压缩比动画格式)。REAL VIDEO (RA、RAM)格式由一开始就是定位就是在视频流应用方面的,也可以说是视频流技术的始创者。它可以在用 56K MODEM 拨号上网的条件实现不间断的视频播放,可是其图像质量比VCD差些,如果您看过那些RM压缩的影碟就可以明显对比出来了。
RMVB
这是一种由RM视频格式升级延伸出的新视频格式,它的先进之处在于RMVB视频格式打破了原先RM格式那种平均 压缩采样的方式,在保证平均压缩比的 基础上合理利用比特率资源,就是说静止和动作场面少的画面场景采用较低的编码速率,这样可以留出更多的带宽空间,而这些带宽会在出现快速运动的画面场景时被利用。这样在保证了静止画面质量的前提下,大幅地提高了运动图像的画面质量,从而图像质量和文件大小之间就达到了微妙的平衡。另外,相对于DVDrip 格式,RMVB视频也是有着较明显的优势,一部大小为700MB左右的DVD影片,如果将其转录成同样视听品质的RMVB格式,其个头最多也就400MB 左右。不仅如此,这种视频格式还具有内置字幕和无需外挂插件支持等独特优点。要想播放这种视频格式,可以使用RealOne Player2.0或RealPlayer8.0加RealVideo9.0以上版本的解码器形式进行播放。
VOB
VOB文件(video Object)是一个DVD视频媒体的容器格式。VOB可以包含视频,音频,字母和菜单整合在一个流格式中。VOB是基于MPEG PS格式,但是有额外的限制和私有流的规范。MPEG PS提供非标准数据称为私有流。VOB文件是MEPG PS表站中非常严格的子集。经所有的VOB文件都是MPEG PS,但不是所有的MPEG PS都遵守VOB文件的定义。
与MPEG的PS相似,VOB文件可以包含H.262/MPEG-2 Part2或者MPEG-1 Part 2视频,MPEG-1 Audio LayerII或者MOEG-2 Audio Layer II音频,但是和MPEG PS相比,在VOB文件中使用这些压缩格式有某些限制。此外,VOB可以包括线性PCM,AC-3或者DTS视频以及字母。VOB文件不能包含AAC音频(MPEG-2 Part 7),MPEG-4压缩格式或者其他,而这些在MPEG PS标准中是允许的。
文件扩展名 .VOB
开发者: DVD Forum
类型: 媒体容器
包含: 音频,视频,字母
用于: DVD-Video
从何扩展: MPEG program stream, ISO/IEC 13818-1
标准规范: DVD-Video Book
注:上述材料来源于wiki的整理。