mcpField
T
talking-head-production

talking-head-production

github.com/inference-shクリエイティブ・メディア789982 回インストール2 週間前に更新
リポジトリ

talking-head-production について

inference.sh CLIでAIアバターやリップシンク動画を制作するためのクリエイティブスキルです。肖像画像の準備、モデル選択、音声の利用、長尺動画の分割・結合を案内します。

主な機能

  1. 01リップシンク付きアバター動画の生成
  2. 02内蔵TTSまたは音声ファイルの利用
  3. 03多言語・複数キャラクターへの対応
  4. 04長尺クリップの分割と結合
  5. 05肖像画像と音声の準備ガイド

活用シーン

  1. 01製品紹介やデモ動画の作成
  2. 02肖像画像から話すアバターを制作
  3. 03複数キャラクターの会話動画を作成
  4. 04分割したクリップで長尺動画を制作

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/inference-sh/skills --skill talking-head-production

インストール後、Claude Code で/talking-head-productionを入力して読み込まれたか確認します。

詳細

belt CLI スキルをインストール: npx skills add belt-sh/cli

トーキングヘッド動画の制作

inference.sh CLI を使用して、AI アバターとリップシンクでトーキングヘッド動画を作成します。

クイックスタート

inference.sh CLI(belt)が必要です。インストール手順

belt login

# Recommended: P-Video-Avatar (built-in TTS, fastest, cheapest)
belt app run pruna/p-video-avatar --input '{
  "image": "https://portrait.jpg",
  "voice_script": "Welcome to our product tour. Today I will show you three features that will save you hours every week.",
  "voice": "Zephyr (Female)"
}'

ポートレートの要件

元となるポートレート画像は非常に重要です。ポートレートの品質が低いと、動画の出力品質も低くなります。

必須要件
要件理由仕様
中央に配置アバターの顔を予測可能な位置に配置する必要があります顔をフレームの中央に配置
頭部と肩を含める身体が映ることで自然なジェスチャーになります胸より下をトリミング
カメラ目線視聴者とのつながりを生みます正面からまっすぐ見る
ニュートラルな表情アニメーションの開始点になります軽い笑顔は問題ありません。笑ったり、しかめ面をしたりしないでください
顔がはっきり見えるモデルが特徴を検出する必要がありますサングラス、濃い影、顔を覆うものは避けてください
高解像度ディテールを保持するためです顔の領域は最低512x512、できれば1024x1024以上
ポートレートを生成する
# Generate a professional portrait with P-Image
belt app run pruna/p-image --input '{
  "prompt": "professional headshot portrait of a friendly business person, soft studio lighting, clean grey background, head and shoulders, direct eye contact, neutral pleasant expression, photorealistic",
  "aspect_ratio": "9:16"
}'
背景の選択肢
種類使用する場面
単色プロフェッショナルでクリーンな印象にしたい場合や、合成しやすくしたい場合
ソフトボケ自然でライフスタイル感のある印象にしたい場合
オフィス/スタジオビジネスの場面
動的な背景(P-Video-Avatar)video_prompt を使って背景を設定

モデルの選択

まずはP-Video-Avatarから始めましょう。代替モデルより18倍高速で、コストは6分の1です。TTSも組み込まれています。

モデルアプリ ID組み込みTTS最適な用途
P-Video-Avatarpruna/p-video-avatarあり(30種類の音声、10言語)総合的に最適:速度、コスト、品質
OmniHuman 1.5bytedance/omnihuman-1-5なし複数のキャラクター、ジェスチャー
OmniHuman 1.0bytedance/omnihuman-1-0なし1人のキャラクター
Fabric 1.0falai/fabric-1-0あり画像にリップシンクを付けて話させる
PixVerse Lipsyncfalai/pixverse-lipsyncあり既存の動画にリップシンクを付ける
コストと速度の比較
モデル速度(動画1秒あたり)1秒あたりのコスト
P-Video-Avatar約1.83秒/秒$0.025
OmniHuman 1.5約28秒/秒(15倍遅い)$0.16(6.4倍高い)
Fabric 1.0約34秒/秒(18倍遅い)$0.14(5.6倍高い)

制作ワークフロー

シンプル:テキストスクリプト -> 動画(P-Video-Avatar)

別途TTSの手順は不要です。P-Video-Avatarには音声が組み込まれています。

belt app run pruna/p-video-avatar --input '{
  "image": "https://portrait.jpg",
  "voice_script": "Hi there! I am excited to share something with you today.",
  "voice": "Puck (Male)",
  "voice_language": "English (US)",
  "resolution": "720p"
}'
スタイルを調整する場合
belt app run pruna/p-video-avatar --input '{
  "image": "https://portrait.jpg",
  "voice_script": "This is exciting news for our community!",
  "voice": "Aoede (Female)",
  "voice_prompt": "Enthusiastic and energetic tone, slightly faster pace",
  "video_prompt": "The person is presenting on stage with dramatic lighting",
  "resolution": "1080p"
}'
音声主導(すべてのモデル)

独自の音声ファイルを用意します。

# P-Video-Avatar with custom audio
belt app run pruna/p-video-avatar --input '{
  "image": "https://portrait.jpg",
  "audio": "https://speech.mp3"
}'

# OmniHuman with custom audio
belt app run bytedance/omnihuman-1-5 --input '{
  "image": "https://portrait.jpg",
  "audio": "https://speech.mp3"
}'
ワークフロー全体:ポートレートを生成してアバターを作成
# 1. Generate a portrait image
belt app run pruna/p-image --input '{
  "prompt": "professional headshot portrait of a young woman, neutral background, looking at camera, studio lighting, photorealistic",
  "aspect_ratio": "9:16"
}'

# 2. Create avatar video with built-in TTS
belt app run pruna/p-video-avatar --input '{
  "image": "<image-url-from-step-1>",
  "voice_script": "Hi there! Let me walk you through our latest features.",
  "voice": "Zephyr (Female)"
}'
TTSを別途使用する場合(TTS非対応モデル向け)
# 1. Generate speech
belt app run falai/dia-tts --input '{
  "prompt": "[S1] Your narration script here."
}'

# 2. Create talking head
belt app run bytedance/omnihuman-1-5 --input '{
  "image": "https://portrait.jpg",
  "audio": "<audio-url-from-step-1>"
}'
複数キャラクターの会話

OmniHuman 1.5は最大2人のキャラクターに対応しています。

# 1. Generate dialogue with two speakers
belt app run falai/dia-tts --input '{
  "prompt": "[S1] So tell me about the new feature. [S2] Sure! We built a dashboard that shows real-time analytics. [S1] That sounds great. How long did it take? [S2] About two weeks from concept to launch."
}'

# 2. Create video with two characters
belt app run bytedance/omnihuman-1-5 --input '{
  "image": "https://two-person-portrait.png",
  "audio": "<audio-url>"
}'
長尺コンテンツ(クリップを結合)

約60秒を超えるコンテンツは、複数のセグメントに分割します。

# Generate clips with same portrait for consistency
belt app run pruna/p-video-avatar --input '{"image": "https://portrait.jpg", "voice_script": "Segment one..."}' --no-wait
belt app run pruna/p-video-avatar --input '{"image": "https://portrait.jpg", "voice_script": "Segment two..."}' --no-wait
belt app run pruna/p-video-avatar --input '{"image": "https://portrait.jpg", "voice_script": "Segment three..."}' --no-wait

# Merge all segments
belt app run infsh/media-merger --input '{
  "media_files": [
    {"file": "segment1.mp4"},
    {"file": "segment2.mp4"},
    {"file": "segment3.mp4"}
  ]
}'
多言語コンテンツ

P-Video-Avatarは組み込みのTTSで10言語に対応しています。

# Spanish
belt app run pruna/p-video-avatar --input '{
  "image": "https://portrait.jpg",
  "voice_script": "Bienvenidos a nuestra demostración de producto.",
  "voice": "Kore (Female)",
  "voice_language": "Spanish"
}'

# Japanese
belt app run pruna/p-video-avatar --input '{
  "image": "https://portrait.jpg",
  "voice_script": "こんにちは、製品デモへようこそ。",
  "voice": "Leda (Female)",
  "voice_language": "Japanese"
}'
既存の動画を吹き替える
# 1. Transcribe original video
belt app run infsh/fast-whisper-large-v3 --input '{"audio": "https://video.mp4"}'

# 2. Translate text (manually or with LLM)

# 3. Generate speech in new language
belt app run falai/kokoro-tts --input '{"prompt": "<translated-text>"}'

# 4. Lipsync original video with new audio
belt app run infsh/latentsync-1-6 --input '{
  "video_path": "https://original-video.mp4",
  "audio_path": "<new-audio-url>"
}'

音声品質(TTSを使用しないワークフロー向け)

独自の音声を用意する場合、その品質がリップシンクの精度に直接影響します。

パラメーター目標理由
背景ノイズなし/最小限ノイズによってリップシンクのタイミングが乱れます
音量全体を通じて一定同期のずれを防ぎます
サンプルレート44.1kHzまたは48kHz標準的な品質です
形式MP3 128kbps以上またはWAVすべてのツールと互換性があります

利用可能な音声(P-Video-Avatar)

女性: Zephyr、Kore、Leda、Aoede、Callirrhoe、Autonoe、Despina、Erinome、Laomedeia、Achernar、Gacrux、Pulcherrima、Vindemiatrix、Sulafat

男性: Puck、Charon、Fenrir、Orus、Enceladus、Iapetus、Umbriel、Algenib、Algieba、Schedar、Achird、Zubenelgenubi、Sadachbia、Sadaltager、Alnilam、Rasalgethi

言語: 英語(米国)、英語(英国)、スペイン語、フランス語、ドイツ語、イタリア語、ポルトガル語(ブラジル)、日本語、韓国語、ヒンディー語

フレーミングのガイドライン

┌─────────────────────────────────┐
│          Headroom (minimal)     │
│  ┌───────────────────────────┐  │
│  │                           │  │
│  │     ● ─ ─ Eyes at 1/3 ─ ─│─ │ ← Eyes at top 1/3 line
│  │    /|\                    │  │
│  │     |   Head & shoulders  │  │
│  │    / \  visible           │  │
│  │                           │  │
│  └───────────────────────────┘  │
│       Crop below chest          │
└─────────────────────────────────┘

よくある間違い

間違い問題対処法
低解像度のポートレート顔がぼやけ、リップシンクの品質が低下します顔の領域を1024x1024以上にします
横向き・斜め向きのアングル口をうまく追跡できず、リップシンクが乱れます正面、またはそれに近い向きにします
ノイズの多い音声リップシンクがずれ、不自然に見えます内蔵のTTSを使うか、ノイズのない音声を録音します
長すぎるクリップ品質が低下しますセグメントに分割して、つなぎ合わせます
サングラス・遮蔽物顔の特徴が隠れます顔がはっきり見える必要があります
不均一な照明アニメーション化すると不自然に見えます均一で柔らかい照明にします

関連スキル

# Dedicated P-Video-Avatar skill
npx skills add inference-sh/skills@p-video-avatar

# All avatar models
npx skills add inference-sh/skills@ai-avatar-video

# All video generation models
npx skills add inference-sh/skills@ai-video-generation

# Text-to-speech
npx skills add inference-sh/skills@text-to-speech

# Image generation (for portraits)
npx skills add inference-sh/skills@ai-image-generation

すべてのアプリを閲覧する:belt app list

コメント