どっちが人間?
いきなりですが、クイズです。
下の2つの音声、片方は本人がしゃべった声で、もう片方は AI が作った声です。どっちが本物か、わかりますか?
(403エラーが発生する場合はシークレットウィンドウで再生可能か試してください。)
音声A
音声B
正解はこちら
正解は B が本人でした。
A は、VoiceStudio というアプリで、VoxCPM2 というモデルを使って作ったクローンです。手本にしたのは、本人に別の文章を読んでもらった15秒ほどの録音だけ。クラウドの音声合成サービスは使わず、手元の Mac で作っています(モデルは前もってダウンロード済み)。
どうでしたか? じっくり聞き比べればわかるものの、パッと聞いただけだと、意外と区別がつきにくかったのではないでしょうか。
声の録音と、クローンした音声の掲載は、本人の許可をもらっています。
やったこと
VoiceStudio は、手元のパソコンだけで動く音声 AI のデスクトップアプリです。声のクローンや動画の吹き替えが、クラウドも API キーもなしで使えます。音声を作るモデルを切り替えられるのも特徴で、今回は次の2つを使いました。
| モデル | 今回の使い方 |
|---|---|
| VoxCPM2 | クイズの音声と、「恐る恐る」「焦って」の比較。話し方を言葉で指示できる |
| OmniVoice | VoiceStudio の標準モデル。普段の話し方の比較だけに使用(感情の指示には対応していない) |
今回は、社内メンバーに協力してもらって、こんなことを試しました。
- 15秒ほどの録音を手本に、本人の声をクローンする
- そのクローンに、電話の文章を読ませる
- 同じ文章を本人にも読んでもらって、聞き比べる
さらに、本人には「恐る恐る」「焦って」の2パターンでも読んでもらいました。クローンにも同じ意味の指示(「怖がりながら恐る恐る」と、英語の「panicking, rushed, speaking very fast」)を出して、感情まで真似できるのかを見ています。
読んでもらった文章はこれです。
あ、お世話になっております。山田です。
先日お願いした資料の件で、来週の打ち合わせ前に少しご相談したく、お電話しました。
また改めてご連絡します。
よろしくお願いいたします。
結論
- 普段の話し方なら、クローンはかなり本人に近い。話す速さは、OmniVoice が本人とほぼ同じで、VoxCPM2 は1割ほど速めだった
- クローンに英語で「とても速く」と強く指示すると、話す速さは本人の焦ってと同じくらいになった。ただ、声の高さはどの指示でも本人のようには上がらなかった
- 本人は、恐る恐る・焦ってで声が高くなり、焦っては話す速さが約1.5倍になった
手本にした録音
クローンの手本は、この15.3秒の録音だけです。読んでもらったのは、電話の文章とは別の、次の文章です。
こんにちは。今日は、AIの音声合成を試すために、この文章を読み上げています。普段どおりの声で、少しゆっくり話しています。
手本の録音(社内メンバーの声)
結果1:普段の話し方
クイズの2つが、まさにこの比較です(クイズの A は VoxCPM2 のクローン)。参考に OmniVoice でも作って、数字で比べるとこうなりました。
| 話す速さ(カナ/秒) | 声の高さ | 本人の録音との類似度 | |
|---|---|---|---|
| 本人 | 5.58 | 108Hz | — |
| クローン(VoxCPM2) | 6.21 | 105Hz | 0.809 |
| クローン(OmniVoice) | 5.54 | 99Hz | 0.825 |
(クローンはそれぞれ3回作った中央値。「類似度」は、本人の録音とどれだけ声が近いかを 0〜1 で表した値で、1に近いほど似ている。定義は検証方法の「評価」)
- 声の高さは本人に近い。 本人の108Hzに対して、VoxCPM2 は105Hz、OmniVoice は少し低めの99Hzでした
- 類似度は 0.809〜0.825。 参考までに、同じ本人の別の録音(手本の録音)と比べると 0.881 です。それに近いところまで来ています
- 話す速さはモデルで違う。 OmniVoice は本人とほとんど同じで、VoxCPM2 は1割ほど速めでした
結果2:「恐る恐る」と「焦って」
本人に「恐る恐る」「焦って」で読んでもらった録音と、クローン(VoxCPM2)に同じ意味の指示を出して作った音声を並べます。
本人・恐る恐る
クローン・「怖がりながら恐る恐る」と指示
本人・焦って
クローン・「panicking, rushed, speaking very fast」と指示
| 話す速さ(カナ/秒) | 声の高さ | 本人の同じ読み方との類似度 | |
|---|---|---|---|
| 本人・通常 | 5.58 | 108Hz | — |
| 本人・恐る恐る | 6.09 | 138Hz | — |
| 本人・焦って | 8.54 | 151Hz | — |
| クローン・指示なし | 6.21 | 105Hz | — |
| クローン・「怖がりながら恐る恐る」 | 7.07 | 93Hz | 0.476 |
| クローン・「panicking, rushed, speaking very fast」 | 8.40 | 93Hz | 0.529 |
(クローンの数値は、それぞれ3回作った中央値です。上で聞ける音声は、その3回のうちの1本です。どの1本を選んだかは、末尾の「掲載した音声について」に書きました)
なお、指示なしのクローンと指示ありのクローンでは、VoiceStudio の生成方式も違います(詳しくは検証方法に書きました)。下の所見のうち、指示なしのクローンと比べている部分(速さ・声の高さ・類似度)には、指示の効果だけでなく、この方式の違いも含まれます。
- 本人ははっきり変わった。 恐る恐るで声が 108Hz → 138Hz、焦ってで 151Hz まで上がりました。焦っては話す速さも約1.5倍です
- 速さは本人並みになった。 英語で「とても速く」と強く指示すると、話す速さは 8.40 で、本人の焦って(8.54)とほぼ同じになりました。日本語の「焦る感じで少し早口で」では 7.25 止まりでした
- 声の高さは上がらなかった。 どちらのクローンも 93Hz 前後で、本人とは逆に少し下がりました
- 「怖がりながら恐る恐る」なのに速くなった。 ためらいがちにゆっくり話すのを期待しましたが、逆でした
- 本人の同じ読み方との類似度は 0.50 前後。 普段の話し方(0.81)より、ぐっと下がりました
おまけ:本人でも「類似度」は下がる
ちょっとおもしろかったのがこれです。本人どうしの録音でも、読み方が変わると「類似度」はけっこう下がります。
| 比べたもの | 類似度 |
|---|---|
| 手本の録音 と 本人・通常 | 0.881 |
| 手本の録音 と 本人・焦って | 0.629 |
| 手本の録音 と 本人・恐る恐る | 0.600 |
同じ人の声でも、感情がこもるとこの数値は大きく動きます。なので、「類似度」だけで感情の再現度を判断するのは難しいです。結果2の 0.50 前後という数字も、「声が別人になった」というより「読み方が違う」ことが効いていると考えたほうがよさそうです。
まとめ
- 普段の話し方なら、15秒ほどの録音を手本にするだけで、かなり本人に近いクローンが作れる
- 指示で話す速さは本人並みにできたが、声の高さは上がらず、ゆっくり話させることもできなかった
クローンそのものは、本人にかなり似たものが作れました。一方で、言葉の指示で感情を変えるのは、まだひと工夫が必要そうです。
検証方法
環境
| 項目 | 内容 |
|---|---|
| マシン | Mac(Apple M4、メモリ 16GB) |
| VoiceStudio | v0.5.7(main 28bf2c7a)、ソースから起動 |
| 実施日 | 2026-10-27〜28 |
| モデル | VoxCPM2(指示なし・指示あり)、OmniVoice(指示なしのみ) |
| 生成 | 各条件 シード 0・1・2 の3回 |
生成
VoiceStudio のバックエンドの /generate に、どれも同じ手本の録音を渡し、エンジン(engine)・指示(instruct)・シード(seed)を変えて生成しました(ポートは検証環境のもの)。指示は「怖がりながら恐る恐る」は日本語のまま、焦っては英語の「panicking, rushed, speaking very fast」を渡しています。指示への従い方(guidance_scale)は既定の 2.0 です。
curl -X POST http://localhost:3900/generate \
-F engine=voxcpm2 \
-F seed=0 \
-F "instruct=怖がりながら恐る恐る" \
-F "text=あ、お世話になっております。山田です。先日お願いした資料の件で、来週の打ち合わせ前に少しご相談したく、お電話しました。また改めてご連絡します。よろしくお願いいたします。" \
-F ref_audio=@ref.wav \
-o out.wav
- VoxCPM2 には、手本の録音だけを渡しました。ただし VoiceStudio は、書き起こしがないと手本の録音を自動で書き起こして使います。そのため、指示なしは「録音と書き起こしを手本に、続きを話す」方式、指示ありは「録音と指示を手本にする」方式で作られています。指示なしと指示ありの差には、指示の効果だけでなく、この方式の違いも含まれます。本人の録音との類似度でも、指示なしと指示ありの値を並べて比べるときは、この違いが混ざります
- OmniVoice は感情の指示に対応していないので、指示なしだけ作りました。手本の録音と書き起こしを渡しています
評価
| 指標 | 方法 |
|---|---|
| 話す速さ | 文章をカナに直した文字数 ÷ 声の始まりから終わりまでの長さ(途中の間を含む) |
| 声の高さ | librosa の pyin で求めた、声の高さの中央値 |
| 類似度 | WavLM-large + ECAPA-TDNN で話者の特徴を取り出し、コサイン類似度を計算(SIM-o)。モデルは k2-fsa/TTS_eval_models。表の類似度は録音そのもの(前後の空白を切る前)で測った値で、空白を切って測り直しても差は 0.015 以内でした |
| 読みの確認 | faster-whisper(large-v3)で書き起こし、文章と比べた |
注意点
- 声は1人だけ、クローンは各条件3回ずつです。数値は目安としてとらえてください
- 「類似度」は、話者照合用に学習済みのモデル(WavLM-large を特徴抽出に使う ECAPA-TDNN、k2-fsa/TTS_eval_models)で出した話者埋め込みの、コサイン類似度(SIM-o)です。声質だけでなく話し方にも反応し、同一話者でも読み方が変わると 0.881 → 0.600 まで下がりました(おまけの表)。主観評価(MOS など)は行っていません
- ほかの指示も試しました(どれも、指示なしのクローンとの比較には生成方式の違いが含まれます)。「恐る恐る」「焦って」の一言だけの指示では、話す速さもほとんど変わりませんでした。日本語の「焦る感じで少し早口で」は 7.25 で、本人の焦って(8.54)には届きませんでした。英語で「very scared, trembling voice, speaking slowly and hesitantly」と書いても、ゆっくりにはならず(6.65)、声の高さも上がりませんでした
- 指示への従い方(
guidance_scale)を 3.0 に上げると、焦っては 9.68 と本人より速くなりました。ただ、手本の声との類似度が 0.82 から 0.78 に下がり、本人らしさが少し薄れました - VoxCPM2 のモデルカードには、話し方の指示の結果は毎回ばらつくので1〜3回作るとよい、とあります。今回は各条件3回ずつ作りました
- 掲載した音声を、ほかの音声合成やクローンに使わないでください
- 他人の声をクローンするときは、本人の同意をもらってください
掲載した音声について
- 聞き比べやすいように、本人の録音もクローンも、声の始まりの0.3秒前から終わりの0.4秒後までに切りそろえ、音量と形式(24kHz・モノラルの mp3)もそろえています。本人の録音は、録音を始めてから話し始めるまでに2秒ほど間があったので、そのままだとクイズのヒントになってしまうためです
- クイズと焦ってのクローンは、シード 0 の1本です。焦ってのシード 0 は、3本の中ではいちばん遅い1本です(話す速さ 7.13。表の 8.40 は3本の中央値)。「怖がりながら恐る恐る」だけは、シード 0 が冒頭の「あ、」を読んでいない可能性があったので、シード 1 を使いました。似ているかどうかで選んではいません
- クローンには、VoiceStudio が AI 生成を示す電子透かし(AudioSeal)を埋め込んでいます。出力には VoiceStudio の既定の後処理(無音のカット、音量の調整など)もかかっています
読み間違いについて
クローンの書き起こしで文章とずれたのは、ほとんどが冒頭の「あ、」でした(書き起こしの AI が文頭の短い言葉を省くこともあるため、記事に載せた6本は、冒頭だけを書き起こし直して「あ」が入っていることを確かめています)。ほかには、1本で「したく」が「したくく」になりました。
ライセンス
- VoxCPM2:モデルカードの表記は Apache 2.0 です。VoiceStudio の画面では「商用利用可」と表示されますが、申告されたライセンスに基づく表示で、VoiceStudio としては「未確認」の扱いです
- OmniVoice:コードは Apache 2.0、学習済みの重みは CC-BY-NC(非商用)です。使う前にアプリ内でライセンスへの同意が必要で、今回は検証目的で同意して使いました
