FC2ブログ
にわとり遊び
PC関連とエンコードの覚書き
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

2つのクリップの開始フレーム位置を確認する - stacksubtract
※リサイズで差分が潰れる事があったので修正

開始フレームのズレを確認する関数。
clip1を基準として、clip2冒頭に足す、あるいは削るフレーム数がわかります。

stack.png

function stacksubtract (clip clip1,clip clip2,int "stack",int "f1",int "f2",int "f3"){
stack=default(stack,0)
clip1=clip1.PointResize(clip1.width/3,clip1.height/5).Letterbox(2,2,0,2)
clip2=clip2.PointResize(clip1.width,clip1.height)
r1=(defined(f1)) ? f1 : rand(clip1.framecount/3-10)+10
r2=(defined(f2)) ? f2 : rand(clip1.framecount/3)+clip1.framecount*1/3
r3=(defined(f3)) ? f3 : rand(clip1.framecount/3-300)+clip1.framecount*2/3
d1=subtract(clip1.Loop(0,0,1),clip2).subtitle("+2")
d2=subtract(clip1.Loop(0,0,0),clip2).subtitle("+1")
d3=subtract(clip1,clip2).subtitle("0")
d4=subtract(clip1,clip2.Loop(0,0,0)).subtitle("-1")
d5=subtract(clip1,clip2.Loop(0,0,1)).subtitle("-2")
blank=BlankClip(0,clip1.width,clip1.height,pixel_type="YV12")
v=(stack==2) ? StackVertical(d2,d3,d4) : StackVertical(d1,d2,d3,d4,d5)
v1=(stack==1) ? StackVertical(blank,d2,d3,d4,blank) : v
clip=StackHorizontal(v1.Trim(r1,-1),v.Trim(r2,-1),v1.Trim(r3,-1))
return clip
}

clip1,clip2 - 比較するクリップ
stack - 並べる枚数を決める 0. 全15枚を並べる/1. 四隅以外の11枚を並べる/2. 9枚を並べる
f1,f2,f3 - 行ごとに比較するフレーム番号を決める。指定なしの場合はフレーム数を3分割した後、それぞれランダムに表示する。
スポンサーサイト

コメント

コメントの投稿














管理者にだけ表示を許可する


トラックバック
トラックバック URL
http://sasamisi.blog24.fc2.com/tb.php/307-bb3703e3
この記事にトラックバックする(FC2ブログユーザー)

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。