マガジン

AI音声で短いオーディオドラマを作る:登場人物の声の差と感情の付け方

AIを使いこなす

Claudeで執筆し、GPTで自動校閲・修正しています。

ヘッドホンの横で、二人の役柄を表す無地のカードを手で並べる様子
記事の内容をもとに制作したAI生成イメージです。実際の製品画面や検証結果の写真ではありません。

結論から言うと、AI音声で登場人物を演じ分けるときは、「キャラごとに別の声を選ぶ」「台詞の書き方そのものを変える」「感情は台詞の直前に短い指示で足す」の3段階で考えると安定します。声の違いだけに頼ると、聞き分けられない場面が必ず出ます。台詞の長さ、語尾、口癖で先に差をつけておけば、声が似ていても誰が話しているかは伝わります。 この記事では、そのために使う「登場人物シート」と「場面ごとの台本書式」を、そのままコピーできる形で示します。感情の指示の仕方は、ElevenLabsの Eleven v3 / v4 で使える角括弧の「オーディオタグ」を例にします。ただし、シートと台本の考え方は他の音声生成ツールでも使えます。 本文中の登場人物・台詞・タグの組み合わせは「説明用の例」です。実際に生成して確かめた結果ではありません。

この記事の目次
  1. 差は「声」より先に「台詞」で作る
  2. 登場人物シートを作る
  3. 場面ごとの台本書式
  4. 感情を足す手順
  5. 感情の判断表
  6. 仕上げの聴き分けチェック
  7. 公開前に人が確認すること

差は「声」より先に「台詞」で作る

ElevenLabsのオーディオタグ解説によると、選んだ声がタグの指示に合わないと、うまく演技されないことがあります。例として、もともと穏やかな声に何度も[shouts]を指示するケースが挙げられています。つまり、感情の振れ幅は声に依存します。

ここから、作り方の順番が決まります。

  1. 登場人物ごとに、声質の違うボイスを選ぶ(高い・低い、軽い・重いなど)
  2. 台詞の文体で差をつける(一文の長さ、語尾、口癖)
  3. 感情の指示は、その声が出せる範囲で足す

3が最後なのがポイントです。「穏やかな老人の声に怒鳴らせる」ような設計は、声の選び直しか、台詞側での工夫(怒鳴らず、声を落として言い切る)が必要になります。

登場人物シートを作る

次の表を1人1枚で埋めます。AIに台詞案を書かせるときも、この表をそのまま渡せます。

  • 役割、書く内容:物語での立場を一行で
  • 声の希望、書く内容:年代の印象、高低、明るさ(ボイス選びのメモ)
  • 口調、書く内容:語尾、敬語の度合い、口癖
  • 一文の長さ、書く内容:短い(〜15字)/普通/長い
  • 話速、書く内容:速い/普通/遅い。ツールに速度設定があればそれを使い、なければ文の長さと句読点で表現する
  • 感情語、書く内容:平常時・高ぶったとき・隠すときの3種類
  • 禁止事項、書く内容:この人物が絶対に言わない言い方

記入例(説明用の例)

ミナト(配達員・20代)

  • 役割:閉店間際の古書店に荷物を届ける、せっかちな青年
  • 声の希望:やや高め、明るく軽い
  • 口調:「〜っす」「えっと」を使う。敬語は崩れがち
  • 一文の長さ:短い(〜15字)。言い直しが多い
  • 話速:速い
  • 感情語:平常=気さく/高ぶり=焦り、早口/隠す=そっけない
  • 禁止事項:長い説明台詞、丁寧すぎる敬語

宇野さん(古書店の店主・70代)

  • 役割:荷物の中身を知っている様子の店主
  • 声の希望:低めで落ち着いた声
  • 口調:「〜ですよ」「〜でしょう」。言い切らず含みを残す
  • 一文の長さ:長め。間を置いて話す
  • 話速:遅い
  • 感情語:平常=穏やか/高ぶり=声を落とす/隠す=話題をそらす
  • 禁止事項:「っす」、感嘆符の連続

2人を並べると、同じ「届けに来た」という内容でも次のように書き分けられます。

  • ミナト:「あ、えっと、お届けっす。印、お願いします」
  • 宇野さん:「ああ、ようやく来ましたか。ずいぶん待ちましたよ」

声が似ていても、この文体差だけで話者は区別できます。

場面ごとの台本書式

音声生成に貼る台詞と、人間用のメモを混ぜないことが重要です。メモを貼り付けると、そのまま読み上げられる事故が起きます。次の書式では、// で始まる行を人間用とし、生成前に削除します。

