【AviUtl】『音に合わせて口パク』スクリプト(α版)を配布!【拡張編集】

20161004113746  (注:配布は画像ではなく画像を表示するためのスクリプト!)

『音に合わせてクチパク』スクリプトは、文字通り音声を拾ってクチパク用の連番画像を繰り返し読み込むカスタムオブジェクト。Softtalkなどで作成した音声ファイルと一緒に使い、喋っているように演出させることが可能。

ちなみに一定以上の音量になった音のみを拾うこともできるので、バックグラウンドで音声とは別の曲(音を小さめにする必要あり)を流すことも可能。また、音が取得できない場合は初期画像ファイル(口を閉じている画像)に戻る仕様。

30fps程度の動画で使う場合は、『口を閉じる(1枚目)→中間(2枚目)→最大限開いている(3枚目)→中間(4枚目)→口を閉じる(5枚目)』という感じで、最低5枚程度(※1と5、2と4はファイル名が異なるだけで内容は同じなので実質3枚)の連番画像があったほうがいいかも……。

注意点

20161004114658

 

  • 音声ファイルのデータを取得して動くので、同一フレーム上に音声ファイルが必要。
  • 0フレーム初期化(オブジェクトの先頭での初期化──現行フレームがオブジェクトの先頭を通ること──が必須)のスクリプト。
  • 0フレーム初期化スクリプトなので、エンコード時やプレビュー時、その範囲にオブジェクトの先頭が含まれていないと、正常に動作せず。
  • クチパク用の連番画像が必要。
  • 読み込み可能枚数は、ファイル名の末尾がa~zならば26枚、0~9ならば10枚。
20161004115832 1枚目。初期画像。音が取得できない場合もこの画像が表示される。
20161004115907 音を取得して、2枚目の画像が表示されているところ。
20161004115924 更に音を取得して、3枚目の画像が表示されているところ。
20161004115944 更に音を取得して、4枚目の画像が表示されているところ。
20161004120002 更に音を取得して、5枚目の画像が表示されているところ。

※ 上のサンプルの場合、M001a.png → M001b.png → M001c.png → M001d.png → M001e.png → M001a.pngと繰り返しているので、厳密に言えばM001a.pngと同じ画像である(ファイル名のみ異なる)M001e.pngは不要。

ただ、クチパクの連番画像を自作したり用意したりするときに直前までの4枚の画像でいいよ!と言ってもわかりにくいかと思ったので……。実際、M001e.png → M001a.pngと移り変わる部分で違和感を覚えることもないので、この辺は好き好きで。

 

20161004123037

Guidのチェックを入れたときの様子。青線が基準値で、下部にある白い数字が分割された音番号、その上の赤い数字が各音の大きさ。上部に何番目の画像か、経過時間、読み込んでいるファイル名の順で表示。また、中央は読み込んでいる画像。

 

項目解説

20161004121022

  • クチ幅速度:設定内のクチ幅タイプにチェックが入っていると、クチパク用の画像の幅をここで指定した速度で切り替える。正直、あまり使わないかも……。
  • クチ幅比率:設定内のクチ幅タイプにチェックが入っていると、クチパク用の画像の幅をここで指定した比率で切り替える。正直、あまり使わないかも……。
  • クチパク速:クチパク用の連番画像を切り替える速度。使用する連番画像の枚数や動画のfpsに合わせて自然に見えるように変える。
  • 基準値:この基準値を超えた音を取得して、クチパク用の連番画像を切り替える。
  • Guid:基準値と音の様子、また読み込んでいるファイルとその切り替わり状況を確認できる。

 

※ 0フレーム初期化を必須とするスクリプトなので、エンコード時やプレビュー時に現行フレームがオブジェクトの先頭を必ず一度は通る必要あり。もちろん、編集時にも……。

 

20161004121042

 

  • 音分割数:取得した音の分割数。
  • Buf補正:取得した音÷Buf補正=出力値。出力値が基準値を上回ると、連番画像が切り替わる。
  • 無音時間処理:最後に音を取得してからここで指定した秒数だけ経過すると、初期画像に戻る。
  • 総ファイル数:使用する連番画像の枚数を入力する。
  • 初期ファイル:最初に表示したい連番画像のパスを入力。先頭のファイルの末尾はaか0。また、フォルダの区切りはLuaでは¥は2個並べる形になる。
  • ファイル末尾英⇔数:ファイル名の末尾が英字か数字かの指定。
  • クチ幅タイプ:チェックを入れると、口幅が切り替わる。余り使わないかも……。

 

※ ファイル名が数字の時は0~9の順。英字の場合はa~zの順。

 

DL

 

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

 

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

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

 

音に合わせてクチパク.txt → 音に合わせてクチパク.obj

(単独のスクリプトなので、ファイル名の頭に@は不要です)

 

 

サンプル用の口パク連番画像(おまけ)

M002a M002b
M002c M002d
M002e Inkscapeでやっつけで自作したサンプル用のクチパク用連番画像。

クチパク用の連番画像が用意できないのであれば低品質ですが、画像を保存して使ってください。
関連記事
スポンサーサイト

2 Comments

-  

管理人のみ閲覧できます

このコメントは管理人のみ閲覧できます

2017/09/02 (Sat) 00:42 | REPLY |   

Ψ(`∀´)Ψケケケ  

Re: タイトルなし

>対策的なものってあります?口パク自体は動いてます
手っ取り早いのは、『画像一括リサイズ』などの名前でネット上で検索をかけて、画像を一括でリサイズしてくれるフリーソフトを入手、そのソフトで立ち絵自体(オリジナルはそのまま保存しておいて)を小さくしてしまうことです。今後も使用するのであれば、出力する動画サイズに適したサイズに小さくしてしまったほうが処理も軽くなるかと思われます。

ちなみに見切れる原因はAviUtlの拡張編集プラグインで読み込み可能なサイズを超えてしまっているからだと思われます。環境設定から変更(要再起動)することができますが、AviUtlは32Bitソフトであるためにメモリの確保に限界があるので、やはり上記の方法で立ち絵自体のリサイズが無難かと思われます。

色々と使い勝手の悪いスクリプトですが、ご利用ありがとうございます。

2017/09/03 (Sun) 21:31 | REPLY |   

Post a comment