初稿:2022/12/14 20:00 - 最終更新:2023/11/20

VOICEVOXDerivedSW01

COEIROINKLMROIDSHAREVOXITVOICE、などなど、最近VOICEVOX派生の音声合成ソフトウェアがどんどん増えてきていますね。自分もあまり細かく調べているわけではありませんが、それぞれが独自の音声合成方式を実装しているようです。

これらのソフトはVOICEVOX EditorやVOICEVOX Engineのソースを改造して使っているっぽい感じがしますが、「それならPeloReaperのVOICEVOX Integrationからでも利用できるのでは?」と思い、試してみると普通に使えました(とはいえ非公式な方法ですが)。

ということで今回は、VOICEVOX派生ソフトを併用する方法を紹介します。


PeloReaperのVOICEVOX Integrationってなに?

PeloReaperのVOICEVOX IntegrationはREAPER上でVOICEVOXおよびその派生ソフトを連携させるためのExtension機能(REAPERプラグイン)のことです。

PeloReaperのVOICEVOX Integrationについてまだご存じない方はこちらを参照してください。



PeloReaperでVOICEVOX派生ソフトウェアと連携する方法

接続先ポート番号について

VOICEVOX Editorを起動すると「エンジン起動中」といった表示が出ますが、内部的にはVOICEVOX Engineという音声合成サーバーが起動しています。VOICEVOX派生ソフトでも同様にサーバーが立ち上がるのですが、そのサーバーに接続するためのポート番号がそれぞれ個別の番号になっています。

ポートとはなんぞやとかよくわからなくても大丈夫です。要するにそのポート番号を切り替えることで、対応するVOICEVOX派生ソフトに接続することが出来るというイメージで問題ありません。

調べてみたところ、現状以下のようなポートが使われているようでした(2022年12月14日現在)。

ソフトウェアVersionポート番号
VOICEVOX 0.13.350021
VOICEVOX Nemo ※2 0.14.1050121
COEIROINK ※1 1.6.050031
LMROID1.350073 → 49973(LMROID Engine)
SHAREVOX0.1.750025
ITVOICE1.0.149540

PeloReaperのVOICEVOX Integrationでは、外部接続設定として接続先のポート番号を指定できるので、そこで上記のポート番号を指定するだけで対応するソフトに接続して音声合成を行うことが可能です。

※1:COEIROINKはCOEIROINK v2からVOICEVOX関連機能を使わない独自路線のソフトに変更になったので、VOICEVOXと連携できるのはv1.xまでのようです(2023/07/31現在)。

※2:(2023/11/20追記)VOICEVOX Nemoを追加しました。


接続先ポート指定方法

以下のActionを実行して、VOICEVOX Settingsウィンドウを表示します。

[PeloReaper] VOICEVOX: Show VOICEVOX ENGINE settings window...

ここではCOEIROINKに接続する場合の設定を行ってみます。

  1. [Use External Server] にチェックを入れる
  2. [IP Address] は localhost のままでOK(自分のPCのことを指している)
  3. [Port Number] にCOEIROINKのポート番号「50031」を入力
  4. [Save] ボタンで設定を保存

VVE_ExtSettings01

これで完了です。接続先がCOEIROINKに切り替わりましたので、あとはVOICEVOX Integrationの機能をそのまま利用して音声合成を行えます。簡単ですね。

TTSWithCoeiroink01
↑ COEIROINK側のSpeakerが使えるようになっている例


接続先設定を登録しておいて瞬時に切り替える方法

接続先の登録・接続先切替方法

上記の通りVOICEVOX Settingsウィンドウを表示して毎回ポート番号を入力してもいいのですが、複数のVOICEVOX派生ソフトを併用している場合はちょっと面倒ですね。そこで接続設定を登録しておいて、Actionでそれらを切り替える機能を用意しました。

まず以下のActionを実行して、外部接続設定を登録します。

[PeloReaper] VOICEVOX: Set VOICEVOX ENGINE external connection settings (Slot: 01~05)

VVE_ConnectionSettings01
↑ COEIROINK用に設定してみた例

  • Name
    接続設定の名前(任意の文字列)
  • IP Address
    localhost のままでOK
  • Port Number
    接続先ポート番号を指定

登録した接続設定に切り替える場合は、以下のActionを実行します。

[PeloReaper] VOICEVOX: Apply VOICEVOX ENGINE external connection settings (Slot: 01~05)

複数の接続設定を登録しておけば、いつでも接続先を切り替えられて便利です。ツールバーに登録しておけば、ボタンクリックで一発切替というのも可能です。


登録した接続先設定の一覧表示

登録した設定は以下のActionで一覧表示出来ます。

[PeloReaper] VOICEVOX: Show all VOICEVOX ENGINE external connection settings...
VVE_ShowAllConnections01

接続先をVOICEVOXに戻す

外部接続設定を無効にして、VOICEVOXへの接続に切り替えたい場合は以下のActionを実行します。

[PeloReaper] VOICEVOX: Disable VOICEVOX ENGINE external connection...

この他のやり方として、VOICEVOXの接続先ポートは分かっているので、VOICEVOX用の接続設定を登録しておいて、前述のActionで切り替えるという方法でもいけます。


VOICEVOXのマルチエンジン対応について

VOICEVOX 0.14.2で試してみたところ、VOICEVOXのマルチエンジン機能を使った場合も、VOICEVOXに登録したエンジン(音声合成サーバー)を複数起動した状態になっているようでした。なので、従来通り複数のエディタを立ち上げているような状態になっているので、本記事で紹介しているPeloReaperのポート切替関連の機能が有効に動作します。


VOICEVOX派生ソフトウェアのポート番号を調べる方法

今後まだまだVOICEVOX派生の音声合成ソフトウェアが出てきそうではあります。新しいソフトが出てきた場合に「ポート番号がわからない!」となりそうなので、調べる方法を一つ書いておきます。

ポート番号を調べる方法は簡単です。VOICEVOX派生ソフトをインストールした場所に run.exe という実行ファイル(音声合成サーバー起動用)がありますが、これを起動してあげれば以下の画像の例のようにポート番号が表示されます。

RunExePort01

ポート番号をメモしたら、[Ctrl+C]で run.exe を終了させておきましょう。


注意点など

上記の方法で、非公式な方法ですがVOICEVOX派生ソフトにもVOICEVOXと同様にアクセスして音声合成を行うことが出来るようです。これは今のところVOICEVOX派生ソフトを作っている開発者が、VOICEVOX EngineのAPIの互換性を保っている(おそらく手を加えていない)から成立している状況であって、今後どうなるかはよく分かりません。

今回紹介した方法もいつまで大丈夫か分かりませんし、そのうち接続用のインタフェース(API)を独自のものにしたVOICEVOX派生ソフトが出てきて「接続できない!」となるかもしれませんが、まぁそうなったらその時どうするか考えることにします。

今は便利な状況が続いているので、その間は存分に利用させていただきましょう。