lile_horlicks

Untitled

Dec 18th, 2015
512
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.72 KB | None | 0 0
  1. DTV Advent Calendar 2015(http://www.adventar.org/calendars/835)の18日目用の記事です
  2. お世話になっているらんだむさんが泣いていたのでちょっとがんばってみました(2度目)
  3.  
  4. 今回はAviSynthの「ProgramName.dll」の紹介でもしてみることにします。便利なのでほとんどの人が使っているかもしれませんが…
  5. AviSynth infoでも紹介されています → http://www.avisynth.info/?%E3%83%87%E3%83%90%E3%83%83%E3%82%B0
  6. avsを呼び出しているプログラムのお名前を取得するプラグインです
  7.  
  8. まず活用するためにこんな関数を書いてみました
  9.  
  10. function is_editor(){
  11. avsp = StrCmpi( GetProgramName(), "avspmod.exe" )
  12. return avsp == 0 ? true : false
  13. }
  14.  
  15. avsを開いているプログラムがavspmodだったらtrueを返す関数です
  16. avspmodで開いているときと、x264などのエンコーダーで開いているときとで挙動を自動で変えることができるようになります
  17. これを使ってみます
  18.  
  19.  
  20.  ■ avspmodで開いているときだけデバッグモードを有効にしてみよう
  21. デバッグ機能がついているフィルタを使うときに、編集中はデバッグON、エンコードのときはデバッグOFF、とやりたいことがありますよね
  22. これを自動で切り替えるようにしてしまいましょう。例えば有名なitsであれば
  23.  
  24. is_editor() ? Its( def= "xxx.def", fps=-1, debug=true ) \
  25. : Its( def= "xxx.def", fps=-1, output= "xxx.tmc", chapter = "xxx.txt" , debug=false )
  26.  
  27. こうすると、avspmodで開いているときだけデバッグモードになり、それ以外だと通常モード+チャプターとタイムコード出力となります
  28. デバッグモードをONにして色々確認したんだけれど、OFFにし忘れてONのままエンコードしてしまった>< なんて悲しいこともなくなります
  29.  
  30.  
  31.  ■ avspmodで開いているときだけ音量を表示してみよう
  32.  
  33. is_editor() ? Histogram("audiolevels") : nop()
  34.  
  35. return lastの直前にでもこの1行をいれておけば、avspmodで開いているときだけ音量が左側に表示されるようになります
  36. 私はだいたい-50db未満で無音と認定してます。CMカットをavspmodでしている人向け、かな?
  37. FAWを使う方は
  38.  
  39. audio = is_editor() ? LWLibavAudioSource( "xxx.aac" ) : AACFaw( "xxx.aac" )
  40.  
  41. こんな風にすれば擬似FAWぷれびゅ~になるかもしれません。この例だとDelayAudioは考慮してませんが…
  42.  
  43.  
  44.  ■ avspmodで開いているときだけマルチスレッドモードをオフにしよう
  45.  
  46. is_editor() ? last : Prefetch( threads = 2 )
  47.  
  48. AviSynth+のMTがavspmodで開いているときだけ無効になります。色々シークして編集する場合はMT無効の方が安定してると思いますので
  49.  
  50.  
  51.  ■ avspmodで開いているときだけリサイズしてしまおう
  52. 1920x1080のを編集したいんだけどモニタが小さくて大変…って人には便利かも?今思いついたんで実用的かどうかは知りませんっ
  53.  
  54. is_editor() && width() == 1920 ? PointResize( 1440, height() ) : last
  55.  
  56. ソース読み込みの直後にでも書いておけばavspmodで開いているときだけ横が1920のものが1440になります
  57. 縦も縮小してしまうと縞が見えにくくなってしまいますからavspmodのズームアウト機能も使いたくない…って場合にいいかも?
  58.  
  59.  
  60. と、適当に例を挙げてみましたが、いかがでしょう。このプラグインとアイデア次第であなたのavsライフがぐっと楽になるかもね!
  61.  
  62. おしまい  by Lile
Add Comment
Please, Sign In to add comment