当前位置: 主页 > 软件教程 > 视频转换软件 > AviSynth(AVS)基础知识及使用教程

AviSynth(AVS)基础知识及使用教程

2008-12-22   www.av110.net 整理 / 未知 点击: 标签:AviSynth
  

一、简述 
  AviSynth是AVI SYNTHesizer的缩写,意思就是AVI和成器,是一个Frameserver。(Frameserver就是一个把影像文件从一个程序转换到另外一个程序的过程, 其间没有临时文件或中介文件产生)
  AviSynth是由Ben Rudiak-Gould首创的一种非常有用的工具,能够提供各种方式来合并和滤镜处理影像文件。最独特的就是AviSynth并不是一个孤立的影像处理程序,而是在影像文件和应用程序之间担任“中间人”的角色。
 
  AviSynth的基本工作原理是这样的:
  首先建立一个包含特定命令的文本,称之为“脚本”(后缀为avs),这些命令指定要运行处理的影像文件和滤镜;
  然后运行影像应用程序,比如VD或ND,打开脚本。此时AviSynth就开始工作了,打开脚本中指定的影像文件,运行特定的滤镜,并把输出结果提供给影像应用程序。但影像应用程序并不了解AviSynth在后台所做的处理,而认为是直接打开了一个“被处理过”的影像文件。
  因此使用AviSynth有5大优势:

  • 1. YUV支持:内建滤镜可以在YUV环境下运行,第三方滤镜几乎也兼容YUV,所以比起VD、ND的内嵌滤镜必须在RGB环境下运行要快很多。省却了一个转换的过程,将来还可以支持YV。
  • 2. 滤镜处理:内建许多影像处理滤镜,比如Resizing,Cropping等。还有大量的第三方强力滤镜,并可以调用VD以及AviUtl的第三方滤镜。
  • 3. 突破2G限制:通过AviSynth打开影像文件就相当于应用程序直接打开,这样就可以使本身有2G限制的程序也能突破2G的限制。
  • 4. 打开格式:AviSynth可以打开几乎所有影像文件,包括MPEG和QuickTime。所以当影像应用程序通过AviSynth打开这些文件时,会被认为是打开标准的AVI,这样就可以处理影像应用程序本身并不支持的格式
  • 5. 节省硬盘空间:AviSynth处理的影像文件在运行过程中直接导入应用程序,没有临时文件,所以节省硬盘空间。

  AviSynth现在有3个版本,第一个是Ben Rudiak-Gould的首先编译的AviSynth v1.0b;在Ben Rudiak-Gould停止开发后,Edwin van Eggelen继续开发,最新的版本是AviSynth v1.0b6;在2002年7月第二次源码编写计划开始,目前最新的版本是AviSynth v2.0.6,新的v2.5版还在开发中。
  最后一个版本比较强大,更新速度快,增加了许多实用的命令,也吸收了一些优秀的第三方滤镜成为内建滤镜,强力推荐使用。

 
二、安装
 AviSynth的安装可谓简单,先下载AviSynth,然后解压缩,把AviSynth.dll复制到Windows\System下(W98,ME)或Windows\System32下(W2K,XP),然后运行INSTALL.REG就完成安装了。


三、内建滤镜
  AviSynth内建了数目繁多的滤镜,所以只能介绍一些最常见实用的一部分。
 
1、源文件滤镜
① AVISource  :导入AVI,对于DivX或XviD,需要安装相应的Codec。
例:AVISource("test.avi")
② WAVSource :导入WAV
例:WAVSource("test.wav")

2、处理滤镜
① AddBorders  :加边:给影像加黑边,尤其适用于对16:9的影像加字幕,希望不影响图像,把字幕加在图象的下方的情况。参数是整数,顺序是左、上、右、下。
例:AddBorders(0,64,0,64) # 把640*352(16:9)改成640*480(4:3)

② ConvertToRGB 和 ConvertToYUY2 
改变颜色环境:
VD和AviUtl第三方滤镜有的需要RGB环境才能运行,需要ConvertToRGB来进行切换。
有的RAW文件是RGB的,但调用的AVISynth滤镜只能运行在YUV下,就需要用ConvertToYUY2来运行。
例:ConvertToRGB() # 改变成RGB颜色环境
??ConvertToYUY2() # 改变成YUV颜色环境
③ Crop
切边:为了保持比例或切除黑边,参数是整数,顺序是左、上、宽、高。
例:Crop(8,0,704,480) # 左右各切去8,以保持比例
④ Levels
层次:调节亮度、对比度和Gamma值。
例:Levels(0,1.2,255,0,255) # 调整Gamma,使画面变亮
⑤ LanczosResize
放大缩小:Lanczos采样方法可以在图像处理中看到,是BicubicResize的替代者,提供更精准、更锐利的画质。本来是日本人开发的第三方滤镜,在日本普遍使用,欧美使用BicubicResize。自2.05版本开始吸收为内置滤镜。
例:LanczosResize(640,480) # 把分辨率改变为640*480
⑥ Tweak
??调整:可以调节色度,饱和度,亮度,对比度。
??色度:-180.0~180.0,默认0.0。正数趋向红色,负数趋向绿色。
??饱和度:0.0~10.0,默认1.0。0.0为黑白。
??亮度:-255.0~255.0,默认0.0。
??对比度:0.0~10.0,默认1.0。

3、编辑滤镜
①FadeIn 和 FadeOut
淡入和淡出:提供淡入和淡出功能,尤其是淡出功能,可以使影片结束地更自然。参数为整数,表示需要编辑的帧数。
例:FadeOut(24) # 影片最后1秒淡出
②Trim
截取:决定需要处理的部分。参数为整数,表示需要编辑的开始帧和结束帧。对抽样做Sample比较有用。
例:Trim(240,480) # 决定处理240~480这一片断

4、声音滤镜
① AudioDub
影音合并:可以把影像和声音合并在一起。适用用用Helix直接做RMVB格式的DVDrip。
例:Video = AVISource("test.avi")
??Audio= WAVSource("test.wav")
??AudioDub(Video,Audio) # 把test.avi和test.wav合并
② GetLeftChannel 和 GetRightChannel
获取声道:把立体声的左右声道单独返回,适用于左右声道不同语种的WAV。
例:stereo=WavSource("test.wav")
??return GetLeftChannel(stereo) # 返回test.wav的左声道
③DelayAudio
声音延迟:由于从VOB里分离的AC3通常有延迟,所以用Azid转码得到的WAV也有延迟,在用AudioDub合并时就需要加上这个延迟。
例: WavSource("test.wav").DelayAuido(0.5) # 把test.wav延迟半秒

顶一下
(1)
100%
踩一下
(0)
0%
相关文章 Top↑
精彩推荐