D-IDは何をするサービスか

D-IDは、顔写真や短い動画をもとに、話すアバターの動画を作るサービスだ。 台本のテキストか音声を渡すと、写真の人物が口を動かして話す動画が返ってくる。最近はこれをLLMとつなぎ、ユーザーとリアルタイムに会話するアバター(Visual AI Agents)に力を入れている。

筆者は前回、InfiniteTalkをMacで動かしてリップシンク動画を作った。動画1秒に約15分かかり、映像が真っ黒になる問題にも悩まされた。 同じことを有料サービスに任せるとどうなるのか。その比較対象として、この分野の老舗であるD-IDの製品構成とAPIを調べた。本記事はそのまとめだ。

顔認識対策から「話す写真」へ

社名のD-IDは「De-Identification(匿名化)」に由来する。2017年にテルアビブでGil Perry、Sella Blondheim、Eliran Kutaの3人が創業した。 当初の事業は、写真から顔の生体情報を取り除き、顔認識システムに本人だと分からないようにするプライバシー保護技術だった。 顔を細かく理解して加工する技術が、そのまま顔を動かす技術に転用され、合成メディアの会社へ方向を変えた。

テルアビブで創業

顔画像を匿名化し、顔認識から守る技術でスタート

MyHeritage「Deep Nostalgia」

家系図サービスMyHeritageが、D-IDの技術で古い家族写真を動かす機能を公開し、世界的に話題になる

Creative Reality Studio

写真とテキストから話す動画を作るWebアプリを一般向けに提供

Microsoft Azureとの提携、simpleshow買収

Azure経由でアバター機能を提供。9月には解説動画のsimpleshow(ベルリン)を買収

V4 Expressive Visual Agents

拡散モデルベースの新世代アバター。会話の応答0.5秒未満、最大4Kをうたう

一般に名前が広まったのは、2021年のMyHeritage「Deep Nostalgia」だ。亡くなった家族の古い写真がまばたきし、首をかしげる。 その映像がSNSで拡散し、短期間で膨大な数のアニメーションが作られた。「写真を動かす」技術を消費者向けに見せた最初期の成功例と言える。

製品の構成

公式サイトには多くの製品名が並ぶが、使う側から見ると次の3つに整理できる。

StudioAPIVisual AI Agents
用途ブラウザで動画を作る自社アプリに動画生成を組み込むLLMとつないで、ユーザーとリアルタイムに会話する
主な利用者マーケター、研修担当開発者開発者、カスタマーサポート部門
出力MP4ファイルMP4ファイル(URL)WebRTCの映像ストリーム
待ち時間数十秒〜数分数十秒〜数分(非同期)会話の1往復が1秒未満
関連機能PowerPoint・Canva・Google Slides連携Video Translate(吹き替え+口の動きの修正)ナレッジ登録、LLMの選択、Agents SDK

ほかにも、動画を別の言語に吹き替えて口の動きまで合わせ直す Video Translate、リアルタイムアバターを自社環境で動かす Self-Hosting がある。 対応言語は120以上とされている。

アバターの世代

APIドキュメントを見ると、アバターには世代があり、元にする素材と品質が違う。新しく作るならV3以降が中心になる。

世代素材特徴
V2(Talks)顔写真1枚最も手軽。写真の人物を話させる。Deep Nostalgiaの系譜
V3 Instant短い動画追加学習なしで、動画の人物をアバターにする
V3 Pro撮影した動画学習を経て、より自然な動きのアバターを作る
V4 Expressive俳優の演技で学習したモデル拡散モデルベース。表情と感情を指定でき、最大4K

2026年3月に発表されたV4は、方式そのものが変わった。 V2までは写真を変形させる方式で、前回の記事でいうSadTalkerに近い。V4は拡散モデルで映像を描き直す方式で、InfiniteTalkと同じ側に移った。 発表では、実際の俳優の演技を撮影したデータで学習し、「共感」「興奮」などの感情を選ぶと表情と話し方が変わる、と説明している。 オプションのカメラ入力を使うと、相手の表情などの非言語的な反応を読み取り、LLMの返答と表情に反映する機能もある。

APIを使う:動画生成とリアルタイム会話

D-IDのAPIは、用途によって2系統に分かれる。決まった台本から動画ファイルを作る非同期の系統と、会話のたびに映像を流すリアルタイムの系統だ。

動画を作る(Talks)

最も単純なのは、顔写真と台本を渡して動画を作るTalks APIだ。リクエストを送るとすぐにIDが返り、生成は裏で進む。 完成したら GET で結果を取りに行くか、Webhookで通知を受ける。

# 顔写真とテキストから話す動画を作る(APIキーはStudioのアカウント設定で発行)
curl -X POST https://api.d-id.com/talks \
  -H "Authorization: Basic $D_ID_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "source_url": "https://example.com/face.jpg",
    "script": {
      "type": "text",
      "input": "こんにちは。今日は新しい機能を紹介します。",
      "provider": { "type": "microsoft", "voice_id": "ja-JP-NanamiNeural" }
    },
    "config": { "result_format": "mp4" },
    "webhook": "https://example.com/hooks/d-id"
  }'
