はじめに
LatentSyncはByteDanceによって開発されたオープンソースツールで、GitHubでホストされている。音声を通して映像内のキャラクターの唇の動きを直接駆動し、口の形が音声と正確に一致するようにします。このプロジェクトは、Stable Diffusionの潜在拡散モデルと ウィスパー 2025年3月14日にリリースされたlatentSyncバージョン1.5では、時間的整合性が最適化され、中国語ビデオがサポートされ、トレーニングビデオメモリの要件が20GBに削減されました。ユーザーは、6.8GBのビデオメモリをサポートするグラフィックカードを持っているだけで、256x256解像度のリップシンクされたビデオを生成するために推論コードを実行することができます。256x256解像度の動画を生成することができます。このツールは完全に無料で、コードと事前に訓練されたモデルが提供され、技術愛好家と開発者の両方に適しています。
-
経験:https://huggingface.co/spaces/fffiloni/LatentSync
-
APIデモアドレス:https://fal.ai/models/fal-ai/latentsync
機能一覧
- オーディオドライバーのリップシンク音声と映像を入力し、音声に合わせた唇の動きを自動生成。
- エンド・ツー・エンドのビデオ生成中間表現が不要で、クリアなリップシンク映像をダイレクトに出力。
- 時間の一貫性の最適化TREPAテクノロジーとタイミングレイヤーにより、ピクチャージャンピングを低減。
- 中国語ビデオ対応: バージョン1.5では、中国語のオーディオとビデオの取り扱いが改善されました。
- 効率的なトレーニングサポートU-NetはさまざまなU-Net構成があり、必要なメモリは20GBからと少ない。
- データ処理パイプラインビデオデータをクリーニングし、生成品質を保証する内蔵ツール。
- パラメタリゼーション推論ステップとガイダンススケールを調整し、生成を最適化するためのサポート。
ヘルプの使用
LatentSyncは、技術的な基盤を持つユーザー向けのローカルで動作するツールです。インストール、推論、トレーニングのプロセスについては以下で詳しく説明します。
設置プロセス
- ハードウェアとソフトウェアの要件
- 少なくとも6.8GBのビデオメモリを搭載したNVIDIAグラフィックカードが必要(推論用)、トレーニング用には20GB以上を推奨(例:RTX 3090)。
- LinuxまたはWindowsに対応(Windowsは手動でスクリプトを調整する必要があります)。
- Python 3.10、Git、CUDAをサポートするPyTorchをインストールする。
- ダウンロードコード
ターミナルで実行:
git clone https://github.com/bytedance/LatentSync.git
cd LatentSync
- 依存関係のインストール
以下のコマンドを実行して、必要なライブラリをインストールする:
pip install -r requirements.txt
オーディオおよびビデオ処理用にffmpegを追加インストール:
sudo apt-get install ffmpeg # Linux
- ダウンロードモデル
- をとおして ハグする顔 ダウンロード
latentsync_unet.pt
歌で応えるtiny.pt
. - ファイルを
checkpoints/
カタログは以下のような構成になっている:checkpoints/ ├── latentsync_unet.pt ├── whisper/ │ └── tiny.pt
- SyncNetをトレーニングする場合は、次のファイルもダウンロードする必要があります。
stable_syncnet.pt
およびその他の補助モデル。
- 検証環境
テストコマンドを実行する:
python gradio_app.py --help
エラーが報告されなければ、環境は正常に構築されている。
推論過程
LatentSyncには2つの推論方法があり、どちらも6.8GBのビデオメモリを必要とする。
方法1:グラディオ・インターフェース
- Gradioアプリケーションを起動する:
python gradio_app.py
- ブラウザを開き、プロンプトが表示されたローカルアドレスにアクセスする。
- ビデオファイルとオーディオファイルをアップロードし、「実行」をクリックして結果が生成されるのを待ちます。
方法2:コマンドライン
- 入力ファイルを準備する:
- ビデオ
input.mp4
)、明確な顔を含む必要がある。 - オーディオ
audio.wav
)、16000Hzを推奨。
- 推論スクリプトを実行する:
python -m scripts.inference
--unet_config_path "configs/unet/stage2_efficient.yaml"
--inference_ckpt_path "checkpoints/latentsync_unet.pt"
--inference_steps 25
--guidance_scale 2.0
--video_path "input.mp4"
--audio_path "audio.wav"
--video_out_path "output.mp4"
inference_steps
20-50、数値が高いほど高画質、低速。guidance_scale
1.0-3.0、数値が高いほど唇の形状は正確ですが、若干の歪みがあります。
- プローブ
output.mp4
リップシンクロの効果が確認された。
入力の前処理
- ビデオフレームレートは25FPSに調整することを推奨します:
ffmpeg -i input.mp4 -r 25 resized.mp4
- オーディオのサンプルレートは16000Hzでなければならない:
ffmpeg -i audio.mp3 -ar 16000 audio.wav
データ処理の流れ
モデルの学習が必要な場合は、まずデータを処理する必要がある:
- スクリプトを実行する:
./data_processing_pipeline.sh
- 修正
input_dir
あなたのビデオカタログのために。 - そのプロセスには以下が含まれる:
- 破損したビデオを削除する。
- ビデオを25FPSに、オーディオを16000Hzに調整する。
- PySceneDetectを使ってシーンを分割する。
- ビデオを5〜10秒に分割する。
- フェイスアライメントで面を検出し、256x256にリサイズする。
- シンクスコアが3未満の動画をフィルタリングします。
- ハイパーIQAスコアを計算し、40以下の動画を削除する。
- 処理されたビデオは
high_visual_quality/
カタログ
トレーニングUネット
- データとすべてのチェックポイントを準備する。
- プロファイルを選択する(例
stage2_efficient.yaml
). - ランのトレーニング:
./train_unet.sh
- コンフィギュレーション・ファイルのデータ・パスとセーブ・パスを変更する。
- 必要なグラフィックスメモリ
stage1.yaml
23GB。stage2.yaml
30GB。stage2_efficient.yaml
通常のグラフィックカードは20GB。
ほら
- Windowsユーザーは
.sh
Pythonコマンド実行に変更。 - 画面がジャンプする場合は
inference_steps
またはビデオフレームレートを調整する。 - バージョン1.5で中国語オーディオのサポートが最適化され、最新モデルが使用できるようになりました。
以上の手順で、ユーザーは簡単にLatentSyncをインストールして使用し、リップシンク動画を生成したり、モデルをさらにトレーニングしたりすることができる。
アプリケーションシナリオ
- ポストプロダクション
既存のビデオの音声を置き換えて、ダビング調整に適した新しいリップを生成します。 - 虚像
音声を入力し、アバターが話すビデオを生成する。 - ゲーム制作
キャラクターにダイナミックなダイアログ・アニメーションを追加し、ゲームプレイ体験を向上させる。 - 多言語主義
グローバルユーザー向けに、さまざまな言語の音声付き説明ビデオを作成。
品質保証
- リアルタイム生成に対応しているか?
サポートされていません。現在のバージョンは完全なオーディオとビデオを必要とし、生成に数秒から数分かかる。 - 最小ビデオメモリは?
推論には6.8GBが必要で、トレーニングには20GBが推奨されている(バージョン1.5での最適化後)。 - アニメのビデオを扱えますか?
できる。公式の例としては、うまく機能しているアニメビデオがある。 - 中国語サポートを向上させるには?
中国語の音声処理に最適化されたLatentSyncバージョン1.5を使用してください。