# SCENE 02 古書店・夜
// 雨音あり。閉店直前。ミナトは走ってきた直後。

MINATO: [out of breath, urgent] すみません、まだ開いてますか。
UNO: [calm] ええ、もう閉めるところでしたよ。
MINATO: [relieved, laughs] よかった。えっと、お届けっす。
// ここで0.5秒ほど間を空ける(編集で調整)
UNO: [quietly, hinting] …そうですか。ようやく、ですね。

書式のルールは4つです。

  • 1行=1人の1発話。話者IDを行頭に置く
  • タグは台詞の直前に置く
  • 感情の変化点だけ新しいタグを書く
  • 間や効果音は // のメモにして、編集ソフト側で作る

この書式にしておけば、1行ずつ生成して後から並べる方法にも、まとめて生成する方法にも対応できます。Eleven v3の発表ブログには、話者ごとの発話を配列で渡すText to Dialogue APIが紹介されています。ここでの話者ID付きの1行1発話は、その入力にも移しやすい形です。

感情を足す手順

1. モデルを確認する

オーディオタグ一覧の解説では、タグが使えるのはEleven v4、v4 Turbo、v3とされています。ほかのモデルを選んでいたり、角括弧でなく丸括弧や波括弧で書いたりすると、タグが文字として読まれることがあると説明されています。タグが読み上げられたら、まずモデルと括弧を確認してください。

2. タグは台詞の直前に置く

同解説では、タグは影響させたい言葉の前に置き、感情は行の中で持続するので、変えたいときだけ次のタグを書く、とあります。台詞ごとに毎回タグを付けるより、変化点だけに絞ったほうが整理しやすくなります。

3. 組み合わせは最大2語から始める

[whispering, fearful] のように、カンマで区切って1つの括弧に入れると複合的な指示になります。最初は感情1語+話し方1語(例:[worried, softly])で十分です。語を増やすのは、聞いて足りないと感じてからにします。

4. 3行だけ試し聴きする

全編を作る前に、各人物の「平常」「高ぶり」「隠す」を1行ずつ生成します。ここで声とシートが合わなければ、台詞ではなくボイスを替えます。

なお、日本語台詞に英語のタグを付けた場合の効き方は、この記事では確認できていません。試し聴きの3行で、自分の使うモデルと声で確かめてください。

感情の判断表

感情ごとに、まず台詞で何をするか、次にタグで何を足すかを決めます。

  • 焦り、台詞側でやること:一文を短くする。言い直しを入れる、タグの例(説明用):[urgent] [out of breath]、効かないとき:速い声質のボイスに替える
  • 穏やか、台詞側でやること:文を長め、語尾を丸く、タグの例(説明用):[calm] [softly]、効かないとき:句読点で間を増やす
  • 怒り、台詞側でやること:語を削る。敬語を崩す、タグの例(説明用):[angry] [shouts]、効かないとき:声域の広いボイスに替える
  • 隠す・動揺、台詞側でやること:話題をそらす。言いよどみ、タグの例(説明用):[hesitant] [quietly]、効かないとき:「…」を入れて文を途切れさせる
  • 笑い・安堵、台詞側でやること:笑いの後に短い台詞、タグの例(説明用):[laughs] [relieved]、効かないとき:笑いの行を別に生成する

タグに決まった語彙の制限はなく、自然な言葉で書けるとされています(前述のオーディオタグ一覧の解説)。ただし、上の表の語がどの声・どの言語で期待どおりに効くかは、生成して確かめるまで分かりません。

仕上げの聴き分けチェック

最後に、画面を見ずに音だけで聞き直します。

  • 話者名を伏せても、どちらが話しているか分かるか
  • 同じ感情の台詞が、人物ごとに違う表現になっているか
  • タグや括弧が読み上げられていないか
  • 数字や記号を含む台詞は、読み方が不自然になっていないか(ElevenLabsの公式ガイドでは、数字・記号・略語を読み上げる言葉に展開する方法が紹介されています)

2つ目で似て聞こえるなら、台詞の長さと語尾をもう一段離します。声の再選択よりも、台本の修正のほうが早く直ることが多いです。

公開前に人が確認すること

使うボイスの商用利用や公開の可否は、利用するサービスの現行の規約とプランで確認してください。実在の人物や特定の俳優を思わせる声にしないことも、作品側で決めておく項目です。AIに任せられるのは台詞案の下書きと表記の整理までです。誰の声に聞こえるか、場面の感情が合っているかは、人が聴いて判断します。

出典・参考資料