SadTalkerは、リップシンクできる機能拡張です。
リップシンクとは、音声ファイルを使うことで実際にその音声をしゃべっているかのように口の動きのアニメーションを生成するというものです。
SadTalkerとは?
音声ファイルにあわせて口を動かすアニメを作成します。
百聞は一見に如かずで、作成サンプルはこちら。
もとは1枚の画像と音声データです。
インストール
Stable Diffsuion WebUIの機能拡張に以下をインストール。
https://github.com/Winfredy/SadTalker
モデルデータは以下から入手できます。
Releases · Winfredy/SadTalker (github.com)
一括して「"stable-diffusion-webui\extensions\SadTalker\checkpoints\」内に入れます。
動画作成にFFMPEGを使うのでインストール。パスを環境変数に追加しておきます。
https://www.gyan.dev/ffmpeg/builds/ffmpeg-git-full.7z
やり方は以下参考ください。
【初心者】FFmpegのダウンロードとインストール手順~Windows/Mac/Linux (videoproc.com)
WebUIの起動バッチに「set SADTALKER_CHECKPOINTS=C:\stable-diffusion-webui\extensions\SadTalker\checkpoints」を追加。
音声ファイルの場所を認識させます。
使い方
インストールできればSadTalkerのタブがあります。
開いて、上部に画像、下部に音声ファイルをいれます。
音声はWavかMP3など。
ない場合、以下のようなサイトで文字から作ってもよいでしょう。
【無料】英語の文字をMP3音声ファイルへ変換 (benkyospot.com)
あとは「Generate」ボタンを押して完成までしばし待ちます。
エラーの場合は?
ボタンを押しても反応がないのですが、ちょっと待つと「Error」の文字が出ました。
SadTalkerはオンラインデモのページがあります。
画像認識でうまく口の場所が取れないという可能性もあるので、こちらで画像と音声が無事対応しているか確認してみるとよいでしょう。
SadTalker - a Hugging Face Space by vinthony
また、プロンプトの方を見るとエラー原因が確認しやすいです。
みてみると、FileNotFoundエラーでした。入れ忘れたファイルがあったようです。
「facevid2vid_00189-model.pth.tar」がないとされ、こちらはgithubのほうにありました。
Releases · Winfredy/SadTalker (github.com)
また「can not detect the landmark from source image」とある場合は、画像から特徴的なポイントが判定できないとしており、画像をさしかえたほうがよさそうです。
当ブログで紹介しているモデルや機能拡張の一覧はこちら。