【AviUtl】スクリプト制御 AviUtl関数【拡張編集】

20140604002853

AviUtlのスクリプト制御には、AviUtl固有の関数が用意されている。

基本的な型は一部を除いて、『obj.xxxxx()』で表記され、その括弧内に引数(不要な関数や省略可能な関数もある)を入れることで関数の形式に則った特定の結果を出してくれる。

たとえば、上の画像のmes(t)がその関数に当たり、正式にはobj.mes(t)と書くが、『obj.mes()』が関数、括弧内の変数『t』が関数『obj.mes()』の引数になっている。

ちなみにこの関数と引数の関係は、AviUtlだけじゃなくLua言語でも同様で、math.cos(60*math.pi/180)であれば、『math.cos()』が関数、括弧内の『60*math.pi/180』がその引数になる。

わかりやすく言うと、引数は素材で、関数はその加工機械という関係になる。つまり関数は引数という素材が投入されると、動作して機械の特性に見合った結果(返り値、戻り値)を出すことになる。

また、木材加工用の機械で金属素材が使えないように、文字列を扱う関数では素材となる引数は文字列に、数字を扱う(計算するための)関数では素材となる引数は数字になる。

AviUtlの関数にもこうした制限があり、それぞれの関数にどのような素材を、どのような形式で投入しなさいという決まりが事前に定められていて、関数を使用するにはそれに従う必要がある。

AviUtlの関数一覧    []:省略可能の意

  • obj.mes(text)
  • obj.effect([name,param1,value1param2,value2,...]) ※
  • obj.filter(name[,param1,value1,param2,value2,...]) ※
  • obj.draw([ox,oy,oz,zoom,alpha,rx,ry,rz])
  • obj.drawpoly(x0,y0,z0,x1,y1,z1,x2,y2,z2,x3,y3,z3[,u0,v0,u1,v1,u2,v2,u3,v3,alpha])

 

  • obj.load(“type”,...)  ※
  • obj.setfont(name,size[,type,col1,col2])
  • obj.rand(st_num,end_num[,seed,frame])
  • obj.setoption(name,value) ※

 

  • obj.getoption(name,...) ※
  • obj.getvalue(target[,time,section])
  • obj.setanchor(name,num[,option,...])
  • obj.getaudio(buf,file,type,size) ※
  • obj.copybuffer(dst,src)

 

  • obj.getpixel(x,y[,type])
  • obj.putpixel(x,y,...) ※
  • obj.copypixel(dst_x,dst_y,src_x,src_y)
  • obj.pixeloption(name,value) ※
  • obj.getpixeldata([option,...]) ※
  • obj.putpixeldata(data) ※
  • obj.getpoint(target[,option])
  • obj.getinfo(name,...)
  • obj.interpolocation(time,x0,y0,z0,x1,y1,z1,x2,y2,z2,x3,y3,z3)

 

  • RGB(r,g,b) ※
  • HSV(h,s,v) ※

 

  • OR(a,b)
  • AND(a,b)
  • XOR(a,b)
  • SHIFT(a,shift)
  • debug_print(text) ※

 

拡張編集プラグインの圧縮ファイル内、Lua.txtより。

※は引数が複数タイプ存在し、指定先が間違えやすいもの。obj.copybuffer(dst,src)であれば、dstはコピー先に”tmp”か”obj”を指定せねばならず、srcは”frm”か”obj”、”tmp”、”cache:xxxx”、”image:xxxx”を指定する必要がある。

また、戻り値の数や記述の仕方にも注意が必要なものもある。rbg=RBG(r,g,b)やr,g,b=RGB(col)の場合など。

最後のdebug_print'(text)はLuaのデバッグを可能とする外部ソフトとの連携用関数なので、使用するにはデバッグモニタツールのようなソフトが必要。

 

関連記事
スポンサーサイト

0 Comments

Post a comment