AVI是Audio Video Interleave(音频视频交错)的简称,它是1992年微软提出的一种多媒体文件格式,最初用于对抗Apple公司的Quicktime技术,不过,如今的AVI格式一般指代一种文件封装格式。
AVI格式的文件对视频数据采用了有损压缩,压缩比较高,因此画面质量一般不好,不过,这并不影响其使用的广泛性。需要注意的是,AVI格式文件的缺点是体积庞大,而且更为糟糕的是压缩标准不统一,最普遍的现象就是高版本Windows媒体播放器播放不了采用早期编码编辑的AVI格式视频,而低版本Windows媒体播放器又播放不了采用最新编码编辑的AVI格式视频,所以我们在进行一些AVI格式的视频播放时常会出现由于视频编码问题而造成的视频不能播放或即使能够播放,但存在不能调节播放进度和播放时只有声音没有图像等一些莫名其妙的问题,如果用户在进行AVI格式的视频播放时遇到了这些问题,可以通过下载相应的解码器来解决。AVI格式的文件随处可见,比如一些游戏、教育软件的片头,多媒体光盘中,都会有不少的AVI 。
AVI的文件结构,可以分为“头部”,“数据”,“索引”三个部分。
头部部分包含文件的通用信息,定义了数据的格式,所采用的压缩算法等参数。
数据部分是AVI格式文件的主题,里面图像数据和声音数据是交互存放的。
索引部分则保存在文件的尾部,可以通过索引跳转到文件的任意位置。
值得一提的是,1992年微软公司推出了AVI技术及其应用软件VF(Video for Windows),显然,VFW的核心就是AVI。围绕AVI文件,VFW推出了一整套完整的视频采集、压缩、解压缩、回放和编辑的应用程序接口(API)。而OpenCV在windows系统默认的摄像头捕获函数其内部也是默认调用了VFW模块。
AVI没有MPEG这么复杂,从WIN3.1时代,它就已经面世了。它最直接的优点就是兼容好、调用方便而且图象质量好,因此也常常与DVD相并称。但它的缺点也是十分明显的:体积大。也是因为这一点,我们才看到了MPEG-1和MPEG-4的诞生。2小时影像的AVI文件的体积与MPEG-2相差无计,不过这只是针对标准分辨率而言的:根据不同的应用要求,AVI的分辨率可以随意调。窗口越大,文件的数据量也就越大。降低分辨率可以大幅减低它的体积,但图象质量就必然受损。与MPEG-2格式文件体积差不多的情况下,AVI格式的视频质量相对而言要差不少,但制作起来对电脑的配置要求不高,经常有人先录制好了AVI格式的视频,再转换为其他格式。
AVI能够使用的编码:
视频部分(括号内表示的是该视频的FourCC)(FourCC,Four Character Codes,是由四个字节组成的一种独立表示视频数据流格式的四位元组,在wav,avi等文件当中会有一段FourCC来描述这个文件是利用何种codec(编解码器)来编码的,)
1.MPEG-1,MPEG-2(MPEG/MPEG1/MPEG2)
2.MPEG-4(MP4V/XVID/DX50/DIVX/DIV5/3IVX/3IV2/RMP4)
3.MS-MPEG4(MPEG4/MP42/MP43)
4.WMV7/WMV8/WMV9(WMV1/WMV2/WMV3)
5.DV(DVSD/DVIS)
6.Flash Video(FLV1/FLV4)
7.LossLess JPEG(LJPG)
8.H.264(AVC1/DAVC/H264/x264)
9.H.263(H263/S263)
10.H.261(H261)
11.Huffyuv(HFYU)
12.AVIzlib(ZLIB)
13.AVImszh(MSZH)
14.Theora(THEO)
15.Indeo Video(IV31/IV32)
16.Cinepak(cvid)
17.Microsoft Video1(CRAM)
18.On2VP3(VP30/VP31)
19.On2VP4(VP40)
20.On2VP6(VP60/VP61/VP62)
21.VC-1(WVC1)
音频部分
1. PCM
2. MP3
3. AC-3
4. AAC
5. FLAC
6. Indeo Audio
7. TrueSpeech
8. WMA
9. Vorbis
另外,值得一提的是,以AVI格式结尾的视频文件有好几种,不同种类对应的压缩方式是不一样的。这也就意味着,以AVI格式结尾的文件,随着压缩方式的不同,需要的解码器也是不同的。
① 非压缩格式的AVI文件(或者MPEG-1格式的文件),这个就不需要任何的插件就可以直接播放了。
② DIVX格式的AVI文件,安装最新版本的DIVX解码器就可以播放了。不过,正式版本的DIVX是要收费的,如果你用的是非正式版的,或者试用版的,估计可能会出现一些问题。
③ XVID格式的AVI文件,这是MPEG-4格式的一种,可以说是从DIVX变异而来的。XVID是一个免费的视频编解码器,你可以放心大胆的使用。
④ ffdshow MPEG-4格式的AVI文件,现在越来越多的AVI都采用ffdshow MPEG4来进行压缩编码,它集成了XVID和DIVX两者的优点。所以,如果你安装了ffdshow,那么就不用担心DIVX,XVID编码的解码了。另外,ffdshow还提供了丰富的滤镜功能,如增加亮度,增加锐度等。
⑤ WMV9格式的AVI文件,微软自己推出的MPEG4编码标准。使用Media Player 9.0就可以播放。
⑥ VP6格式的AVI文件,也是一种MPEG4的编码格式,On2 Technologies开发的编码器,VP6号称在同等码率下,视频质量超过了Media Player 9.0和H.264。VP6视频编码器目前被中国的EVD所采用,不过,除此之外,这种格式的编码的应用并不多见。
⑦ 其它格式的AVI文件。
正如前面所说,AVI只是一个外壳框架,并没有规定内部的解码必须采用什么标准。这就造成了同样是.avi结尾,但有的播放器能播放,有的却不能的现象经常发生。