首页 > 代码库 > 视频编码与封装方式详解
视频编码与封装方式详解
视频编码与封装方式详解
http://blog.csdn.net/attilax/article/details/5807047
1. 编码方式和封装格式 1
2. 视频编码标准两大系统 2
MPEG-1. 2
MPEG-2. 3
MPEG-3. 3
MPEG-4. 3
ITU-T. 4
WMV.. 4
3. 常用视频编码方式有Xvid( 4
4. 常见存储封装格式 6
5. 几种常见的转换格式设置 7
6. 无损视频编码 9
1. 编码方式和封装格式
常见的AVI、RMVB、MKV、ASF、WMV、MP4、3GP、FLV等文件其实只能算是一种封装标准。
一个完整的视频文件是由音频和视频2部分组成的。H264、Xvid等就是视频编码格式,MP3、AAC等就是音频编码格式。
例如:将一个Xvid视频编码文件和一个MP3视频编码文件按AVI封装标准封装以后,就得到一个AVI后缀的视频文件,这个就是我们常见的AVI视频文件了。
由于很多种视频编码文件、音频编码文件都符合AVI封装要求,则意味着即使是AVI后缀,也可能里面的具体编码格式不同。因此出现在一些设备上,同是AVI后缀文件,一些能正常播放,还有一些就无法播放。
同样的情况也存在于其他容器格式。即使RMVB、WMV等也不例外
事实上,很多封装容器对音频编码和视频编码的组合方式放的很开,如AVI还可以使用H264+AAC组合,可以在具体使用中自己体会。尤其是MKV封装容器,基本无论什么样的组合都可以!但一般MKV用的最多的就是H264+AAC组合,此组合文件体积最小,清晰度最高。因此网上很多MKV视频都是高清晰度的。
因此,视频转换需要设置的本质就是:A设置需要的视频编码、B设置需要的音频编码、C选择需要的容器封装。一个完整的视频转换设置都至少包括了上面3个步骤。
目前最常见的视频编码方式有 MPEG-1/-2 < WMV/7/8 < RM/RMVB < Xvid/Divx < AVC/H.264,视频压缩效能和技术先进性也基本表现为上述排列顺序(由低到高,不完全准确)。
目前最常见的音频格式有 Mp3、AC-3、ACC,MP3最广泛的支持最多,AC-3是杜比公司的技术,ACC是MPEG-4中的音频标准,ACC是目前比较先进和具有优势的技术。
2. 视频编码标准两大系统
视频编码标准有两大系统: MPEG 和ITU-T,如下表
视频编码标准
MPEG 标准 由MPEG制定
MPEG-1 | MPEG-2 | (MPEG-3) | MPEG-4 | MPEG-7 | MPEG-21
ITU-T 标准 由VCEG制定
H.261 | (H.262) | H.263 | H.263v2 | H.264
MPEG-1
是MPEG组织制定的第一个视频和音频有损压缩标准。视频压缩算法于1990年定义完成。1992年底,MPEG-1正式被批准成为国际标准。
这个标准带来了VCD和MP3
MPEG-2
是MPEG工作组于1994年发布的视频和音频压缩国际标准。MPEG-2通常用来为广播信号提供视频和音频编码,包括卫星电视、有线电视等。MPEG-2经过少量修改后,也成为DVD产品的内核技术。
MPEG-3
是MPEG组织制定的视频和音频压缩标准。本来的目标是为HDTV提供20-40Mbps视频压缩技术。在标准制定的过程中,委员会很快发现MPEG-2可以取得类似的效果。随后,MPEG-3项目停止了。
MPEG-3并非等于MP3。MP3是MPEG-1音频Layer 3部分。
MPEG-4
是一套用于音频、视频信息的压缩编码标准,MPEG-4包含了MPEG-1及MPEG-2的绝大部份功能及其他格式的长处,MPEG-4大部份功能都留待开发者决定采用是否。这意味着整个格式的功能不一定被某个程序所完全函括。因此,这个格式有所谓‘profiles’及‘层次(levels)’,定义了MPEG-4用于某些特定应用的某些功能的集合。
这一标准是目前广泛应用的主流编码标准
MPEG-4由一系列的子标准组成,被称为部,包括以下的部分:
第二部(ISO/IEC 14496-2):视讯:定义了一个对各种视觉信息(包括视讯、静止纹理、计算机合成图形等等)的编解码器。对视讯部分来说,众多Profiles中很常用的一种是Advanced Simple Profile (ASP),例如XviD编码就属于MPEG-4 Part 2。
第三部(ISO/IEC 14496-3):音频:定义了一个对各种音频信号进行编码的编解码器的集合。包括高级音频编码(Advanced Audio Coding,缩写为AAC)的若干变形和其他一些音频/语音编码工具。
第十部(ISO/IEC 14496-10):高级视频编码或称高级视频编码(Advanced Video Coding,缩写为AVC):定义了一个视频编解码器(codec),AVC和XviD都属于MPEG-4编码,但由于AVC属于MPEG-4 Part 10,在技术特性上比属于MPEG-4 Part2的XviD要先进。另外从技术上讲,它和ITU-T H.264标准是一致的,故全称为MPEG-4 AVC/H.264。
ITU-T
国际电信联盟远程通信标准化组(英语:ITU Telecommunication Standardization Sector,缩写ITU-T)是国际电信联盟管理下的专门制定远程通信相关国际标准的组织。
他制定的一系列标准都是H.26X H.261 | (H.262) | H.263 | H.263v2 | H.264
其中H.262和MPEG-2处于系统和水准
H.264 对应于 MPEG-4 L10 的AVC
WMV
微软公司专有制定的一系列视频编码标准,有多个版本,从V9版本开始逐步开始走开放的、标准化的道路
3. 常用视频编码方式有Xvid(MPEG4),H264,MPEG1,MPEG2。
Xvid:与RMVB格式差不多的压缩率,通用性很强,特别是用于家用DVD和便携式MP4等设备。
Divx:1998年微软开发了第一个在PC上使用的MPEG-4编码器,其中的MS MPEG4V3系列的编解码能力都非常不错。但微软却将这个MS MPEG4V3
的视频编码内核封闭在Windows Media流媒体技术上,也就是说仅仅应用于ASF文件。这招不仅导致ASF不能充分传播和占领主流市场,更引起了一帮黑客破解了MPEG4 V3。经过这帮黑客的修改,DivX诞生了。
·DivX格式也就是DVDrip格式,它在采用了MPEG4的压缩算法同时又加入了MP3的音频技术。使用DivX技术对视频图像进行压缩,再用MP3或AC3编码对音频进行压缩,然后将视频、音频、外挂字幕等文件合成而形成的视频格式。最终结果是,使用DivX技术压缩的视频文件具有直逼DVD的质量,而体积只有后者的数分之一。
·XviD:说到XviD,我们不得不提到前面的Divx格式,后者虽然从微软MPEG4 V3发展而来,但也不是一个完全开源的技术标准。所以原先的部分人马开始了另外一种途径,重新发展XviD格式,从名字就看出,XviD是Divx倒过来的写法。XviD从Divx的基础上改进而来,具有强大的可调节性,可设置很多选项,针对不同电影进行不同的压缩方式。更重要的是,XviD是完全开放源代码,所以有很多人投入到XviD的开发之中,在这点上,XviD格式比起Divx格式有很大优势。
它们的文件后缀都是AVI的。
DIVX,XVID:DIVX视频编码技术实际就是MPEG4 压缩技术,它可以说是对上挑战DVD,对下挤压SVCD,DIVX-MPEG4对DVD和SVCD造成的威胁不容忽视(有人说它是 DVD 杀手),它由 Microsoft MPEG4v3 修改而来,使用MPEG4 压缩算法。据说MPEG4 是美国禁止出口的编码技术,用它来编码、压缩一部DVD只需要两张CD-ROM!这样就意味着,你不需要买昂贵的 DVD ROM 也可以得到和它质量差不多的视频节目了,而这一切只需要你有 CD-ROM。播放(解压缩)MPEG4编码,对机器的要求也不高,CPU只要是300MHz以上,再配上64MB的内存和一个有8MB显存的显卡就可以流畅地播放了。对播放软件方面的要求就更宽松,你只需要安装一个500K 大小的MPEG4 编码驱动后,用Windows自带的媒体播放器就可以流畅地播放。
XVID与DIVX实际上是同出一源,都是根据MPEG4V3修改而来,不过由于DIVX在版本5之后不在开放源代码,因此有部分程序员将DIVX 3.11改进后成为XVID。
DIVX和XVID的另外一个特点是可以外挂字幕和AC3音频源,这样就可以在近似于DVD的画面质量的基础上,享受到DVD的音效,同时还可以自己选择字幕,给了用户很大的自由度。
AVI,WMV,ASF,DAT,MPG,VOB:这些都是媒体文件的存储格式,AVI通常用于DIVX/XVID编码的文件的存储,
MPEG4文件的特性为,文件的封装格式为avi(也即文件名后缀为avi),文件的视频格式为MPEG-4 Visual(简称MPEG-4 ),视频编解码器ID为Xvid或DivX(有时显示为DX50(DivX 5)).
H264:面前压缩率最高的视频压缩格式,与其他编码格式相比,同等画面质量,文件体积最小,远远超过RMVB
编码格式,电脑都可以播放,部分便携式视频设备也支持,如苹果播放器。PDA/PPC等设备也可以使用
2、H.261/H.263
①、H.261标准通常称为p*64,H.261对全色彩、实时传输动图像可以达到较高的压缩比,算法由帧内压缩加前后帧间压缩编码组合而成,以提供视频压缩和解压缩的快速处理。由于在帧间压缩算法中只预测到后1帧,所以在延续时间上比较有优势,但图像质量难以做到很高的清晰度,无法实现大压缩比和变速率录像等。
②、H.263的基本编码方法与H.261是相同的,均为混合编码方法,但H.263为适应极低码率的传输,在编码的各个环节上作了改进,如以省码字来提高编码图像的质量,此外,H.263还吸取了MPEG的双向运动预测等措施,进一步提高帧间编码的预测精度,一般说,在低码率时,采用H.263只要一半的速率可获得和H.261相当的图像质量。
MPEG1:其实就是VCD编码格式。
MPEG-1:制定于1992年,它是针对1.5Mbps以下数据传输率的数字存储媒体运动图像及其伴音编码而设计的国际标准。也就是我们通常所见到的VCD制作格式。使用MPEG-1的压缩算法,可以把一部120分钟长的电影压缩到1.2GB左右大小。这种视频格式的文件扩展名包括.mpg、.mlv、.mpe、.mpeg及VCD光盘中的.dat文件等。
MPEG1:技术特点:MPEG-1制定于1992年,可适用于不同带宽的设备,如CD-ROM、Video-CD、CD-i。它的目的是把221Mbit/s的NTSC图像压缩到1.2Mbit/s,压缩率为200∶1。这是图像压缩的工业认可标准。它可针对SIF标准分辨率(对于NTSC制为352×240;对于PAL制为352×288)的图像进行压缩,传输速率为1.5Mbits/s,每秒播放30帧,具有CD音质,质量级别基本与VHS(广播级录像带)相当
MPEG-1也被用于数字电话网络上的视频传输,如非对称数字用户线路(ADSL),视频点播(VOD),以及教育网络等
MPEG2:DVD编码格式。比MPEG1强,与MPEG1一样,已经落后的编码格式,压缩率都不高,编码后的文件体积大,多用于希望把网上下载的文件转换为VCD或DVD碟的时候。
MPEG2:技术特点:MPEG-2制定于1994年,设计目标是高级工业标准的图像质量以及更高的传输率。MPEG-2所能提供的传输率在3MB-10MB/s间,在NTSC制式下的分辨率可达720×486,MPEG-2能够提供广播级的视像和CD级的音质。MPEG-2的音频编码可提供左右中及两个环绕声道,以及一个加重低音声道和多达七个伴音声道。MPEG-2的另一特点是,可提供一个较广范围的可变压缩比,以适应不同的画面质量、存储容量以及带宽的要求。
应用范围:MPEG-2技术就是实现DVD的标准技术,现在DVD播放器也开始在家庭中普及起来了。除了作为DVD的指定标准外,MPEG-2还可用于为广播、有线电视网、电缆网络以及卫星直播提供广播级的数字视频。
MPEG-2:制定于1994年,设计目标为高级工业标准的图像质量以及更高的传输率。这种格式主要应用在DVD/SVCD的制作(压缩)方面,同时在一些HDTV(高清晰电视广播)和一些高要求视频编辑、处理上面也有相当的应用。使用MPEG-2的压缩算法,可以把一部120分钟长的电影压缩到4到8GB的大小。这种视频格式的文件扩展名包括.mpg、.mpe、.mpeg、.m2v及DVD光盘上的.vob文件等。
MPEG4:技术特点:MPEG-4 于1998 年11 月公布,它不仅是针对一定比特率下的视频、音频编码,更加注重多媒体系统的交互性和灵活性。这个标准主要应用于视像电话、视像电子邮件等,对传输速率要求较低,在4800-64000bits/s之间,分辨率为176×144。MPEG-4利用很窄的带宽,通过帧重建技术、数据压缩,以求用最少的数据获得最佳的图像质量。
应用范围:经过这两年的发展,现在最热门的应用是利用 MPEG-4 的高压缩率和高的图像还原质量来把 DVD 里面的 MPEG-2 视频文件转换为体积更小的视频文件。经过这样处理,图像的视频质量下降不大但体积却可缩小几倍,可以很方便地用 CD-ROM 来保存 DVD 上面的节目。另外,MPEG-4在家庭摄影录像、网络实时影像播放将大有用武之地。
3、MPEG是(运动图像编码专家组)研发的,是压缩运动图像及其伴音的视音频编码标准,它采用了帧间压缩,仅存储连续帧之间有差别的地方 ,从而达到较大的压缩比。MPEG目前比较常用MPEG—1、MPEG—2和MPEG—4三个版本,以适应于不同带宽和图像质量的要求。
①、MPEG—1的视频压缩算法依赖于两个基本技术,一是基于16*16(像素*行)块的运动补偿,二是基于变换域的压缩技术来减少空域冗余度,压缩比相比M-JPEG要高,对运动不激烈的视频信号可获得较好的图像质量,但当运动激烈时,图像会产生马赛克现象。 MPEG-1以1.5Mbps的数据率传输视音频信号,MPEG-1在视频图像质量方面相当于VHS录像机的图像质量,视频录像的清晰度的彩色模式≥240TVL,两路立体声伴音的质量接近CD的声音质量。 MPEG-1是前后帧多帧预测的压缩算法,具有很大的压缩灵活性,能变速率压缩视频,可视不同的录像环境,设置不同的压缩质量,从每小时80Mb至400Mb不等,但数据量和带宽还是比较大。
②、MPEG-2它是获得更高分辨率(720*572)提供广播级的视音频编码标准。MPEG-2作为MPEG-1的兼容扩展,它支持隔行扫描的视频格式和许多高级性能包括支持多层次的可调视频编码,适合多种质量如多种速率和多种分辨率的场合。它适用于运动变化较大,要求图像质量很高的实时图像。对每秒30帧、720*572分辨率的视频信号进行压缩,数据率可达3-10Mbps。由于数据量太大,不适合长时间连续录像的需求。
③、MPEG-4是为移动通信设备在Internet网实时传输视音频信号而制定的低速率、高压缩比的视音频编码标准。 MPEG-4标准是面向对象的压缩方式,不是像MPEG-1和MPEG-2那样简单地将图像分为一些像块,而是根据图像的内容,其中的对象(物体、人物、背景)分离出来,分别进行帧内、帧间编码,并允许在不同的对象之间灵活分配码率,对重要的对象分配较多的字节,对次要的对象分配较少的字节,从而大大提高了压缩比,在较低的码率下获得较好的效果, MPEG-4支持MPEG-1、MPEG-2中大多数功能,提供不同的视频标准源格式、码率、帧频下矩形图形图像的有效编码。
总之,MPEG-4有三个方面的优势:
①、具有很好的兼容性;
②、MPEG-4比其他算法提供更好的压缩比,最高达200:1;
③、MPEG-4在提供高压缩比的同时,对数据的损失很小。所以,mpeg-4的应用能大幅度的降低录像存储容量,获得较高的录像清晰度,特别适用于长时间实时录像的需求,同时具备在低带宽上优良的网络传输能力。
RM,RMVB:RM和RMVB是REAL公司出品的一种音视频编码格式,同时也是这种格式编码的文件的存储方式,其中RM是恒定码率的,而RMVB是可变码率的。REAL编码的特点是在尽可能低的数据率上实现尽可能高的画面质量,尤其是RMVB,在450K的码率的时候就可以实现相当清晰的画面质量,缺点是音频质量比较一般,同时画面细节损耗比较高,尤其是亮度部分,所以RM和RMVB的电影通常会给人画面比较暗的感觉。
其他音视频编码格式:其他比较常见的其他格式有MOV,MP4,H263,H264,WMV-HDTV,MKV,OGG,INDEO CODEC,ACM,WAV,CD等等,因为这些格式或不常见,或不适合网络流分发,所以应用范围通常比较有限。
4. 常见存储封装格式
WMV和ASF通常是微软MPEG4算法的存储格式
DAT和MPG是MPEG1算法编码的文件的存储方式,其中DAT主要用于VCD,VOB则是MPEG2算法编码的文件的存储方式,通常用于DVD。
不同视频封装格式有不同的优缺点,总体上说AVI和RM是目前最常见的格式,而AVI由于先天缺陷不利于网络传输;m2ts和mkv是先进的下一代标准,今后可能逐步流行。
? AVI (.avi)
是英语Audio Video Interleave(“音频视频交织”或译为“音频视频交错”)的首字母缩写,由微软在1992年11月推出的一种多媒体文件格式,用于对抗苹果Quicktime的技术。现在所说的AVI多是指一种封装格式。
它支持很多种编码方式:Xvid、WM、H.264、MPEG等。
常见的组合有:* (DivX或XviD+MP3).avi,* (H.264+MP3).avi* (WMV9+MP3).avi
? ASF (.asf)
Advanced Systems Format(原名“Advanced Streaming Format”,.asf),微软的一个与Windows Media Player相关联的流媒体格式。
他的注意目的是解决AVI格式在流传输上的不足。
? WMV (.wmv)
微软的对应WMV标准的封装格式
? QuickTime ( .mov)
苹果的,不用说了
? MPEG (.mpg / .mpeg)
基于MPEG-1/MPEG-2/MPEG-4系列标准的封装格式
? MP4 (.mp4)
全称MPEG-4 Part 14,是一种使用MPEG-4的多媒体电脑档案格式,副档名为.mp4,以储存数码音讯及数码视讯为主。
? m2ts (.m2ts / .mts )
是一种视讯档案格式(container)可支援多工的影音流. m2ts架构于MPEG transport stream 以及著名的 BDAV MPEG-2 transport stream.[1][2][3] 这种档案格式多支援于高清的 Blu-ray Disc 与 AVCHD.
这是最新的MPEG-4架构中的封装格式,很可能会成为下一代的主流方式
? Matroska (.mkv / .mks / .mka )
Matroska是一种新的多媒体封装格式,这个封装格式可把多种不同编码的视频及16条或以上不同格式的音频和语言不同的字幕封装到一个Matroska Media档内。它也是其中一种开放源代码的多媒体封装格式。
? Ogg
是一个自由且开放标准的容器格式,由Xiph.Org 基金会所维护。Ogg格式并不受到软件专利的限制,并设计用于有效率地流媒体和处理高品质的数字多媒体。“Ogg”意指一种文件格式,可以纳入各式各样自由和开放源代码的编解码器,包含音效、视频、文字(像字幕)与元数据的处理。
? RM ( .rm / .rmvb)
Real 公司
5. 几种常见的转换格式设置
适合家用DVD播放的媒体文件(此DVD需要支持MP4文件播放功能)
代表含义 设置值
设置音频流编码格式 LAME MP3
设置音频流采样率 44100Hz
设置音频流取样声道 默认即可
设置音频流编码具体方式 ABR
设置音频流转换后的声道 Auto
设置音频流转换码率 96 kbps或128kbps
设置视频流具体编码方式
Bitrate-based
设置视频流转换码率 400 kbps或500 kbps
设置视频编码格式 Xvid
设置封装容器 AVI
设置转换后的文件的分辨率 400x-3
设置转换后的文件的帧率 24
适合支持大部分PDA、智能手机播放的媒体文件,低速CPU机型适用(CPU速度低于400MHz的)
此设置方式一般也适合大多数MP4播放设备。PDA、智能手机需要安装TCPMP才可以更好的支持AVI和MKV格式
代表含义 设置值
设置音频流编码格式 LAME MP3
设置音频流采样率 44100Hz
设置音频流取样声道 默认即可
设置音频流编码具体方式 ABR
设置音频流转换后的声道 Auto
设置音频流转换码率 96 kbps
设置视频流具体编码方式
Bitrate-based
设置视频流转换码率 320 kbps
设置视频编码格式 Xvid
设置封装容器 AVI
设置转换后的文件的分辨率 320x-3
设置转换后的文件的帧率 24
适合支持大部分PDA、智能手机播放的媒体文件,高速CPU适用(CPU速度大于或等于400MHz的)
代表含义 设置值
设置音频流编码格式 CT AAC+
设置音频流采样率 44100Hz
设置音频流取样声道 默认即可
设置音频流编码具体方式 aacplus
设置音频流转换后的声道 Stereo
设置音频流转换码率 32 kbps
设置视频流具体编码方式
Bitrate-based
设置视频流转换码率 200 kbps
设置视频编码格式 H264
设置封装容器 Matroska
设置转换后的文件的分辨率 320x-3
设置转换后的文件的帧率 24
适合保存VCD至硬盘的转换设置
设置位置 代表含义 设置值
设置音频流编码格式 CT AAC+
设置音频流采样率 44100Hz
设置音频流取样声道 默认即可
设置音频流编码具体方式 aacplus
设置音频流转换后的声道 Stereo
设置音频流转换码率 48 kbps
设置视频流具体编码方式
Quality-based
设置视频流转换码率 95
设置视频编码格式 H264
设置封装容器 Matroska
设置转换后的文件的分辨率 352x-3
设置转换后的文件的帧率 24
适合保存DVD至硬盘的转换设置
代表含义 设置值
设置音频流编码格式 CT AAC+
设置音频流采样率 44100Hz
设置音频流取样声道 默认即可
设置音频流编码具体方式 aacplus
设置音频流转换后的声道 Stereo
设置音频流转换码率 64 kbps
设置视频流具体编码方式
Bitrate-based
设置视频流转换码率 500 kbps或600 kbps
设置视频编码格式 H264
设置封装容器 Matroska
设置转换后的文件的分辨率 640x-3
设置转换后的文件的帧率 24
6. 无损视频编码
压缩,还是不压缩?这是个问题。常见的MPEG、WMV、RMVB等格式实际上都属于有损压缩,换句话说就是牺牲画质换取较小的体积。但如果不压缩,视频文件的体积将会十分惊人,一盘60分钟的DV带,如果以AVI格式保存,大约需要11GB空间,存储和携带都非常不便。那为何不试试视频文件的无损压缩呢?这可不是痴人说梦,实际上无损压缩视频并不复杂,装上编码器,几步就能完成。
一.视频无损压缩三剑客
目前常用的无损压缩编码/解码器有三种,它们分别是CorePNG、Huffyuv和MSU Lossless Video Codec,三者都是免费软件,在压缩比和压缩速度上可以说是各有千秋,下面笔者会逐一介绍。这些编码器都是只有核心,没有外壳,因此必须通过视频转换软件调用,笔者建议使用VirtualDub,这是个免费软件,可以到 http://www.skycn.com/soft/1998.html 下载。
上述种编码/解码器的下载地址如下:
MSU Lossless Video Codec: http://www.ogg.cn:8080/Upload/DownLoad/msu-ls-codec.zip
Huffyuv: http://www.ogg.cn:8080/Upload/DownLoad/huffyuv_220.rar
CorePNG: http://www.ogg.cn:8080/Upload/DownLoad/CorePNG-VFW-v0.8.2.exe
其中MSU Lossless Video Codec和CorePNG都可以直接运行exe可执行文件安装,只有Huffyuv,必须在解压后用右键单击huffyuv.inf文件,选择弹出菜单中的“安装”安装,如图1所示。
二.实战无损压缩
这些编码器的调用方式完全一致。打开VirtualDub,执行“文件”/“打开视频文件”导入要处理的视频,这里笔者使用的是一个9.93MB的AVI视频文件,然后选择“视频”/“压缩”打开如图2所示的对话框,在左边的列表中我们可以找到刚才安装的编码器。下面我们就从MSU Lossless Video Codec开始。
1.MSU Lossless Video Codec
选择“MSU Lossless Video Codec BETA v0.2.4”,单击“配置”,打开如图3所示的对话框,该编码器的默认设置为“High compression”,软件会在提高压缩比的同时尽可能多的保留图像细节,这个设置实际上是有损的,但其视频质量却非常高,即使将画面放大数倍,肉眼也很难分辨出其中的差别。当然,如果你的要求很高,也可以选择“Low compression”,这样就可以得到100%的无损压缩视频了,不过得到的视频文件体积相对较大,详细对比大家可以参看表1。
2.Huffyuv
在图2所示的对话框中选择“uffyuv v2.2.0”,再单击“配置”,打开如图4所示的对话框,“YUY2 compression method”下拉列表中的选项对压缩比的影响最大,其默认设置是“Predict median(best)”,此时的压缩速度较慢,但压缩比最高;选择“Predict left(fastest)”则可大幅度提高压缩速度,但却会降低压缩比,对比情况可参看表2。在“RGB compression medhod”下拉列表中请务必选择“<-Convert to YUY2”,否则播放时会造成非法操作:(,“Field Threshold”可根据源文件的水平清晰度设置,最高可设置到768线。其它选项不用管它,单击“OK”即可设置完成。
3.CorePNG
在图2所示的对话框中选择“CorePNG VFW Codec v0.8.2”,单击“配置”,打开如图5所示的对话框,这里的设置虽多,但对压缩比影响最大的是“Compression Level”,其默认设置为“6-Normal”,这是个中庸的设置,另外你也可以选择“1-Fastest”或“9-Best”,其它选项一般无须更改。不同设置下的压缩比见表3。
进行完以上设置后,执行“文件”/“另存为AVI”即可开始压缩。只要安装了编码/解码器,系统中的任何多媒体播放工具,例如Windows Media Player或者MPC等,以及视频处理软件都可以直接打开这些AVI文件。
huffyuv - 大名鼎鼎, 不用介绍了, 相当快速的无损压缩 codec, 不过似乎停止开发了
下载页面: http://neuron2.net/www.math.berkele...rg/huffyuv.html
Alparysoft Lossless Codec - Alparysoft 的商业软件, 如果不注册右下角就会有 logo, 即便如此, 压缩比通常会远高于 huffyuv, 速度也不错
如果您感兴趣的话, 下载页面: http://www.alparysoft.com/prod/compression/index.php
CorePNG - 不了解, 看到 doom9 上有人推荐, 所以找来, 压缩比跟 AlparySoft 的差不多, 可能稍好点, 但速度很慢...
下载页面: http://corecodec.org/projects/corepng/
最后隆重推荐 ffv1 , FFMpeg Project 下开发的无损压缩, 所以很自然的 ffdshow encoder 部分包含有它, 压缩比最大, 速度也很快, 但多半比 huffyuv 慢, 没有细看...^^, 而且是 OpenSource 的软件, 免费, 加上 ffdshow 加入了它很容易找到, ^^
ffmpeg project: http://ffmpeg.sourceforge.net/
ffdshow project: http://sourceforge.net/project/show...ackage_id=59355
使用 ffdshow 包含的 ffv1 请下载 ffdshow-20040725.exe, 安装后 vfw 选择窗口会有 ffdshow Video Codec, 在 encoder 部分的下拉选项选择 FFv1 即可.
下面是些小测试.
讯源1 (bink) 6,912 kb
uncompressed 327,612 kb
Huffyuv 163,630 kb
Alparysoft Lossless 68,276 kb
CorePNG 63,934 kb
FFv1 56,918 kb
huffyuv 不用说了, 其他三个经测试 PSNR 同 uncompressed.avi 比较计算结果都是
Y: PSNR: 1.#INF 1.#INF 1.#INF
U: PSNR: 1.#INF 1.#INF 1.#INF
V: PSNR: 1.#INF 1.#INF 1.#INF
Sum: PSNR: 1.#INF 1.#INF 1.#INF
Minimum Average Maximum
值得信赖 Alpary 的不注册右下角会有 logo, 所以比较的时候讯源和比较对象都切了 64 像素, 切掉了编码后有而讯源中没有的 logo -_-~! .
尽管如此, 我们有那么棒的 MPEG-2/MPE-4 的编码, 或者 Real Codec 等为什么要巨大的无损编码? 比如即使是 FFV1 其码率都是 DVD 最高码率的 2 倍以上.
无损编码通常用来采集, 极少有人会用其最为最终成品, 而一般都会交给常用的有损编码的, 所以无损编码通常只是个 intermediate 而以 ^^, 它会很有用处当
1. Input 是个怪胎, 没有第三方软件支持, 而自己的编辑/编码 又很差劲, 比如 bink...(不好意思说它坏话了), bink 其实不差, 它的压缩比很高, 但有时太糊了, 比如 ff8 的 CG, 而且没有第三方软件支持, 上了它的贼船就别想下去, 幸好它还支持 vfw, 可以做编码转换, 但不支持 XviD 的 2pass, 压缩出来结果好象也没有 vdmod 好(?).
2. 比如想要自己做 gameplay, 采集成无损的 avi 再作后期处理, avi 如此常见什么软件都支持.
3. 作为 Intermediate, uncompressed avi 太大了... 而且大于 2G/4G 的文件会不被一些 软件/文件系统 支持, 用 FFv1 达到 3-6 倍压缩率且同样无损, 可以节省大量硬盘空间, 速度在现在的主流配置上应该也不错, 何乐而不为 .
4. WinDVR 和 PowerDVR 支持用 MPEG-2 采集, 但很多 TV 采集软件并不支持 mpeg2 编码, 如果用 XviD/DivX/RV 第一有损, 第二若开了高级选项速度可能会很慢。 所以不妨用无损编码, 在这领域 huffyuv 由于其速度很快一直很受欢迎, ffv1 (vlc) 速度应该比 huffyuv 慢, 如果机器不错做 TV 采集也可以试试 ffv1
上面的只作了一次测试, 具体的压缩率并不是唯一, 更多的 doom9 上的 moogie 曾经做过测试 , ffv1 虽不是每次都最好, 不过几乎每次都进了三甲
继续玩儿 ff8 cg ...
ps. ff8 ending theme 最后三个 CG, 加在一起 16:07, 用 ffv1 无损压缩后才 1.04G, 码率 93nn kb/s, 跟 DVD 最高码率差不多持平....当然 ff8 CG 其实只有 15 fps, 不然该两倍于其码率的 但也很不错咯
视频编码与封装方式详解