scenario
AIを使って機能を足す
VOICEVOXで読み上げ機能を作る
無料の音声合成ソフト「VOICEVOX」のインストールから、AIエージェントとの対話でプラグインを作り、実際に本文を読み上げて確かめるまでを、通しでご案内します。プログラミングの知識は使いません。
このプラグインは、公式サイトのプラグイン一覧からもダウンロードできます。VOICEVOXのインストールと設定だけを知りたい場合は、VOICEVOXを小説エディタで使えるようにしたいにまとめています。
この記事の流れ
- ① VOICEVOXをインストールする
- ② VOICEVOXを起動して、声を確認する
- ③ VOICEVOXを小説エディタから呼べるようにする(1回だけの設定)
- ④ AIへの依頼書(AI開発指示書)を入手する
- ⑤ AIエージェントに、作ってほしいものを伝える
- ⑥ 完成したプラグインを小説エディタに登録する
- ⑦ 実際に読み上げてみる
- ⑧ 次回からも使えるようにする
手順
OS・対応モード・パッケージを選ぶ画面が出ます。すべて既定のまま「ダウンロード」を押します
ダウンロードしたインストーラーを起動し、「次へ」を押します
音声データなど約1.78GBの追加ファイルがダウンロードされます。回線速度によっては数分かかります
「現在のユーザーのみにインストールする」が既定で選ばれています。そのまま「次へ」を押します
インストール先フォルダを選ぶ画面です。既定ではCドライブの個人用フォルダになっています
Cドライブの空き容量が少ない場合は、「参照」からインストール先を空き容量に余裕のある別ドライブへ変更できます(VOICEVOXのインストールには約2.3GBが必要です)
「インストール」を押すとセットアップが始まります
インストールが進みます。パソコンの性能により数分かかることがあります
「完了」を押すとVOICEVOXが起動します
②初回起動時、利用規約への同意を求める画面が出ます。内容を読んで「同意して使用開始」を押します(利用規約の要点は本記事末尾で紹介しています)
続けて、収録されているキャラクターの紹介画面が出ます。「完了」を押します
ソフトの利用状況データ収集への協力を求める画面が出ます。入力したテキストや音声は収集されません。「拒否」「許可」どちらを選んでも以降の手順に影響はありません
メインの編集画面が表示され、VOICEVOXを使い始められます
③VOICEVOXは小さなサーバーとしても動いていますが、既定の設定では知らないアプリからの接続をブロックする仕組み(CORS)が働きます。ブラウザで http://127.0.0.1:50021/setting を開くと、エンジンの設定画面が出ます
「Allow Origin」欄に、許可したいアドレスを入力します。公式サイト版の小説エディタなら「https://unnamed-editor.pages.dev」、パソコンに保存したファイルを直接開いて使う場合は「null」も追加します(スペース区切りで複数指定できます)。入力すると自動で保存されます
設定を反映するにはエンジンの再起動が必要です。VOICEVOXの「エンジン」メニューから「再起動」を選びます
「エンジン起動中・・・」と出て、しばらくすると元の画面に戻ります。これで小説エディタからVOICEVOXを呼べるようになります
④小説エディタで「⚙全般設定」→「⚠機能拡張」タブを開きます。「+新規」「サンプル」「AI開発指示書」の3つのボタンがあるので、「AI開発指示書」を押します
AIエージェントへの依頼書(小説エディタ拡張プラグイン_AI開発指示書.md)のダウンロードが始まり、この後の進め方も画面に表示されます
専用の作業フォルダを新しく作り、依頼書と小説エディタ.html本体の2つだけをそこへ置きます
⑤作業フォルダでAIエージェント「CODEX」を起動します。「--yolo」はCODEXが行う確認をすべて省略するモードのため、依頼書とアプリ本体だけが入った専用フォルダのように、影響範囲が限られる場所でのみ使います
起動すると、「Ask Codex to do anything」という入力欄が出ます
「依頼書を最初に全文読み込み、その指示に従ってください」に続けて、「書いた文章を読み上げてほしい」「声は選べるようにしてほしい」「読んでいる場所が分かるようにしてほしい」といった、技術用語を使わない言葉で作ってほしいものを書き、Enterで送ります
依頼書を読み込んだCODEXから、「新しくプラグインを作成する」「不具合調査をする」「既存のプラグインを改造する」等の5つの選択肢が示されたので、「1」(新規作成)と答えました
CODEXは「読み上げボタンを押すと、選んだ文章があればそこを、なければカーソルのある段落を読みます」「声は選べて次回も覚えます」「読んでいる段落には色が付きます」というように、作る内容を平易な言葉で確認してきたので、「はい」と答えました
CODEXは実装・自己チェック・実機での動作確認までを自律的に進め、約24分でプラグイン(voicevox_read_aloud.js)を完成させました。VOICEVOXの43人分の声を確認し、実際に小説エディタへ試験登録して「読み上げパネルが動くこと」まで確かめたという報告がありました
⑥AIの報告を鵜呑みにせず、コードを一から読んで確かめた上で、あらためて「⚠機能拡張」タブの「+新規」からテンプレートを作ります
テンプレートの中身を、完成したコードにまるごと差し替えます
「保存」を押すと、一覧の名前がコード内のマニフェスト(設定部分)に書かれた名前「VOICEVOX 読み上げ」に変わります
「仮登録で再試行」を押すと、対象の名前・作者・説明文を示す有効化の確認画面が出ます。内容を確認し「有効にする」を押します
「provisional / active」と表示され、プラグインを試しに使えるようになります。画面には読み上げ用のパネルも現れます
⑦読み上げの対象になる文章を試すため、「ファイル」→「テキスト読込」でサンプル原稿を読み込みます。文字数の確認が出るので「OK」を押します
本文が執筆ウィンドウに表示されます
読み上げパネルには声(四国めたん・ノーマル)が自動で選ばれ、「VOICEVOXを使えます。」と表示されます。読みたい段落の中に実際にカーソルを置きます
「▶ 読み上げ」を押すと、対象の段落が黄色くハイライトされ、状態が「読み上げ中です。」に変わります。VOICEVOXと実際に通信し、音声データ(WAV形式、約745KB、約16秒分)が作られて再生されます
読み終わるとハイライトが消え、「読み上げが終わりました。」に変わります
⑧「仮登録」のままだと小説エディタを開き直したときに自動で無効へ戻るため、「⚠機能拡張」タブで状態を「登録」に切り替え、「登録状態で再試行」を押します。「registered / active」に変わると、次回からも使えるようになります
補足
- 読み上げの対象範囲は「選択中の文章があればそれ、なければカーソル位置の段落」としました。作品全体をまとめて読み上げる機能は、今回のプラグインには含まれていません。
- 声の一覧はVOICEVOXの全話者から選べる作りです。キャラクターごとの利用条件は、下の権利関係の説明を確認してください。
- AIエージェントが書いたコードでも、公開・配布する前には、自分の目で一度読んで確かめることをおすすめします。今回も、実在するAPIかどうかを一つひとつ照合しました。
- 完成したプラグインは、プラグイン一覧からダウンロードできます(プラグイン一覧を見る)。
VOICEVOXの権利関係について
VOICEVOXは無料で使えますが、いくつかの条件があります。公開・配布される際は、必ず最新の規約をご自身でも確認してください(本記事は法的な助言ではありません)。
- VOICEVOXソフトウェア本体: 商用・非商用とも利用可。生成した音声は各キャラクターの規約に従うこと。VOICEVOXを利用したと分かるクレジット表記が必要。無断再配布・リバースエンジニアリングは禁止(VOICEVOXソフトウェア利用規約)。
- 四国めたん・ずんだもん等9キャラクターの声: 商用・非商用とも利用可。クレジットは「VOICEVOX:キャラクター名」の形式で、動画なら説明欄など、アプリなら紹介画面など、気づける場所に表示する。政治・宗教活動、特定の個人・団体への非難や応援、情報商材、虚偽情報、風俗営業、反社会的勢力での利用は禁止。クレジットなしでの商用利用は、1キャラクターにつき別途契約(40万円+税)が必要(音源利用規約)。
- 上記9キャラクター以外の声: キャラクターごとに個別の規約があります。本記事では未確認のため、使用前にご自身で確認してください。
- VOICEVOX ENGINE(音声合成エンジン本体): LGPL v3、またはソースを公開せずに使える別ライセンスのデュアルライセンス。本記事のプラグインはエンジンをネットワーク越しに呼び出すだけで、エンジン自体は同梱・配布していません(VOICEVOX ENGINE)。
- 本記事で作成したプラグイン(voicevox_read_aloud.js): CC0 1.0(小説エディタ本体と同じ)。