# => {"id": "tlk_xxxx", "status": "created", ...}

# 状態を確認する。status が done になると result_url に動画のURLが入る
curl https://api.d-id.com/talks/tlk_xxxx \
  -H "Authorization: Basic $D_ID_API_KEY"

script.type を audio にすれば、ElevenLabsなどで作った音声ファイルのURLを渡せる。 テキストを渡す場合は、Microsoft・Amazon・Google・ElevenLabsの音声合成から選ぶ。 状態は created → started → done と進み、失敗すると error、規約に反する素材は rejected になる。

会話する(Agents Streams)

リアルタイム会話では、ブラウザとD-IDのサーバーの間にWebRTCの接続を張り、アバターの映像と音声を流し続ける。 接続を作るにはSDP(どんな映像・音声をやり取りするかの取り決め)とICE(通信経路の候補)を交換する必要があり、エンドポイントもその手順に沿って並んでいる。

sequenceDiagram
    participant B as ブラウザ
    participant D as D-ID API
    participant L as LLM
    B->>D: POST /agents/ID/streams<br/>(ストリーム作成、SDPオファー受領)
    B->>D: POST .../sdp(SDPアンサー送信)
    B->>D: POST .../ice(経路候補を送信)
    D-->>B: WebRTCで映像と音声を配信開始
    B->>D: POST /agents/ID/chat/CHAT_ID<br/>(ユーザーの発言)
    D->>L: 発言とナレッジを渡す
    L-->>D: 返答テキスト
    D-->>B: 返答を話すアバター映像
    B->>D: DELETE .../streams/STREAM_ID(終了)
Agents Streamsの流れ。接続を張った後は、発言を送るたびにアバターが返答を話す

以前はTalksやClipsにもストリーミング版があったが、現在はレガシー扱いで、Agents Streamsへの移行が推奨されている。 旧版はテキストを話させるだけで、LLMの返答をつなぐ仕組みは持たない。 SDPとICEのやり取りを自分で書くのが面倒なら、Agents SDKの connect() が接続処理をまとめて引き受け、speak() や chat() を呼ぶだけで済む。

料金の数え方と注意点

料金は「月に何分の動画を作れるか」で決まる。Studioの個人向けプランは月額5.90ドルから始まり、Lite・Pro・Advancedと上がる。 ただし金額や含まれる分数は改定が多く、比較サイトごとに数字が食い違っていた。契約前には公式の料金ページで確認してほしい。 金額よりも、公式FAQにある次のルールのほうが実際のコストを左右する。

  • 15秒単位で切り上げ:1分10秒の動画は1分15秒として数える。5秒の動画を大量に作ると、1本ごとに15秒分を消費する
  • 翌月に繰り越さない:使い切らなかった分数は毎月リセットされる
  • APIもStudioと同じ残高:API経由の生成も、Webで作った動画と同じ分数から差し引かれる
  • 透かし:TrialとLiteの動画にはD-IDの透かしが入る。Trialは画面全体に入るので、業務用の試作には向かない
  • 長さと素材の上限:動画は1本5分まで。アップロードする顔写真は10MBまでのJPEGかPNG
  • 解像度:標準のアバターは最大1280×1280。HQ表示のあるプレミアムアバターは1080pで、Liteプランでは使えない

手元で動かすOSSとどう使い分けるか

前回のInfiniteTalk(M3 Pro・ローカル実行)と並べると、違いは次のようになる。

D-IDInfiniteTalk(Macでローカル実行)
30秒の動画数十秒〜数分で完成約8時間
費用月額料金(分数で上限あり)電気代のみ
リアルタイム会話できる(Agents)できない
素材の送り先D-IDのサーバー手元のMacから出ない
失敗時の対応サービス側が品質を担保真っ黒な動画の検出など、自前で仕組みを作る
見た目の自由度アバターの種類と設定の範囲内モデルやパラメータを自由に変えられる

判断の分かれ目は、素材を外部に送ってよいかどうかだ。 社員の顔や声を使う研修動画、顧客対応のアバターなど、本番で継続的に使うならD-IDのほうが現実的だ。生成の待ち時間も、失敗の検出も、サービス側に任せられる。 一方で、外部に出せない素材を扱う場合や、モデルの挙動そのものを試したい場合は、OSSを手元で動かす意味が残る。

まとめ

  • D-IDは顔の匿名化技術から出発し、写真を話させる技術、さらにLLMとつないで会話するアバターへと事業を広げてきた
  • APIは、非同期で動画ファイルを作るTalksと、WebRTCで映像を流しながら会話するAgents Streamsの2系統。旧来のストリーミングAPIはレガシー扱い
  • V4で拡散モデルベースに移り、表情と感情を指定できるようになった。手元では1秒に15分かかる種類の処理を、会話に間に合う速さで提供している
  • 料金は15秒単位の切り上げと繰り越しなしを前提に見積もる。短い動画を大量に作る用途ほど割高になる

理解度チェック

問題 0 / 50%
Q1

D-IDという社名の由来と、創業時の事業として正しいものはどれか。

キーボード: 1〜4 で選択、Enter で回答