Advertisement
yuuhichan

MX_L2.avsi

Oct 10th, 2020 (edited)
2,516
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. # putin999氏作
  2. # 2012/12/7
  3. #
  4. #使用例
  5. #
  6. # 155フィールドから14835フィールドがL字の場合
  7. # MX_L2(155,14835,0)
  8. # EraseLOGO(logofile=logofile, start=0, end=7791, interlaced=true)
  9. # MX_L2(155,14835,1)
  10. #
  11. # ロゴを消さない場合は
  12. # MX_L2(155,14835,2)
  13.  
  14.  
  15.  
  16. function MX_L2(clip c,int start_field,int end_field,int mode){
  17.     start=start_field
  18.     end=end_field
  19.     c=c.separatefields()
  20.     final=c.framecount()-1
  21.     w=c.width()
  22.     h=c.height()
  23.     c_=c.trim(start,end)
  24.     final_=c_.framecount()-1
  25.     c_=(mode==0)?c_._L2(0,29,0,0,w,h
  26.             \,4,0,0,0
  27.             \,6.0,0,0,2.3)
  28.             \._L2_resize(30,final_-30,w,h,180,0,float(w)-180,float(h)-68)
  29.             \._L2(1,29,final_-29,0,w,h
  30.             \,176,0,0,68
  31.             \,6.0,0,0,2.3)
  32.        \:(mode==1)?c_._L2(0,29,0,0,w,h
  33.             \,2.0,0,0,2.4
  34.             \,0.28,0,0,0.22)
  35.             \._L2_resize(30, final_-30,w,h,14,0,float(w)-14,float(h)-10)
  36.             \._L2(1,29,final_-29,0,w,h
  37.             \,12,0,0,8
  38.             \,0.31,0,0,0.24)
  39.        \:c_._L2(0,29,0,0,w,h
  40.             \,6.0,0,0,2.6
  41.             \,6.24,0,0,2.50)
  42.             \._L2_resize(30, final_-30,w,h,194,0,float(w)-194,float(h)-78)
  43.             \._L2(1,29,final_-29,0,w,h
  44.             \,186,0,0,75
  45.             \,6.24,0,0,2.48)
  46.     c_=(start==0)?c_
  47.         \:(start==1)?c.trim(0,-1)+c_
  48.         \:c.trim(0,start-1)+c_
  49.     c_=((end==0)||(end==final))?c_
  50.         \:((end==-1)&&(start==final))?c_
  51.         \:(end==-1)?c_+c.trim(start+1,0)
  52.         \:c_+c.trim(end+1,0)
  53.     return c_.weave()
  54. }
  55. function _L2(clip c,int type,int rep,int start,int crnt,int w,int h
  56.                     \,float defl,float deft,float defr,float defb
  57.                     \,float l,float t,float r,float b){
  58.     c_=(type==0)?_L2_resize(c,start+crnt,-1,w,h,defl+l*float(crnt),deft+t*float(crnt)
  59.             \,float(w)-(l*float(crnt))-(r*float(crnt))-defl-defr,float(h)-(b*float(crnt))-(t*float(crnt))-deft-defb)
  60.         \:_L2_resize(c,start+crnt,-1,w,h,defl-l*float(crnt),deft-t*float(crnt)
  61.             \,float(w)-(defl-l*float(crnt))-(defr-r*float(crnt)),float(h)-(defb-b*float(crnt))-(deft-t*float(crnt)))
  62.     return (rep>crnt)?_L2(c_,type,rep,start,crnt+1,w,h,defl,deft,defr,defb,l,t,r,b):c_
  63. }
  64. function _L2_resize(clip c,int start, int end,int t_w,int t_h
  65.                             \,float s_l,float s_t,float s_w,float s_h){
  66.     final=c.framecount()-1
  67.     c_=c.trim(start,end).spline64resize(t_w,t_h,s_l,s_t,s_w,s_h)
  68.     c_=(start==0)?c_
  69.         \:(start==1)?c.trim(0,-1)+c_
  70.         \:c.trim(0,start-1)+c_
  71.     c_=((end==0)||(end==final))?c_
  72.         \:((end==-1)&&(start==final))?c_
  73.         \:(end==-1)?c_+c.trim(start+1,0)
  74.         \:c_+c.trim(end+1,0)
  75.     return c_
  76. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement