InfiniteTalk API
WaveSpeedAI の InfiniteTalk は、1枚の写真とオーディオを、最長10分の、話す、または歌うアバター動画に変換します。Standard と Fast の階層に加え、Multi バリアント(1枚の画像と2つのオーディオ入力による複数キャラクターの出力)と、Video-to-Video バリアント(既存の動画を新しいオーディオで駆動)があります。
Standard と Fast の階層があり、720pで出力します。Multi バリアントは、1枚の画像と2つのオーディオ入力を受け付け、複数キャラクターが話す/歌う動画を生成します。Video-to-Video バリアントは、既存の動画を新しいオーディオで駆動し、リップシンクを置き換えます。最長10分の出力に対応しています。
概要
InfiniteTalk APIについて
InfiniteTalkでできること、WaveSpeedAIのモデルラインナップにおける位置づけ、そして多くのチームに選ばれる理由。
InfiniteTalkはWaveSpeedAIの動画生成モデルで、WaveSpeedAIのREST APIから利用できます。WaveSpeedAI の InfiniteTalk は、1枚の写真とオーディオを、最長10分の、話す、または歌うアバター動画に変換します。Standard と Fast の階層に加え、Multi バリアント(1枚の画像と2つのオーディオ入力による複数キャラクターの出力)と、Video-to-Video バリアント(既存の動画を新しいオーディオで駆動)があります。
Standard と Fast の階層があり、720pで出力します。Multi バリアントは、1枚の画像と2つのオーディオ入力を受け付け、複数キャラクターが話す/歌う動画を生成します。Video-to-Video バリアントは、既存の動画を新しいオーディオで駆動し、リップシンクを置き換えます。最長10分の出力に対応しています。
WaveSpeedAIのInfiniteTalkファミリーには、Digital-Humanのワークフローをカバーする8個のRESTエンドポイントがあります。各バリアントには、それぞれ独自の料金、パラメーター、作例があります。入力の種類と本番環境の制約に合うものを選ぶか、同じAPIキーで複数を呼び出して、多段階のパイプラインを組み立ててください。
WaveSpeedAIの他の1,000以上のAIモデルと同じAPIキー、請求アカウント、レート制限の枠組みでInfiniteTalkを実行できます。ベンダーごとの設定も、プロバイダーごとのSDKも、ベンダーごとのレート制限も不要です。1つの連携で、テキストから画像、テキストから動画から、音声合成、3D生成、高画質化、編集まで、すべてカバーできます。
エンドポイント
InfiniteTalkのAPIエンドポイント一覧
WaveSpeedAIで現在利用可能なInfiniteTalkのエンドポイントは8個です。ワークフローに合ったバリアントを選んでください。
/filters:quality(82)/media/images/20260408110527_g86tqkpw.webp)
Infinitetalk Fast Video To Video Multi
InfiniteTalk fast video-to-video multi converts a video and two audio inputs into multi-character talking or singing videos. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
/filters:quality(82)/media/images/20260408110532_2m95tzbp.webp)
Infinitetalk Fast Video To Video
Audio-driven infinitetalk-fast turns one video plus audio into realistic talking or singing videos with lip-sync. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
/filters:quality(82)/media/images/20260408111359_7pt74rzh.webp)
Infinitetalk Video To Video Multi
InfiniteTalk Video-to-Video Multi converts a video and two audio inputs into multi-character talking or singing videos at up to 720p. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
/filters:quality(82)/media/images/20260408110534_dl097qgv.webp)
Infinitetalk Fast Multi
InfiniteTalk fast multi converts a single image and two audio inputs into multi-character talking or singing videos. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
/filters:quality(82)/media/images/20260408110525_m58v6n7u.webp)
Infinitetalk Fast
InfiniteTalk fast converts one photo + audio into audio-driven talking or singing avatar videos (Image-to-Video), up to 10 minutes. Ready-to-use REST API, no coldstarts, affordable pricing.
/filters:quality(82)/media/images/20260408111403_q1ar1bex.webp)
Infinitetalk Video To Video
Audio-driven InfiniteTalk turns one video plus audio into realistic talking or singing videos with lip-sync in 480p or 720p. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
/filters:quality(82)/media/images/1790561759067766019_QVeeWlOj.webp)
Infinitetalk
InfiniteTalk Image-to-Video converts a single photo and audio track into long-form audio-driven talking or singing avatar videos, supporting up to 10 minutes, 720P output, natural lip sync, expressive motion, and digital human video workflows. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
/filters:quality(82)/media/images/20260408111406_upu4dbpi.webp)
Infinitetalk Multi
InfiniteTalk Multi converts a single image and two audio inputs into multi-character talking or singing videos at up to 720p. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
作例
InfiniteTalkの実力を見る
InfiniteTalk APIで実際に生成された出力です。動画にカーソルを合わせるとプレビュー、クリックすると原寸のビューアで開きます。
使い方
InfiniteTalk APIの使い方
登録から生成完了まで4ステップ。Python、Node.js、cURLの完全なサンプルは、下のAPIセクションにあります。
- 01
APIキーを取得
WaveSpeedAIのアカウントに登録し、ダッシュボードからAPIキーをコピーします。新規アカウントには無料のスタータークレジットが付くので、課金が始まる前にプレイグラウンドを数十回実行できます。
- 02
予測を送信
入力をJSONとしてhttps://api.wavespeed.ai/api/v3/wavespeed-ai/infinitetalkにPOSTします。エンドポイントはすぐに予測IDを返します。生成は非同期なので、推論中に接続を開いたままにする必要はありません。
- 03
完了までポーリング
https://api.wavespeed.ai/api/v3/predictions/{request_id}/resultにGETします。completedなら出力を返し、failed、cancelled、timeout、deletedならエラーで停止し、それ以外のステータスの間はポーリングを続けます。
- 04
出力URLを読み取る
ステータスが"completed"になったら、data.outputs[0]からURLを読み取ります。URLは、WaveSpeedAIのCDN上にある生成されたメディアを指します。呼び出したInfiniteTalkのバリアントに応じて、画像、動画、音声、3Dファイルのいずれかです。
活用例
InfiniteTalkで作れるもの
開発者やクリエイターがInfiniteTalk APIでよく使うワークフロー。
写真から作る、話す・歌うアバター
wavespeed-ai/infinitetalk は、1枚の写真とオーディオを、話す、または歌うアバター動画に変換します。カタログ上の位置づけは「画像から動画、最長10分、720p階層」です。歌唱への対応が、際立った特長です。
2つのオーディオ入力による複数キャラクター
wavespeed-ai/infinitetalk/multi は、1枚の画像と2つのオーディオ入力を受け付け、最大720pで複数キャラクターが話す/歌う動画を生成します。1つの設定から、会話シーン、デュエット、2人のプレゼンテーションを作るのに便利です。
動画から動画へのリップシンク置き換え
wavespeed-ai/infinitetalk/video-to-video は、既存の動画を新しいオーディオで駆動し、リップシンクを伴ったリアルな発話や歌唱を生成します(480pまたは720p)。既存の映像を、新しいナレーションで吹き替え直すのに便利です。
最長10分の出力
カタログ上、基本バリアントは最長10分に対応しています。ほとんどの動画モデルよりはるかに長く、ポッドキャスト、講義、長尺のナレーション、1エピソード分のトーキングアバターのコンテンツを、1回の生成で作れます。
Fast 階層
wavespeed-ai/infinitetalk-fast。同じ画像から動画のフローで、推論を最適化しています。大量処理やプリプロダクションでの試行に便利です。Multi と video-to-video にも Fast バリアントがあります。
複数キャラクターの動画から動画
wavespeed-ai/infinitetalk/video-to-video-multi は、動画と2つのオーディオ入力を受け付け、最大720pで複数キャラクターが話す/歌う動画を作ります。複数キャラクターと動画ソースのワークフローを、1回の呼び出しで組み合わせられます。
コツ
InfiniteTalkのプロンプトのコツ
InfiniteTalkからより良い出力を得るための実践的なアドバイス。本番のパイプラインで動画モデル全般に通用するパターンに基づいています。
- 01
まずオーディオをきれいにし、同期はその次
リップシンクの品質は、オーディオの明瞭さがボトルネックになります。入力する前に、背景ノイズを除去し、レベルを正規化し、クリッピングがないか確認してください。クリーンなオーディオは、他のどの要素よりもリップシンクを改善します。
- 02
参照画像を、オーディオの言語や文化に合わせる
英語のオーディオには、明らかに西洋人のキャラクターを組み合わせたほうが、ずれた組み合わせよりも自然に見えます。日本語、中国語、韓国語のオーディオと、それに合ったキャラクター参照も同様です。
- 03
正面を向いたポートレートが最もきれいに同期する
正面からのポートレートの参照が、最も自然なリップシンクになります。斜め45度や横顔でも動作しますが、わずかなアーティファクトが出ます。キャラクター画像を選べる場合は、ほぼ正面のポーズを用意してください。
- 04
話すだけでなく、歌にも対応
カタログの機能として、「話す、または歌うアバター動画」があります。ミュージックビデオ、合唱やソリストのコンテンツ、キャラクターをフィーチャーしたリリックビデオなど、話し言葉以外にも使えます。
- 05
Multi バリアントは2つのオーディオ入力を受け付ける
wavespeed-ai/infinitetalk/multi は、1枚の画像と2つのオーディオ入力から、最大720pで複数キャラクターが話す/歌う動画を生成します。1つの設定から、会話シーン、デュエット、2人のプレゼンテーションを作るのに便利です。
- 06
既存の映像の吹き替え直しには video-to-video
wavespeed-ai/infinitetalk/video-to-video は、既存の動画を新しいオーディオで駆動し、リップシンクを伴ったリアルな発話や歌唱を生成します。元の映像を保ったまま、新しいナレーションでクリップを吹き替え直すのに便利です。
料金
InfiniteTalk APIの料金
料金は出力ごとです。最終的な請求額は、各バリアントのプレイグラウンドで設定するパラメーター(解像度、長さ、出力数、参照入力)に応じて変わります。
| エンドポイント | タイプ | 最低料金 |
|---|---|---|
| wavespeed-ai/ | digital-human | $0.075 |
| wavespeed-ai/ | digital-human | $0.075 |
| wavespeed-ai/ | digital-human | $0.15 |
| wavespeed-ai/ | digital-human | $0.075 |
| wavespeed-ai/ | digital-human | $0.075 |
| wavespeed-ai/ | digital-human | $0.15 |
| wavespeed-ai/ | digital-human | $0.15 |
| wavespeed-ai/ | digital-human | $0.15 |
API
InfiniteTalk APIを呼び出す
wavespeed.ai/accesskeyでAPIキーに登録し、RESTで予測を送信します。プレイグラウンドでは、入力の組み合わせに応じて、そのまま貼り付けられるサンプルが生成されます。
POSThttps://api.wavespeed.ai/api/v3/wavespeed-ai/infinitetalk
# 1. Submit the prediction.
SUBMIT_RESPONSE=$(curl --silent --show-error --fail-with-body \
-X POST "https://api.wavespeed.ai/api/v3/wavespeed-ai/infinitetalk" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $WAVESPEED_API_KEY" \
-d '{
"image": "https://interactive-examples.mdn.mozilla.net/media/cc0-images/painted-hand-298-332.jpg",
"audio": "https://interactive-examples.mdn.mozilla.net/media/cc0-audio/t-rex-roar.mp3",
"resolution": "480p"
}')
TASK=$(printf '%s' "$SUBMIT_RESPONSE" | jq 'if has("data") then .data else . end')
PREDICTION_ID=$(printf '%s' "$TASK" | jq -r '.id')
if [ -z "$PREDICTION_ID" ] || [ "$PREDICTION_ID" = "null" ]; then
printf 'Submission response did not contain a prediction id
' >&2
exit 1
fi
RESULT_URL="https://api.wavespeed.ai/api/v3/predictions/$PREDICTION_ID/result"
# 2. Poll until the prediction finishes.
while true; do
RESPONSE=$(curl --silent --show-error --fail-with-body "$RESULT_URL" \
-H "Authorization: Bearer $WAVESPEED_API_KEY")
RESULT=$(printf '%s' "$RESPONSE" | jq 'if has("data") then .data else . end')
STATUS=$(printf '%s' "$RESULT" | jq -r '.status')
case "$STATUS" in
completed) printf '%s\n' "$RESULT" | jq '.outputs'; break ;;
failed|cancelled|timeout|deleted) printf '%s\n' "$RESULT" | jq . >&2; exit 1 ;;
*) sleep 2 ;;
esac
doneconst submitUrl = "https://api.wavespeed.ai/api/v3/wavespeed-ai/infinitetalk";
const apiKey = process.env.WAVESPEED_API_KEY;
if (!apiKey) throw new Error('Set WAVESPEED_API_KEY');
async function requestJson(url, options = {}) {
const response = await fetch(url, options);
if (!response.ok) throw new Error(await response.text());
return response.json();
}
// 1. Submit the prediction.
const body = await requestJson(submitUrl, {
method: "POST",
headers: {
"Authorization": `Bearer ${apiKey}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"image": "https://interactive-examples.mdn.mozilla.net/media/cc0-images/painted-hand-298-332.jpg",
"audio": "https://interactive-examples.mdn.mozilla.net/media/cc0-audio/t-rex-roar.mp3",
"resolution": "480p"
}),
});
const task = body.data ?? body;
const resultUrl = `https://api.wavespeed.ai/api/v3/predictions/${task.id}/result`;
// 2. Poll until the prediction finishes.
while (true) {
const resultBody = await requestJson(resultUrl, {
headers: { "Authorization": `Bearer ${apiKey}` },
});
const result = resultBody.data ?? resultBody;
if (result.status === "completed") {
console.log(result.outputs);
break;
}
if (["failed", "cancelled", "timeout", "deleted"].includes(result.status)) throw new Error(JSON.stringify(result));
await new Promise(resolve => setTimeout(resolve, 2000));
}import json
import os
import time
from urllib.request import Request, urlopen
api_key = os.environ["WAVESPEED_API_KEY"]
headers = {"Authorization": f"Bearer {api_key}", "Content-Type": "application/json"}
payload = {
"image": "https://interactive-examples.mdn.mozilla.net/media/cc0-images/painted-hand-298-332.jpg",
"audio": "https://interactive-examples.mdn.mozilla.net/media/cc0-audio/t-rex-roar.mp3",
"resolution": "480p"
}
def request_json(url, data=None):
request = Request(url, data=data, headers=headers, method="POST" if data else "GET")
with urlopen(request) as response:
return json.load(response)
# 1. Submit the prediction.
body = request_json("https://api.wavespeed.ai/api/v3/wavespeed-ai/infinitetalk", json.dumps(payload).encode())
task = body.get("data", body)
result_url = f"https://api.wavespeed.ai/api/v3/predictions/{task['id']}/result"
# 2. Poll until the prediction finishes.
while True:
result_body = request_json(result_url)
result = result_body.get("data", result_body)
status = result.get("status")
if status == "completed":
print(result.get("outputs", []))
break
if status in {"failed", "cancelled", "timeout", "deleted"}:
raise RuntimeError(result)
time.sleep(2)比較
InfiniteTalkと他モデルの比較
WaveSpeedAI上の類似モデルではなくInfiniteTalkを選ぶべきケース。
InfiniteTalk vs Wan 2.2 Speech-to-Video
Wan 2.2 Speech-to-Video(wavespeed-ai/wan-2.2/speech-to-video)は、480pで最長10分のクリップに対応し、最大の長さは InfiniteTalk と同じです。InfiniteTalk は、Wan 2.2 には別のエンドポイントとして用意されていない、Multi バリアント(2つのオーディオ入力)、Video-to-Video、Fast 階層を備えています。
InfiniteTalk vs Stock avatar tools
(HeyGen のような)ストックアバターのツールでは、事前に学習された厳選のアバターライブラリに制限されます。InfiniteTalk は、ブランドのマスコット、AI生成のキャラクター、イラストのホストなど、任意のキャラクター画像を、キャラクターごとの設定なしで受け付け、話すだけでなく歌うこともできます。
InfiniteTalk vs ElevenLabs voice tools
ElevenLabs は音声(生成、クローン、多言語TTS)を担当します。InfiniteTalk は映像のレイヤーです。ElevenLabs のナレーションと、キャラクター画像(または既存の動画)を組み合わせて、リップシンクされた完成動画を作れます。
FAQ
InfiniteTalk API — よくある質問
料金、ライセンス、連携など、WaveSpeedAIでInfiniteTalkを実行する際のよくある質問。
InfiniteTalk APIとは何ですか?
InfiniteTalkは、WaveSpeedAIの動画生成モデルで、WaveSpeedAI上でREST APIとして提供されています。WaveSpeedAI の InfiniteTalk は、1枚の写真とオーディオを、最長10分の、話す、または歌うアバター動画に変換します。Standard と Fast の階層に加え、Multi バリアント(1枚の画像と2つのオーディオ入力による複数キャラクターの出力)と、Video-to-Video バリアント(既存の動画を新しいオーディオで駆動)があります。プログラムから呼び出すことも、上にリンクされたプレイグラウンドで試すこともできます。
InfiniteTalk APIはどう呼び出しますか?
WaveSpeedAIのアカウントに登録し、/accesskeyからAPIキーをコピーして、入力をJSONとしてhttps://api.wavespeed.ai/api/v3/wavespeed-ai/infinitetalkにPOSTします。エンドポイントは予測IDを返します。結果のエンドポイントを約2秒ごとにポーリングし、長時間かかるタスクでは間隔を広げ、終端ステータスになったら停止してください。本番運用向けのPython / Node.js / cURLのサンプルは上にあります。
InfiniteTalk APIの料金はいくらですか?
InfiniteTalkは1回あたり$0.075からです。実際の料金は、設定するパラメーター(解像度、長さ、出力数、参照入力)に応じて変わります。プレイグラウンドの「生成」ボタンの横に表示されるリアルタイムの料金プレビューで、現在の入力での正確な料金を確認できます。
InfiniteTalkにはどのバリアントがありますか?
WaveSpeedAIでは、8個のInfiniteTalkエンドポイントが利用可能です:wavespeed-ai/infinitetalk-fast/video-to-video-multi, wavespeed-ai/infinitetalk-fast/video-to-video, wavespeed-ai/infinitetalk/video-to-video-multi, wavespeed-ai/infinitetalk-fast/multi, wavespeed-ai/infinitetalk-fast, wavespeed-ai/infinitetalk/video-to-video, wavespeed-ai/infinitetalk, wavespeed-ai/infinitetalk/multi。各バリアントには、専用のプレイグラウンドページと料金があります。
InfiniteTalkの出力を商用利用できますか?
商用利用の権利は、WaveSpeedAIのモデルライセンスに従います。WaveSpeedAIのほとんどのモデルは出力の商用利用を認めています。具体的なライセンスの概要は各モデルのプレイグラウンドページで、プラットフォーム全体の条件はWaveSpeedAIの利用規約でご確認ください。
なぜ直接ではなくWaveSpeedAIでInfiniteTalkを使うのですか?
InfiniteTalkと、他のプロバイダーの1,000以上のAIモデルを、1つのAPIキー、1つの請求アカウントで利用できます。ベンダーごとのSDK設定も、個別のレート制限も、ベンダーごとの連携コードの書き直しも不要です。料金は、通常WaveSpeedAIの直接のAPIと同等かそれ以下です。
提供元
WaveSpeedAIについて
WaveSpeedAIにおけるInfiniteTalkと、WaveSpeedAIのモデルラインナップ全体を手がけるチーム。
WaveSpeedAI は、ByteDance、Google、OpenAI、Alibaba、Kuaishou、ElevenLabs をはじめ、主要プロバイダーと数十の独立系ラボの1,000以上のAIモデルを、1つのAPIキー、1つの課金アカウント、1つのレート制限のもとでホストする推論プラットフォームを運営しています。WaveSpeedAI は、制作パイプライン向けに調整した自社モデル(画像・動画アップスケーラー、ウォーターマーク除去、Animate、InfiniteTalk)も提供しています。
WaveSpeedAIでInfiniteTalkを使った開発を始めよう
登録時に無料のスタータークレジットを進呈。WaveSpeedAIをはじめ、あらゆるプロバイダーの1,000以上のAIモデルを、1つのAPIキーで。