- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《[NMM]Avisynth 2.5语法及滤镜详解》.doc
语法/doc/%E8%AF%AD%E6%B3%95
所有基本的Avisynth脚本声明都符合以下的某种形式。
变量名?=?表达式
表达式
return?表达式
(也存在两种更高级的结构 -?函数声明和try..catch声明)
第一种情况,计算表达式的结果,赋给变量名。第二种情况,计算表达式的结果,如果类型是Clip,则赋给一个特殊的变量last。第三种情况,计算出的表达式成为活动脚本的“返回值”——可以是一个函数的“返回值”,也可以是整个脚本的“返回值”。在之后会提到的情况里,返回值往往是可以由打开AVS文件的应用程序看到的视频。简单的说,如果一个表达式中有关键字return,它就会成为一个脚本(或一个脚本block)的结束声明语句。
绝大多数时间,表达式的结果是一个视频Clip,但实际上表达式的结果可以是本脚本语言支持的任何类型(Clip、整数、浮点、布尔、字符串),而且是靠像内部脚本函数这样的模块运算的。
一个表达式有如下的一种形式:
数字常数、字符串常数或布尔常数
变量名或Clip属性
函数(参数)
表达式.函数(参数)
表达式1?运算符号?表达式2
布尔表达式???表达式1?:?表达式2
第一种情况,表达式的值就是常数的值。第二种情况,值和Clip属性或语法:脚本变量有关(之前必须经过初始化)。第三种情况,值是AVS函数的返回值(见下文)。第四种情况,是一个替代的写法,(成为“OPP记号”),和函数(表达式,参数)等价。
最后两种情况,可以使用普通的算数和逻辑运算符号(来自C)操作表达式,计算整数、浮点和布尔,甚至使用三重符号的条件执行语句。字符串可以用相关运算符号比较,也可以用“+”合并。以下的运算符号也对视频Clip有定义:a + b等价于Splice(a,b),a ++ b等价于Splice(a,b)。
Avisynth脚本语言中大部分的函数是视频滤镜。尽管函数可以是它选择的任意类型(这个特性对创建在脚本中重复使用的模块代码很有用的特性,你可以定义自己的脚本函数),但是不返回一个Clip的函数的作用往往被局限在中间变量的处理,用来给滤镜传递变量。脚本最终应该返回一个Clip。总之,Avisynth是一个视频处理程序。
函数可以有60个参数(希望足够了),而且可以返回任何Avisynth支持的类型(Clip、整数、浮点、布尔和字符串)。函数一般计算出一个新值,而从不会更改已经存在的值。这就意味着函数所有的参数都是“按值”传递的而不是“按参考 - By reference”传递的。在Avisynth脚本语言中,为了改动一个值应该首先去赋一个新的值。
参考内部滤镜一节,学习调用内部滤镜函数的语法。同样也有内部函数,对非Clip变量进行运算。
参数是一个由逗号分开的函数参数列表,可以留空。每个参数必须是一个匹配函数所期望类型的表达式(比如文本字符串、整数、浮点/小数、布尔值或Clip)。如果函数期望第一个参数是Clip类型,而且没有提供这个参数,那么Clip会使用last这个特殊的变量。
Avisynth函数可以使用有名字的参数。有名字的参数能以任意顺序给出,滤镜也会给未指定的参数选择默认值。某些滤镜因此用起来很简单。比如你可以这样写: Subtitle(Hello, World!, text_color=$00FF00, x=100, y=200),而不用写成Subtitle(Hello, World!, 100, 200, 0, 999999, Arial, 24, $00FF00)。颜色可以像上面的例子里,以十六进制或十进制的数给出。两种情况下颜色都应该用RGB值,即使Clip本身是YUV的。
如果没有给函数传递函数,还是可以不需要括号就调用函数的。比如:函数名。作这种保留的主要原因是考虑老脚本的兼容性。但是当没有混淆的时候,不写括号也很方便。
Avisynth忽略每行#后面的任何字符。这个功能能用来在脚本中添加注释。
# Comment(注释)
# 块注释:
/*
comment 1
comment 2
*/
# 嵌套注释:
[* [* a meaningful example will follow later?:) *] *]
Version()
__END__
ReduceBy2()
Result is not reduced and we can write any text here
Avisynth忽略大小写:aViSouRCe和AVISource等效。
单行之内复合的Avisynth声明只能以OOP记号书写或作为参数内嵌在其他函数内,比如:
AviSource(c:\video.avi).Trim(0, 499)
-或-
AudioDub(AviSource(c:\video.avi), W
您可能关注的文档
- 《08 大理石分项工程质量管理》.doc
- 《08 轿厢安装质量管理》.doc
- 《08-09第一学期《Excel在会计日常工作中的应用》详细教案》.doc
- 《08-11年广州中考数学试卷(word版有答案)》.doc
- 《08-11深圳中考数学题》.doc
- 《08-2 扣压式薄壁钢管敷设安装质量管理》.doc
- 《08-3 塑料阻燃型可挠(波纹)管敷设质量管理》.doc
- 《08-5 硬质阻燃塑料管(PVC)明敷设质量管理》.doc
- 《08-6 硬质阻燃型塑料管(PVC)暗敷设质量管理》.doc
- 《08.克氏外科学(第19版)_第50章 小肠_50 肠梗阻》.doc
- 《[www.zcbgd.com]03专插本民法》.doc
- 《[二零一六年]翻译硕士百科知识_语文常识》.doc
- 《[全套]初中英语中考复习资料(超全语法、词组、句型、作文及知识点大全)》.doc
- 《[判断推理]、[图形推理]、[定义判断]、[类比推理]、[逻辑判断]经典试题146页【辛苦整理】》.doc
- 《[海川]下午注册化工工程师专业基础考试第二套模拟试题答案》.doc
- 《[海川]注册化工工程师专业基础考试模拟试题下午》.doc
- 《[生产管理]生产计划模拟心得(doc 10页)》.doc
- 《[生产管理]生产计划管理考核(doc 14页)》.doc
- 《_00923_行政法与行政诉讼法》.doc
- 《{必威体育精装版最全}二零一六年年3月份全国计算机等级考试二级C语言上机100套题库》.doc
文档评论(0)