sync-labs-lipsync について
Sync Labs APIのリクエストを設計し、既存のトーク映像の吹き替えや静止ポートレートのアニメーションを行うスキルです。モデル選択からジョブ設定、結果の受け取りまでを扱います。
主な機能
- 01ショットと品質に応じたモデル選択
- 02動画の吹き替えと音声差し替え
- 03sync-3による静止画のアニメーション
- 04複数話者のセグメント生成
- 05ポーリングとWebhookでのジョブ処理
活用シーン
- 01トーク動画の多言語化
- 02修正・再録音した台詞への差し替え
- 031つのジョブで複数話者を吹き替え
- 04音声に合わせたポートレートのアニメーション
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ calesthio/ generative-media-skills --skill sync-labs-lipsyncインストール後、Claude Code で/sync-labs-lipsyncを入力して読み込まれたか確認します。
同梱ファイルEVAL.md
詳細
Sync Labs のリップシンクとビジュアル吹き替え
Sync Labs(製品ドメインはsync.so、API ホストはapi.sync.so)は、ホスト型 API とウェブスタジオを提供しており、話者の口元(新しいモデルでは、あご、表情、頭部も)を新しい音声トラックに合わせて再生成します。人物やシーン全体を生成するものではありません。入力には、既存のトーキングヘッド動画(またはsync-3では顔が写った静止画1枚)と、ターゲット音声(ファイル、ホストされた URL、または統合された TTS プロバイダーで合成したテキスト)が必要です。駆動する顔の領域以外(背景、体、髪、衣服)は手を加えず、再生成された顔の周囲に合成されます。(記載元:sync.so/docs の概要と「AI リップシンクの仕組み」。2026-07-10 に確認。)
動画を別の言語に吹き替えたりローカライズしたりする場合、修正済みまたは再録音した音声に合わせて唇の動きを調整する場合(ADR 形式)、受信者ごとの名前を入れてベース動画をパーソナライズする場合、唇の動きが自然なポッドキャストやインタビューのクリップを作成する場合、またはナレーションに合わせてポートレート写真を動かす場合は、このスキルを使用してください。顔を一から生成する場合、別人の顔に入れ替える場合、またはテキストだけからアバター全体を生成する場合には使用しないでください。これらは別の製品カテゴリです。
モデルの概要と選び方
以下のモデル情報はすべて sync.so/docs(モデルページと料金ページ)に基づき、2026-07-10 に確認したものです。料金は 25 fps での出力 1 秒あたりの金額で、プランのティアによって変動するため、契約上の料金ではなく、確認時点の参考情報として扱ってください。
| モデル ID | 顔の解像度 | 遮蔽物への対応 | 速度(ドキュメント記載) | 1 秒あたりの料金(25 fps) | 用途 |
|---|---|---|---|---|---|
lipsync-1.9.0-beta | 顔のクロップ | なし | リアルタイムの約 3 倍(最速) | $0.02–0.025 | 低コストでシンプルな正面向きのクリップ。一般的な口の動き |
lipsync-2 | 512×512 のクロップ | オプション(occlusion_detection_enabled) | リアルタイムの約 1 倍 | $0.04–0.05 | 汎用のデフォルト。話者ごとのスタイルを維持 |
lipsync-2-pro | 512×512 +拡散モデルによる超解像 | オプション | 約 0.5~0.7 倍(lipsync-2 より 1.5~2 倍遅い) | $0.067–0.083 | ひげ、歯、細かな顔の特徴を高品質に表現 |
sync-3 | 4K ネイティブ、ショット全体 | 自動、組み込み | 高速(ショット全体を一度に処理) | $0.107–0.133 | クローズアップ、横顔/極端な角度、顔の一部、静止画像入力 |
react-1 | 表情/頭部の編集 | — | 短いクリップのみ | (料金ページを参照) | 唇だけでなく、感情、表情、頭の動きを変更 |
選び方の目安(ドキュメントに記載された機能の違いに基づく経験則):
- 通常の、明るく照らされた、おおむね正面向きのトーキングヘッドには、まず
lipsync-2を使ってください。ドキュメントで「最も自然」とされている汎用モデルで、現行品質のティアでは最も低コストです。必要な理由がある場合にのみ、上位モデルに切り替えてください。 - 視聴者が注目する口元に細かな質感がある場合は、
lipsync-2-proを選んでください。たとえば、唇にかかるひげ、クローズアップで見える歯、または 512 クロップの柔らかさが画質低下として目立つ高ビットレート映像などです。処理速度は遅く、コストは約 1.7 倍です。顔が小さく映る引きのショットで使うのは避けてください。 - ショットが正面向きの顔という前提から外れる場合は、
sync-3を選んでください。横顔/肩越しの角度、口元にかかる手やマイク、クロップされた顔や顔の一部、または 512 クロップを合成して戻すとぼやけるような、真の 4K 納品物が該当します。sync-3は設定なしで遮蔽物にも対応し、音声からポートレートをアニメーション化するために、静止画像をビジュアル入力(JPEG/PNG/WebP)として受け付ける唯一のモデルでもあります。 - 一般的な唇の動きで問題ない、使い捨て/大量処理/厳しい予算の作業に限り、
lipsync-1.9.0-betaを使ってください。話者ごとの口の形には対応していません。 - 納品物に同期だけでなく、同じ人物をより幸せ/怒り/悲しみの感情で演じ直し、それに合った頭の動きを付けるといった演技が必要な場合は、
react-1を使ってください。入力は 15 秒まで(ドキュメントに記載された厳格な上限)で、感情プロンプトとしてhappy | sad | angry | disgusted | surprised | neutralを指定できます。
考慮すべきドキュメント記載の制限:lipsync-2 と lipsync-2-pro は、入力動画に自然な発話動作が必要です。 ほとんど動きのない映像(固定カメラのポートレートや、人物がじっとしている映像)は、これらのモデルではうまく同期しない場合があります。まさにそのようなケースには、sync-3(「自然に閉じた唇を開ける」ことができます)または静止画像を使った sync-3 ジョブが適しています。
API の仕様
以下のドキュメント記載の情報は、sync.so/docs の API リファレンスに照らし、2026-07-10 に確認したものです。
- エンドポイント:
POST https://api.sync.so/v2/generate - 認証ヘッダー:
x-api-key: YOUR_API_KEY(Bearer トークンではありません。SDK は環境変数SYNC_API_KEYを読み取ります)。 - SDK: Python の
pip install syncsdk(from sync import Syncをインポート)と、TypeScript SDK(SyncClient)があります。どちらもgenerations.create()/generations.get()をラップします。 - レート制限: 1 キーあたり 100 リクエスト/分(ドキュメント記載)。同時実行数(処理中の生成)はプランのティアごとに別途上限があり、これを超えると
concurrency_limit_reached(429)が返されます。これはrate_limit_exceededとは異なります。 - 実行時エラーカタログ: 認証なしの
GET https://api.sync.so/v2/errorsは、{code, message, suggestion}オブジェクトを返します。メッセージ文字列をハードコードするのではなく、実行時にerrorCodeを照合してください。
リクエストボディ
{
"model": "lipsync-2",
"input": [
{ "type": "video", "url": "https://cdn.example.com/source.mp4" },
{ "type": "audio", "url": "https://cdn.example.com/newvoice.mp3" }
],
"options": {
"sync_mode": "cut_off",
"temperature": 0.5,
"active_speaker_detection": { "auto_detect": true },
"occlusion_detection_enabled": false
},
"outputFileName": "dub_v1",
"webhookUrl": "https://your.app/hooks/sync"
}
フィールドの補足(ドキュメント記載):
input— ビジュアル項目(videoまたはimage。imageはsync-3のみ)をちょうど 1 つ、および音声ソース(audio、TTS 項目のtext、またはdubParamsのいずれか 1 つ)を指定します。ビジュアルを 2 つ 指定すると、generation_input_too_many_visualが返されます。各項目にはurl(一般にアクセス可能な URL)またはassetId(Assets API から取得)を指定し、segments配列との紐付けに使う任意のrefIdも指定できます。動画項目ではsegments_secs/segments_framesを指定して、範囲を限定したリップシンクが 可能です。options.sync_mode— 動画と音声の長さが異なる場合の調整方法です。silence(動画の長さに合わせて音声に無音を追加)、cut_off(動画を音声の長さに トリミング)、remap(音声に合わせて動画の再生速度を変更)、loop(動画を 繰り返す)、bounce(動画を前後に往復再生)があります。画像入力では無視されます。 新しい音声が短く、末尾で映像を静止させたくない吹き替えでは、cut_offが安全な デフォルトです。remapは不自然な動きの速度になるおそれがあるため、意図して 使用してください。options.temperature— 0.0~1.0 の範囲で、生成される口の動きの表現力を 指定します。値が高いほど動きが大きくなりますが、口の動きが大げさになることが あります。値が低いほど落ち着いた控えめな動きになります。(ドキュメント記載の 範囲です。効果はファーストパーティのパラメーター説明に基づきます。)options.active_speaker_detection— 複数の顔が映るフレーム向けです。{auto_detect: true}を指定すると、モデルが話者の顔を選択します。そうでない場合は、coordinates、bounding_boxes、bounding_boxes_url、および/またはframe_numberで話者を指定します。指定しないと、複数の顔が映るクリップで別の顔が 選ばれることがあります。Active Speaker Detection は有料プラン(Creator プラン以上) の機能です。options.occlusion_detection_enabled—lipsync-2/lipsync-2-proでは、 手やマイク、髪が口にかかる場合に有効にします。sync-3では自動で有効になるため、 このフラグは不要です。options.model_mode—lips | face | head(モデルが編集できる領域です。 より広いモードでは表情や頭部が編集され、react-1スタイルの編集に関係します)。options.prompt—react-1の感情です:happy | sad | angry | disgusted | surprised | neutral。segments—{startTime, endTime, audioInput:{refId,...}, optionsOverride}の配列です。1 つの動画の異なる時間範囲に異なる音声とセグメントごとのオプションを 適用できます(1 回のジョブで複数話者/複数行を吹き替えます)。dubParams— 自動翻訳吹き替えです:{providerName:"elevenlabs", sourceLang, targetLang, numSpeakers}。入力動画から音声を抽出し、翻訳して音声を 再生成します。別のaudio/text入力も同時に渡さないでください(渡すとgeneration_input_dub_audio_conflictが返されます)。ドキュメントに記載された対象言語は en、es、fr、de、it、pt、pl、hi、zh、ja、ar、ru、ko、id、nl、tr、sv、fil、ms、ro、uk、el、 cs、da、fi、bg、hr、sk、ta です。numSpeakersは 0~50 です。outputFileName— 使用できるのは英数字、アンダースコア、ハイフンのみです。.mp4が末尾に追加されます。
レスポンスとジョブのライフサイクル
POST は id と status を含む 201 を返します。ステータスは
PENDING(キュー待ち)→ PROCESSING → 終端状態の
COMPLETED(outputUrl が設定されます)、FAILED(error と
errorCode を確認)、または REJECTED(処理前の検証/ポリシーによる拒否)です。
結果を確認する方法は 2 つあります。
- ポーリング —
GET /v2/generate/{id}(SDK のgenerations.get(id))を 約 10 秒間隔で呼び出します。GET ...?wait=trueはロングポーリングを行いますが、 サーバーのタイムアウトは 10 秒です。長時間かかるジョブのポーリングの代わりには なりません。 - Webhook(長時間かかるジョブにはこちらを推奨):
webhookUrl(パブリック HTTPS。すばやく 2xx を返す必要があります)を渡します。各配信にはSync-Signature: t={timestamp},v1={hmac}ヘッダーが含まれます。署名シークレット (whsec_...)を使い、timestamp + rawBodyに対する HMAC-SHA256 を計算して、 タイミングセーフに比較することで検証します。配信に失敗しても 自動再試行は 行われません。そのため、照合用にポーリングのフォールバックを用意してください。
完全な例
例 1 — クローン音声を使って広告をスペイン語にローカライズする(商用ダビング)
実例です。必須のテンプレートではありません。
- 目的: 45 秒の英語の製品広告をスペイン語に吹き替え、プレゼンター本人の声の特徴を保ちながら、1080p のクリーンな MP4 を納品します。
- モデル:
lipsync-2(正面向きで、明るく照らされたプレゼンター。遮蔽物なし)。QA で横顔のショットが見つかった場合に限り、sync-3に切り替えます。 - 入力/制約: ソース動画は公開 URL でホストされています(20 MB の直接アップロード上限を超えるため、アップロードではなく URL を使用します)。スペイン語音声は、プレゼンター本人の同意を得た英語音声(クリーンな単一話者のサンプル、30 秒以上)からクローンした ElevenLabs 音声で作成します。
from sync import Sync
from sync.common import Video, Audio, GenerationOptions
sync = Sync() # reads SYNC_API_KEY
job = sync.generations.create(
input=[
Video(url="https://cdn.example.com/ad_en_1080p.mp4"),
Audio(url="https://cdn.example.com/ad_es_clonedvoice.wav"),
],
model="lipsync-2",
options=GenerationOptions(
sync_mode="cut_off", # ES track is shorter; trim video tail
occlusion_detection_enabled=False,
active_speaker_detection={"auto_detect": True},
),
output_file_name="ad_es_v1",
)
# then poll job.id, or receive a webhook
- この構成にした理由:
cut_offを使うと、翻訳したセリフが短い場合に最終フレームが静止するのを防げます。音声は、同意を得たプレゼンター本人のサンプルからクローンしています。これは、同意を最優先する方法です。1080p の入力により顔検出の信頼性を保ちつつ、512 のクロップ映像を同じ解像度にきれいに合成できます。 - 想定される結果: 唇の動きがスペイン語音声に合い、プレゼンターの話し方のリズムが保たれ、フレームの残りの部分はソースと同一です。
- 起こりうる問題: スペイン語音声トラックが動画より大幅に長い場合、
cut_offによって発話が途中で切れます。その場合は、remapに切り替える(多少の速度変化を許容する)か、台本のタイミングを調整してください。クローズアップのヒーローショットで歯の描写がぼやけている場合は、そのショットをlipsync-2-proで再実行してください。
例 2 — 1 回のジョブで複数話者の会話を吹き替える(セグメント)
例。 カメラに映る 2 人の話者が登場する 15 秒のクリップで、別々にクローンした音声を使い、統合 TTS で各セリフに別の声を割り当てます。音声を別途ホストする必要はありません。
job = sync.generations.create(
input=[
Video(url="https://cdn.example.com/interview.mp4"),
TTS(provider={"name":"elevenlabs","voiceId":"voice_A","script":"Bienvenidos al programa."}, ref_id="a"),
TTS(provider={"name":"elevenlabs","voiceId":"voice_B","script":"Gracias por recibirme."}, ref_id="b"),
],
segments=[
{"startTime": 0, "endTime": 8, "audioInput": {"refId": "a"}},
{"startTime": 8, "endTime": 15, "audioInput": {"refId": "b"}},
],
model="lipsync-2",
)
- 理由:
segmentsを使うと、各 TTS のセリフを時間範囲に結び付け、必要に応じてセグメントごとにアクティブ話者を検出して、正しい顔に対応させられます。2 人のシーンを 1 つのジョブにまとめられます。 - 失敗するケース: セグメントが重複していたり、タイミングが合っていなかったりすると、
generation_input_segments_invalidが返されます。セグメントごとに両方の顔が映っている場合は、optionsOverrideにactive_speaker_detectionを追加して、各話者を指定してください。
例 3 — ナレーションから静止ポートレートをアニメーション化する(sync-3 専用)
例。 1 枚の顔写真を、20 秒の台本を読み上げるように動かします。
{
"model": "sync-3",
"input": [
{ "type": "image", "url": "https://cdn.example.com/headshot.png" },
{ "type": "audio", "url": "https://cdn.example.com/vo.mp3" }
],
"outputFileName": "portrait_talk"
}
- sync-3 を使う理由: 画像入力と「閉じた唇を自然に開く」機能は
sync-3専用です。画像には固有の長さがないため、sync_modeは無視されます。 - 失敗するケース: 解像度が低い顔や、スタイルが強くデフォルメされた顔では、動きを合わせられないことがあります。明るく照らされた、正面に近い鮮明な顔写真を使用してください。
例 4 — ローカライズを一括処理する(Scale/Enterprise)
例。 バッチ API では、1 行に 1 レコードの JSONL ファイルを受け付けます。各レコードは、/v2/generate のリクエスト本文に一意の request_id を付けたものです。ドキュメントに記載されている制約は、1 バッチあたり 20~1000 件、ファイルサイズ 5 MB 以下、エンドポイントは /v2/generate、request_id は一意、Scale プラン以上(それ以外では batch_plan_required/403)です。個別に 1000 回リクエストすることなく、1 本の動画を複数のターゲット言語に展開したり、多数のパーソナライズ版を作成したりするのに使用できます。
入力要件と制約(2026-07-10 に記載)
- 動画コンテナ: MP4、MOV、WebM、AVI。コーデック: H.264 が最高品質です;
H.265/MPEG-2 は最大約 15%、VP9 は約 20%、AV1 は 20%超の品質低下があります(すべて H.264 にトランスコードされ、
出力は
libx264 -crf 17 -preset slowで再エンコードされます)。MP4/H.264、1080p の入力を推奨します。 - 解像度: 信頼性の高い顔検出には 480p 以上が必要です。1080p を推奨します;
上限は 4K(4096×2160)です。
sync-3以外のモデルでは顔を 512×512 で抽出して処理し、 元の映像に合成します。そのため、入力解像度が非常に高くても、これらのモデルで顔の細部が向上することはありません;sync-3は 4K でネイティブに動作します。 - アスペクト比: 任意(9:16、16:9、1:1、カスタム)。
- フレームレート: 24/25/30 fps の固定フレームレートを推奨します。
- 音声: WAV/MP3 を推奨します(OGG/FLAC/ALAC/MP4 音声も完全にサポート; WMA/M4A/AAC は制限があります)。44.1 または 48 kHz を推奨します;最大 32 ビット浮動小数点、最大 7.1 チャンネルに対応します。 音声トラックごとに話者は 1 人とし、音楽や群衆の雑音から分離してください。
- 直接アップロードの上限: 20 MB(
413/file_size_exceeds_plan_limit)。これを超える場合は、公開 URL(サイズ上限なし)でホストするか、Assets API(POST /v2/assets/upload)を使用してください。 - 長さ: 1 回の生成あたりの上限はプランによって異なります — Free は 20 秒、Hobbyist は 1 分、
Creator は 5 分、Growth は 10 分、Scale/Enterprise は 30 分です。追加の上限:
react-1の入力は ≤15 秒;1 回の生成あたりの音声は ≤300 秒(5 分);TTS テキストは ≤5000 文字です。
料金とプラン(2026-07-10 に確認;変動する可能性があります)
使用量は出力 1 秒あたりで計測されます;サブスクリプションに加入すると、上限や機能が拡張され、 使用料金の割引が適用されます。モデルごとの秒単位の料金は上のモデル表を参照してください。
| プラン | 月額料金 | 秒単位の料金 | 最大長 | 同時実行数 | ボイスクローン | 主な内容 |
|---|---|---|---|---|---|---|
| Free | $0 | — | 20 秒 | — | — | 月 3 回の生成 |
| Hobbyist | $5 | $0.05 | 1 分 | 1 | 3 | API、SDK、Studio |
| Creator | $19 | $0.05 | 5 分 | 3 | 5 | 透かしなし、独自の TTS キー、アクティブスピーカー検出 |
| Growth | $49 | $0.0475(5%割引) | 10 分 | 6 | 15 | バッチ API、チームメンバー 3 人 |
| Scale | $249 | $0.04(20%割引) | 30 分 | 15 | 50 | バッチ API、メンバー 5 人、サポートの委任 |
| Enterprise | カスタム | カスタム | カスタム | カスタム | カスタム | 契約 |
注:無料プランと低価格プランでは、出力に透かしが入り、同時実行数は 1 に制限されます — Creator 以上にアップグレードすると透かしを削除できます。バッチ API は Growth 以上が必要です(batch_plan_required はバッチエンドポイントについて Scale を指定しています — バッチパイプラインを構築する前に、現在のエラー一覧でご利用のプランを確認してください)。
リップシンク出力のレビュー(品質ゲート)
公開する前に、以下を 1 つずつ確認してください — 最初の 2 項目は、出力が「AI っぽく」見える原因であり、それぞれ独立して問題が起こります。
- 同期精度/タイミング。 口の形は早すぎたり遅すぎたりせず、適切な音素に合っていますか? 破裂音(b/p/m — 唇を完全に閉じる必要があります)と開母音をコマ送りで確認してください。長いクリップでずれが大きくなる場合は、通常、長さの不一致が原因です —
sync_modeを見直す(cut_offを試す)か、2 分未満のセグメントに分割してください。 - 人物の同一性の保持。 その人は同じ人物に見えますか? 口元が「にじんだ」ようになったり、平均化されたり、唇の形が失われたり、顎の動きが人物と一致しなかったりしていないか確認してください。
lipsync-1.9.0-betaでは、仕様上、話者ごとに最適化されない一般的な動きになります。 - 口元のアーティファクト。 歯(ぼやけたり融合したりした歯は、
lipsync-2の典型的な特徴です —lipsync-2-proで改善してください)、唇と肌の境界(合成部分の境界でのブレンド/色/照明の不一致)、口元をまたぐひげや口ひげの連続性を確認してください。 - オクルージョンへの対応。 手、マイク、髪が口元を横切る場合、モデルはその上から描画してしまいますか(誤り)、それともそれを正しく認識しますか?
lipsync-2/proで誤りがある場合は、occlusion_detection_enabled=trueを設定してください;それでも解決しない場合は、sync-3に切り替えてください(自動)。 - 顔の取り違え/複数話者。 意図した話者が動かされていることを確認してください;そうでない場合は、アクティブスピーカー検出で指定してください。
- 無音/静止フレーム。
lipsync-2/proでは、ほとんど動きのない入力だと同期が不十分になることがあります — これは「自然な発話の動きが必要」という記載済みの制限です;sync-3に切り替えてください。
失敗モードと修正(ドキュメント化されたエラーカタログより、2026-07-10)
人間が読むerror文字列ではなくerrorCodeで分岐し、fieldを確認して、どの入力が拒否されたかを把握してください。主なケースと対処法:
generation_input_face_selection_invalid(「選択した顔は使用できません」)— 顔検出を再実行するか、自動検出を有効にしてください。または、顔のサイズ、照明、角度を改善してください。generation_input_too_many_visual— 映像を2つ送信しています。1つだけ送信してください。generation_input_segments_invalid— セグメントが重複しているか、時間が無効です。有効な範囲で重複しないようにしてください。generation_input_dub_audio_conflict—dubParamsと音声/テキスト入力の両方を渡しています。どちらか一方を選んでください。generation_audio_length_exceeded/generation_text_length_exceeded— 音声を300秒以下、テキストを5000文字以下に短縮するか、分割してください。generation_plan_duration_exceeded(402) — 出力がプランごとの1回の生成上限を超えています。アップグレードするか、入力を短縮するか、短縮するsync_modeを使用してください。concurrency_limit_reached(429) とrate_limit_exceeded(429) — 前者は実行中のジョブが多すぎる状態(待機/アップグレード)、後者は1分あたりのリクエスト数が多すぎる状態(指数バックオフ)を意味します。混同しないでください。generation_media_metadata_missing— 音声にはduration、動画にはdurationとframe_rateが必要です。メタデータを埋め込むにはFFmpegで再エンコードしてください。REJECTEDステータス — 処理前の検証またはポリシーによる拒否です。理由を確認せずにむやみに再試行しないでください。- 一時的なエラー(
500/503/504、controller_*、generation_timeout、generation_infra_*)— 指数バックオフで再試行し、Retry-Afterに従い、オフピーク時にも試してください。解消しない場合はrequestIdを添えてエスカレーションしてください。 402の支払いエラー/401の認証エラー — 再試行しても解決しません。請求情報またはキーを修正してください。
成功したものの結果が悪い場合の一般的な改善手順(経験則):入力を改善する(照明を整える、音声を分離する、安定させる、解像度を1080pに上げる、顔を正面に向ける)→ パラメーターを調整する(sync_mode、temperature、occlusion_detection_enabled、アクティブスピーカーの固定)→ モデルを上位にする(細部にはlipsync-2 → lipsync-2-pro、または角度/オクルージョン/4Kにはsync-3)。入力品質が最も重要です。より高価なモデルに費用をかける前に、まず入力品質の改善を試してください。
生成前に確認すること:同意、肖像権、権利
実在の人物の顔を編集して新しい言葉を話させることは、単なるレンダリングではなく、肖像と声に関わる行為です。Sync Labs が公開している独自のガイダンスでは、その境界が明確に示されています(sync.so のブログ、2026-07-10 確認済み):話者または権利者が同意している場合、吹き替えは正当なものです。同意がない場合、同じ出力でもディープフェイクとなります。 同社の設計は「同意を最優先」としており、想定されているのは自分自身の声をクローンすることです。他人の声や顔を使うには、本人の明示的な許可が必要です。
エージェントの運用ルール:
- 送信前に権利を確認してください。 ユーザーが元動画を所有している、または使用許諾を得ていること、クローンする声や声を吹き替える顔について同意を得ていることを確認してください。不明な点があれば質問し、推測で進めないでください。
- 同意なしに実在の公人や私人になりすますこと、また、欺瞞的なコンテンツ(偽の発言、捏造された推薦)、同意のない親密なコンテンツ、詐欺/誤情報を作成することはしないでください。これらは
REJECTEDとなる可能性が特に高いカテゴリであり、API が受け付けるかどうかにかかわらず、法律上も倫理上も認められません。 - 音声クローンのサンプルには、同意した本人の、明瞭な単一話者の音声(30 秒以上)を使用してください。スクレイピングした音声から第三者の声をクローンすることは、まさに同意のないケースであり、拒否してください。
- データの取り扱い。 機微な映像を扱う場合は、プロバイダーの保持/学習/削除に関する方針を確認してください(Sync Labs の独自ガイダンスでは、プロバイダーがコンテンツを保持するか、学習に使用するか、依頼に応じて削除するかを確認するよう推奨しています)。管理できない機微な素材のアップロードは避けてください。
- 開示。 吹き替えや加工を施した一般公開コンテンツについては、適用される合成メディアの開示規範とプラットフォームのルールに従ってください。ウォーターマークが除去されるのは有料プランであり、その場合、誠実なラベル表示の責任はあなたに移ります。
これらの義務は、選択するモデルに関係なく適用され、生成の完了よりも優先されます。
出典(2026-07-10 確認済み)
一次情報(Sync Labs / sync.so):
- はじめに — https://sync.so/docs/introduction
- リップシンクモデル — https://sync.so/docs/models/lipsync
- sync-3 モデル — https://sync.so/docs/models/sync-3 ; https://sync.so/sync-3
- react-1 モデル — https://sync.so/react-1
- クイックスタート — https://sync.so/docs/quickstart
- 生成作成 API リファレンス — https://sync.so/docs/api-reference/api/generate-api/create.md
- エラー処理 — https://sync.so/docs/developer-guides/error-handling(カタログ:`GET https://api.sync.so/v2/errors`)
- Webhook — https://sync.so/docs/api-reference/guides/webhooks
- メディア形式のサポート — https://sync.so/docs/compatibility-and-tips/media-formats-support
- リップシンクの品質向上 — https://sync.so/docs/compatibility-and-tips/improving-lip-sync-quality
- AI リップシンクの仕組み — https://sync.so/docs/product/how-ai-lip-sync-works
- テキスト読み上げリップシンクのチュートリアル — https://sync.so/docs/tutorials/text-to-speech-lipsync
- 料金 — https://sync.so/pricing
- 「AI による吹き替えは安全ですか?」(同意/権利に関するガイダンス)— https://sync.so/blog/is-ai-dubbing-safe/
- プライバシー — https://sync.so/privacy
二次情報(第三者によるモデル一覧。モデルの提供状況の照合にのみ使用し、重大な主張の根拠には使用していません):fal.ai、wavespeed.ai、replicate.com、segmind.com に掲載されている Sync のリップシンクモデル。