栖王ヴァルハラ3丁目 ヘッダーイラスト
Illustration by ruder

明日になったら今日じゃない

栖王ヴァルハラ3丁目

すばら3 / Subara3

Ren'Py × COEIROINKで、自分の名前を呼んでもらう

カテゴリ: tech

タグ: Ren'Py,COEIROINK,TTS,Python,ノベルゲーム

Ren'Py × COEIROINK で動的に名前を呼んでもらう、というタイトル画像

弟のトモコレを見ていたらだいぶ面白かったので、動的に名前を呼んでもらう方法はないかなあとやってみました。

(もうとっくにどなたかがやっている気がしますが、まあ、思い付きの検証として。)

合成音声エンジンは COEIROINK を使いました。ローカルで動くので、起動さえしておけばネットが切れていてもしゃべります。ノベルゲームエンジンの Ren'Py 8 から HTTP POST で叩いて WAV を受け取り、その場で voice() に流す仕組みです。

ノベルゲームエンジンで動的に合成音声を生成するデモ
ノベルゲームエンジンで動的に合成音声を生成するデモ
YouTube

必要なもの

外部APIを叩かないので、ネットが切れていても動く。ここ重要。

流れ

プレイヤーが名前入力
   ↓
Ren'Py が台詞を組み立てる
   ↓
http://127.0.0.1:50032/v1/synthesis にPOST
   ↓
WAVが返ってくる → game/generated_voice/ に保存
   ↓
Ren'Py の voice() で再生

面白いところは、プレイヤーが自由に入力したセリフも読み上げてくれるところです。

キャラに voice_tag を持たせる

define guide = Character("案内役", color="#8fd3ff", voice_tag="guide")

voice("...", tag="guide") で鳴らしておけば、別キャラの発話が割り込んでも案内役の音声だけ独立して止めたり差し替えたりできそうです。

落ちないようにする

発表中や配信中に黒画面で固まるのが一番怖いので、COEIROINK が起動していないときは例外を捕まえて画面にエラー文字列を出して進めるようにしてあります。

$ voice_file = None
$ voice_error = None
python:
    try:
        voice_file = synthesize_dynamic_voice(dynamic_line, label=player_name)
    except Exception as exc:
        voice_error = str(exc)

留意点

読み間違い

TTSは漢字の読みを自前で推定するので、珍しい名前や当て字は読み間違えてしまいます。入力をひらがな/カタカナでも受けられるようにしておくのがよさそうですね。

レイテンシ

初回レイテンシは 1〜3秒。即レス感はありません。
上手いことやるのだったら音声の再生直前ではなく、どっかで生成しておくと良いですね。

キャッシュ

キャッシュが膨らみそうですね。

ローカル前提

プレイヤー側で COEIROINK を立ち上げる必要があるので、ブラウザ配布や即起動には向きません。
また、配布するなら話者のライセンスの確認が要りますね。話者ごとに利用条件が違うので、ゲームに音声を載せて配布するときは要チェックです。

今だとほかにオープンライセンスのTTSがありそうなので、探してみると良いと思います。

ちなみに VOICEVOX でも

VOICEVOX もローカルサーバーを立てて同じノリで叩けるので、リアルタイムで喋るずんだもんとかも普通に行けるんちゃうかと思います。エンドポイントの形が違うだけで、考え方は丸ごと流用できます。

VOICEVOX | 無料のテキスト読み上げ・歌声合成ソフトウェア
無料で使える中品質なテキスト読み上げ・歌声合成ソフトウェア。商用・非商用問わず無料で、誰でも簡単にお使いいただけます。イントネーションを詳細に調整することも可能です。
voicevox.hiroshiba.jp

余談:複数ファイルのダウンロードに Claude

複数ファイルのダウンロードは非常にしんどいのですが、Chrome の Claude 拡張機能でうまくいきました。今回使った COEIROINK の GPU 版は分割ダウンロードでファイルがいくつかに分かれていて、人力でぽちぽち落とすとげんなりするやつなのですが、まるっと巻き取ってくれます。

COEIROINK GPU版のBoothページ。1000MB×2、270MB、189KBの計4ファイルに分割ダウンロードされている様子
COEIROINK GPU版のBoothページ。複数ファイルに分かれているのだ。

ほかに役に立ったのが、確定申告のための領収書を一気にごとっと集めてきてもらうところ。便利でした。(一括で確定申告とかはさせてませんが)。

それから DLsite でデカめのゲームをダウンロードするとき分割ダウンロードになることがあると思いますが、あれもやってくれるので便利です。

ルンバの如く掃除して環境を整備してからあら~上手だね~みたいなことはよくやってますがなんかそれはずるい気がするので、人間がやらせたくないことをやらせるのに向いています。

記事

プライバシーポリシー Last Update: 2025/10/14

個人情報の取り扱いについて

