搜索
有爱,有技术,有你^_^)y
╱人◕‿‿◕人╲订下契约(注册新用户)

合作站点账号登陆

QQ登录

只需一步,快速开始

快捷导航
查看: 899|回复: 0
收起左侧

[普通教程] [FWD]AviSynth常用脚本语法

[复制链接]

该用户从未签到

25

主题

21

好友

1万

积分

第一章

积分
10837
发表于 2012-3-8 00:33:37 | 显示全部楼层 |阅读模式

╱人◕‿‿◕人╲定下契约

您需要 登录 才可以下载或查看,没有账号?╱人◕‿‿◕人╲订下契约(注册新用户)

x
本帖最后由 Bugsong 于 2012-12-26 11:48 编辑

原创发表于  AviSynth常用脚本语法 | 大D综合研究院

原文链接:http://www.dadclab.com/archives/999

本文采用知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议进行许可。

协议查看链接http://creativecommons.org/licenses/by-nc-sa/2.5/cn/



一、简述

AviSynth是AVI SYNTHesizer的缩写是一款优秀的帧服务器程序(帧服务器是指将视频处理后直接输出到其他程序没有其他临时文件的产生)因其特殊的工作方式可以给视频增加滤镜合并视频文件或者将不支持的格式导入Premiere或者Vegas中。

相当于一个桥梁的角色哦~

AviSynth是使用脚本来工作的当脚本文件(.avs)被打开时AviSynth开始工作按照脚本的内容处理视频并将处理后的视频传输到打开的程序上。

因此使用AviSynth有5大优势:

1. YUV支持:内建滤镜可以在YUV环境下运行第三方滤镜几乎也兼容YUV所以比起VD、ND的内嵌滤镜必须在RGB环境下运行要快很多。省却了一个转换的过程将来还可以支持YV。

2. 滤镜处理:内建许多影像处理滤镜比如ResizingCropping等。还有大量的第三方强力滤镜并可以调用VD以及AviUtl的第三方滤镜。

3. 突破2G限制:通过AviSynth打开影像文件就相当于应用程序直接打开这样就可以使本身有2G限制的程序也能突破2G的限制。

4. 打开格式:AviSynth可以打开几乎所有影像文件包括MPEG和QuickTime。所以当影像应用程序通过AviSynth打开这些文件时会被认为是打开标准的AVI这样就可以处理影像应用程序本身并不支持的格式。

5. 节省硬盘空间:AviSynth处理的影像文件在运行过程中直接导入应用程序没有临时文件所以节省硬盘空间。

主页:http://avisynth.org/mediawiki/Main_Page


二、安装

安装十分简单到主页上下载一路下一步就可以了。PR和Vegas需要对应的插件大家网上搜索一下吧


三、内建滤镜

AviSynth内建了数目繁多的滤镜这里只介绍常用的部分。

在写脚本的时候如果你使用Notepad++等可以调整编码格式的编辑器要把编码设置成ANSI否则程序不会识别。

在使用脚本时所有需要提供文件名的地方直接写文件名就需要把脚本和视频放到一个目录中。如果分开放置文件名处则填写文件的绝对路径。

例:x:\temp\test.avi

0、最最常用的PR和Vegas导入视频

DirectShowSource(“test.avi”,25)

注:25表示导入时的帧速根据自己的需求进行更改。

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的替代者提供更精准、更锐利的画质。

例: LanczosResize(640,480)  注:把分辨率改变为640*480


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”).DelayAudio(0.5)  注: 把test.wav延迟半秒


四、第三方滤镜

AviSynth最强大之处就是有数目繁多、功能强大的第三方滤镜;同时还可以调用VD以及AviUtl的滤镜;甚至还有特别开发的接口可以让TMPGEnc和AviUtl读取AVS。

和内建滤镜不同第三方滤镜需要先调用声明再可以使用。

1、源文件滤镜

① MPEG2Dec

由dividee编写的读取DVD2AVI产生的d2v工程文件的滤镜。

例: LoadPlugin(“MPEG2Dec.dll”)

MPEG2Source(“test.d2v”)

② MPEG2Dec2

MPED2Dec加强版支持SSE。

例: LoadPlugin(“MPEG2Dec2.dll”)

MPEG2Source(“test.d2v”)

③ MPEG2Dec3

MPED2Dec2加强版增加支持SSE2和3D Now!同时可以降噪。

例: LoadPlugin(“MPEG2Dec3.dll”)

MPEG2Source(“test.d2v”,CPU=4) # CPU=4就是开启了PP模式


2、字幕滤镜

① VobSub

Sub字幕:VobSub不但是外挂字幕的好手内嵌字幕也是一样的强。

将字幕的2个文件test.idx和test.sub放在同一个目录下就可以了。

例: LoadPlugin(“VobSub.dll”)

VobSub(“test”)

② TextSub

SSA和ASS字幕:这个也是VobSub自带的可以内嵌特效字幕。

例: LoadPlugin(“TextSub.vdf”)

TextSub(“test.ssa”)




评分

参与人数 1宅币 +50 贡献 +10 收起 理由
xushine + 50 + 10

查看全部评分

签名被小宅喵吞掉了~~~~(>_<)~~~~
回复

使用道具 举报

本版积分规则

小黑屋|手机版|技术宅(Z站|基宅) ( 粤ICP备18082987号-1 )

GMT+8, 2025-5-2 09:56 , Processed in 0.095782 second(s), 21 queries , Redis On.

Copyright © 2018 技术宅社区

Powered by Discuz! X3.5

快速回复 返回顶部 返回列表