【AviUtl】音声Flag解析とフレーム平均Buf値表示の2種類を追加【拡張編集】

20150504113741

音楽に合わせてあれこれやりたい人(モーショングラフィックスとかMMDの振り付けとか)の支援になれば……ということで本当に役に立つのかかなり微妙な感じもしないでもないですが、指定Buf番号の音の動きを解析?できる音声Flag解析(画像左)と分割した音の平均Buf値を表示するフレーム平均Buf値表示(画像右)の2種類を配布。

 

音声Flag解析は指定Buf番号の音をフレームに合わせて表示していくもので、10フレーム毎に黄点、50フレームごとに赤点、基準値を超えたフレームでは青点を表示します(表示密度の変更可)。

また、設定内の出力にチェックを入れておくと、最終フレームで基準値を超えたフレーム番号をまとめてテキストとして出力することも可能。

 

20150504115221

出力されたテキストファイルを開いたもの。並んでいる数値が基準値(一定の音の大きさ)を超えたフレームの番号なので、音に合わせてあれこれと編集したい場合のフレーム番号の目安にはなる……はず。

 

フレーム平均Buf値表示はその都度、各Buf値を加算していき、累積のBuf値やフレーム数で除算した平均値を表示可能。簡単にいえば、どの番号の音がよく鳴っているかをわかりやすくしたものです。

累積のBuf値が大きい→総量の音が大きい。フレーム平均のBuf値が小さい→頻繁には鳴ってない。あるいは全体的に音が小さい。などなどといった感じで音を把握……できたらいいなぁというもの。

 

 

注意点

20150504123210

  • どちらもオブジェクトの先頭で初期化
  • 初期化されないと、正しく動きません。
  • AudioBufferの値を拾っているので、同一フレーム上に音声ファイル(シーン音声)が必要。

 

  • 先頭フレームからのBuf値を加算したり、除算したりしているので、編集中やプレビューでフレームがスキップ※されると、正しい値が表示されないことがある。

 

※ ただし、一度でもスキップせずに先頭から最終フレームまで再生されたりエンコードされれば、フレームのスキップがあっても大丈夫……なはず。

20150504123141

 

項目解説(音声Flag解析)

20150504121400

  • Buf番号:取得したいBuf番号を指定。
  • Buf補正:Buf値=Buf番号で指定した音Buf値÷Buf補正
  • グラフY:グラフのY軸の位置補正。
  • サイズ:図形の大きさ。
  • 初期化:フレーム毎に取得したBuf値のクリア。

 

 

20150504121654

  • 音分割数:音を分割する数。
  • 描画密度:描画する図形の間隔。値を大きくするほど、細かく詰まって表示。
  • 赤点間隔:赤点を表示するフレームの間隔。
  • 黄点間隔:黄点を表示するフレームの間隔。
  • 基本色:図形やテキストの基本色。
  • 基準値:基準となるBuf値。この値を超えたものがFlagが立ち、青点(デフォルト)で表示される。
  • Flag図形係数:基準値を超えたBuf値のときに表示される図形サイズの係数。
  • Flag図形色:基準値を超えたBuf値のときに表示される図形の色。
  • 表示1:分割した音の動きを画面下に表示。
  • FlagWrite:チェックを入れると、最終フレームで基準値を超えたフレーム番号をTXTとして出力。
  • File:ファイルの出力先の指定。※

 

※ Luaでは、ドライブやフォルダの区切りは、『\\』。
※ スクリプトの保存時に保存先を自分の環境に合わせて変更してやると、いちいち入力しなくてもいいので、楽かも……。

 

※ フレーム番号しか出力しないスクリプトですが、それでもファイルを出力するスクリプトではあるので、使用は全て自己責任でお願いします。

このプログラム(スクリプト)の使用によって何らかの障害が発生した場合でも作者は一切の責任を負わないものとします。(他のスクリプトも、ですが……)

たとえば保存先に偶然あった同名ファイルが上書きされてしまった……などなど。

 

項目解説(フレーム平均Buf値表示)

20150504122758

  • 音分割数:音を分割する数。
  • Buf補正:
  • 総数間隔:平均値等のX軸の間隔調整。
  • 数値サイズ:数値の大きさを調整。
  • Information:数値の表示の有無。

 

20150504122930

  • 図形選択:図形の選択。
  • Color:図形の色の選択。
  • 座標:数値の位置。

 

DL

 

(リンク先のTXTが文字化けしている場合は、ブラウザの文字エンコーディングをSJISにしてください)

 

FC2 のファイル保存形式上の都合でtxtファイルで保存されているので、リンクの上で右クリックして『リンク先のファイルを保存する』を選択してファイルを保存するか、リンク先のページに飛んで『Ctrl + A』で全てを選択し、メモ帳等にコピペ&保存するかしてください。

その後、保存(作成された)ファイルの拡張子をtxt → objに変更したら、AviUtlのScriptフォルダにコピペでこのスクリプトが使えるようになります。

 

@音声解析.txt → @音声解析.obj

(たまに@が変換ミスで全角になっていることがありうるので、その場合は半角にしてください)



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

0 Comments

Post a comment