玩视频压制、视频转换,少不了会接触到AVS,鉴于许多菜鸟网友对于AVS这种软件还很不熟悉,特别是对于它的工作原理感到费解,影响了对这一强大工具的使用,特此把新近琢磨出的一点儿心得和大家分享一下,有理解不到位之处,欢迎老鸟批评指正。
IsaacZ打算通过几个问答帮助大家了解AVS的工作原理:
什么是AVS?
AVS 是 AviSynth 的缩写,而 AviSynth 又是 “AVI Synthsizer” 的缩写,意思是 “AVI 合成器”。
我需要单独安装 AviSynth 软件吗?
不必单独安装AVS,一般的编解码器集成包(如完美解码)均包含这个组件。
安装AVS软件后,开始菜单中找不到可执行的程序?
安装AVS软件后,会发现开始菜单中并未出现可以直接运行的程序快捷方式,而是给了几个网页链接,还都是英文的,很难懂。这些是一些AVS实用说明文档,还有一些范例文件。我们可以不管它们,直接根据网上的教程学习编写AVS脚本文件即可。当然,如果你英文和耐心都足够好,也可以研读一下这些文章和范例。
怎样使用AVS?
通过AVS提供的教程和范例,我们先编写AVS脚本,保存成“.avs”格式文件,然后直接用视频播放软件或者视频编码软件来处理这个AVS脚本文件。
AVS文件包含哪些内容?
在一个AVS文件中,可以定义n多东西,作为菜鸟来说,我们只需要学会定义两个内容就够了:
1、用AVS来处理的视频源文件
2、处理源文件需要调用的解码器或滤镜的名称。
一个典型的AVS文件的内容如下:
Loadplugin(“d:\avsplugin\vsfilter.dll”)
Directshowsource(“d:\test.avi”)
Textsub(“d:\test.srt”)
怎样编写AVS文件?
直接用记事本就可以创建和编辑AVS文件,只需要掌握一些常用语句并理解其意义。很多时候,我们推荐菜鸟网友直接复制教程中的现成脚本语句到自己的脚本文件,然后稍加修改再保存即可。
有没有编写AVS文件的辅助工具?手写AVS脚本实在是太难了!
有的。本论坛有一款EasyAVS[点击下载]可以使用。界面十分简单,一共3个标签,第一个标签定义源文件和外挂字幕,第2个标签定义需要的其他滤镜,第3个标签“编辑”中直接就可以看到脚本已经被自动生成了。可以方便地预览效果、保存和另存为AVS文件。
AVS 的工作原理和流程是怎样的?
AVS 这个软件的类别属于 FrameServer,意为“帧服务器”,因为它起到的功能是一个“中转站”的作用,所以也有人借用网络通信上的名词称之为“帧中继”或“帧传送”软件。它的具体工作原理是这样的:
安装了AVS以后,AVS会自动在系统内部关联已经注册的分离器、解码器等滤镜,一旦一个AVS文件被视频播放软件或视频转换软件载入,则AVS文件中定义的所有操作被自动激活。
首先AVS调用分离器对片源进行分离;
然后AVS调用音频解码器和视频解码器对分离出来的音频流和视频流进行解码,这时AVS中定义的各种滤镜生效,产生我们希望产生的一切效果,比如加挂字幕。
解码后的音频流和视频流被AVS按照重新编码并合成为一个虚拟的AVI文件,并以即时帧的方式传送给播放软件或是视频转换编码软件。
要点:AVS软件的所有操作都是在内存中完成的,尽管它是一个“合成器”,但它并不在硬盘上产生真实的AVI文件,而是在内存中一边合成一边传送,直接将视频流传送给了播放或编码软件。