当サイトでは、お問い合わせフォームからご連絡いただいた際に、お名前やメールアドレスなどの個人情報をお預かりすることがあります。

これらの情報は、お問い合わせへの返信や必要なご連絡のためにのみ使用し、それ以外の目的で使用することはありません。また、法令に基づく場合を除き、第三者に開示・提供することはありません。

Cookieの使用について

当サイトでは、サイトの利便性向上やアクセス解析のためにCookieを使用しています。

Cookieはブラウザの設定により無効にすることができますが、一部の機能が正しく動作しなくなる場合があります。

アクセス解析ツールについて

当サイトでは、Googleによるアクセス解析ツール「Google Analytics」を使用しています。

Google Analyticsはトラフィックデータの収集のためにCookieを使用しており、このトラフィックデータは匿名で収集されています。個人を特定するものではありません。

この機能はCookieを無効にすることで収集を拒否することができますので、お使いのブラウザの設定をご確認ください。

詳細については、Google アナリティクス利用規約をご参照ください。

広告の配信について

当サイトでは、第三者配信の広告サービス「Google AdSense」を使用しています。

広告配信事業者は、ユーザーの興味に応じた広告を表示するためにCookieを使用することがあります。

Google AdSenseの詳細については、Google 広告に関するポリシーをご参照ください。

アフィリエイトについて

当サイトは、Amazon.co.jpを宣伝しリンクすることによってサイトが紹介料を獲得できる手段を提供することを目的に設定されたアフィリエイトプログラムである、Amazonアソシエイト・プログラムの参加者です。

その他、各種アフィリエイトプログラムに参加している場合があります。

著作権について

当サイトに掲載されている文章、画像、その他のコンテンツの著作権は、当サイト管理者または正当な権利を有する第三者に帰属します。

無断転載・複製はご遠慮ください。引用の際は、出典を明記のうえ、リンクを貼っていただけますようお願いいたします。

免責事項

当サイトの情報は、可能な限り正確な情報を掲載するよう努めていますが、その正確性や安全性を保証するものではありません。

当サイトに掲載された内容によって生じた損害等について、一切の責任を負いかねますのでご了承ください。

また、当サイトからリンクやバナーなどによって他のサイトに移動された場合、移動先サイトで提供される情報、サービス等について一切の責任を負いません。

プライバシーポリシーの変更について

当サイトは、個人情報に関して適用される日本の法令を遵守するとともに、本ポリシーの内容を適宜見直し、その改善に努めます。

修正された最新のプライバシーポリシーは常に本ページにて開示されます。

01

ここについて

栖王ヴァルハラ3丁目は、個人(頻子)が運営しているサイトです。小説、ゲーム、アプリケーションなどがあります。サイトのコンテンツは、予告なく改稿したり、削除されることがあります。

(2022/5/29)二次創作置き場を増設しました。


もし何かご用があれば、お問い合わせフォームからお声をおかけください(記名不要)。

応援・ご感想・誤字脱字報告などお気軽にどうぞ

お問い合わせ
02

自己紹介

頻子(ひんこ)です。
ゲームと文章を書くことが好きです。

info★subara3.com (★→@)

活動場所

投げ銭

03

このサイトへのリンク

2017/09/06 有料サーバーに移行 2025/10/10 独自ドメイン化
04

既刊情報

すばら3ロゴ

すばら3の既刊はBOOTH、DLsite、kindle、あるいは各種イベントで入手することができます。

一部の本は、国会図書館に預けてきました
寄稿したものは、それぞれの頒布先をご確認ください。

サークルロゴは高瀬川さんがつくってくださいました。ありがとう!

05

寄稿・お手伝い

06

お仕事

気まぐれに軽めの単発案件を受け付けています。
簡単なスクリプトなど、ご入用のものがありましたらぜひどうぞ!

info★subara3.com (★→@)

07

プライバシーポリシー

最終更新: 2025/10/14

個人情報の取り扱い

お問い合わせフォームからご連絡いただいたメッセージは、必要なご連絡のためにのみ使用します。許可なく第三者に開示・提供することはありません。

Cookieの使用

サイトの利便性向上やアクセス解析のためにCookieを使用しています。ブラウザ設定で無効にできますが、一部機能が正しく動作しなくなる場合があります。

アクセス解析

Google Analyticsを使用しています。トラフィックデータは匿名で収集され、個人を特定するものではありません。

広告配信

第三者配信の広告サービス「Google AdSense」を使用しています。ユーザーの興味に応じた広告表示のためにCookieを使用することがあります。

アフィリエイト

Amazonアソシエイト・プログラム等に参加しています。

著作権

掲載コンテンツの著作権は当サイト管理者または正当な権利者に帰属します。無断転載・複製はご遠慮ください。

免責事項

情報の正確性・安全性を保証するものではありません。当サイトの内容によって生じた損害等について責任を負いかねます。