気になる音声合成ソフト「VOICEVOX」をUbuntuで試してみた!

前から気になっていたVOICEVOXUbuntuに入れてみました。WindowsMacでは動くのは当然だよね~ってところで、Linuxにも正式に対応しているというのが割とすごいなという印象です。以前から気にはなっていたのですが、なかなかさわる機会がなかったので、今回少し時間ができたのでインストールしてみようと思います。

VOICEVOXの説明に関しては以下の通り

ja.wikipedia.org

VOICEVOXは、ヒホが開発した音声合成ソフトウェアである。 VOICEVOX で生成した音声合成を使用して自分の作品を公開する場合、クレジットを表記し利用規約に同意すれば、商用、非商用問わず無料で利用できる。(Wikipediaより)

商用利用もできるため、ゆっくりボイスとともにYoutubeで使用頻度高めの音声合成アプリになっているようです。

Ubuntuにインストールしてみる

手持ちのUbuntuをインストールしたPCがあったのでインストールを行ってみます。基本はGUIを使用するためX環境が必須です。ちなみに今回使用しているUbuntuのバージョンは23.04となります。

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 23.04
Release:    23.04
Codename:   lunar

$ uname -a
Linux ubuntu2304 6.2.0-39-generic #40-Ubuntu SMP PREEMPT_DYNAMIC Tue Nov 14 14:18:00 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

$ cat /etc/debian_version 
bookworm/sid

まずはインストーラーを入手します。以下のサイトにアクセスし、【ダウンロード】ボタンをクリックします。

voicevox.hiroshiba.jp

つづくダイアログでインストーラーのプラットフォームを選択します。

今回は【OS】がLinuxで、【対応モード】はCPU、【パッケージ】はインストーラを選択します。設定後、【ダウンロード】ボタンをクリックします。

ダウンロードした インストーラーはshファイルなので、実行権限を与えておきます(与えなくても対応できますけど)。

$ chmod +x VOICEVOX-CPU.Installer.0.15.2.Linux.sh

ここで実行したい気持ちをぐっと抑えて、必要となるパッケージやライブラリをインストールした後、インストーラーを起動します。インストールは管理者権限のいらないホーム以下にインストールが行われます。インストーラーがホームディレクトリで実行される場合には~/.voicevoxディレクトリが作成され、インストールが行われます。必要となるパッケージやライブラリが不足していた場合もインストール時にエラーで指示してくれるので安心です。

$ sudo apt update
$ sudo apt install curl
$ sudo apt install p7zip
$ ./VOICEVOX-CPU.Installer.0.15.2.Linux.sh

実行して以下のような表示が行われれば、インストールは成功です。

Ubuntuのメニュー画面にもVOICEVOXのアイコンが表示されます。

いざ起動!

いよいよ初回起動となるのですが、アイコンをクリックしても全く起動しません🤣 ウインドウの一枚、ダイアログの1枚でも開いてくれればいいのですが、それすらなし。

仕方ないので、インストールパスから実行ファイルを探し、CLIで実行を行ってみます。インストールパスは~/.voicevoxにしているので、アプリは以下のように実行します。

$ ./.voicevox/VOICEVOX.AppImage

すると以下のようなエラーメッセージが表示されます。

dlopen(): error loading libfuse.so.2

AppImages require FUSE to run. 
You might still be able to extract the contents of this AppImage 
if you run it with the --appimage-extract option. 
See https://github.com/AppImage/AppImageKit/wiki/FUSE 

dlopen()を実行時にlibfuse.so.2というSharedObject(ライブラリ)がないというエラーになります。

こちらが参考になりました。

www.exceedsystem.net

appImageという形式のバイナリはfuseというライブラリなしでは実行できないようです。参考にしたページでは、そのままaptコマンドfuseをインストールしていますが、私はエラーメッセージ内のリンクに書かれている内容で対応をしようと思います。

See https://github.com/AppImage/AppImageKit/wiki/FUSE

ちなみにAppImageは以下のようなアプリケーション配布用のパッケージ形式のようです。(Wikipediaより引用)

AppImage は、Linux 上でポータブル ソフトウェアを配布するためのオープンソース形式です。これは、特定の Linux ディストリビューションから独立してバイナリ ソフトウェアをインストールできるようにすることを目的としており、この概念はよくアップストリーム パッケージ化と呼ばれます。

リンク先ではUbuntuのインストールでは以下のように表記されています。

リポジトリの追加も行ってインストールを行います。

$ sudo add-apt-repository universe
$ sudo apt install libfuse2

これでインストールが行われますので、再度メニューのアイコンを起動して実行を行います。実行も正常に行われ、利用規約の表示までやってきます。文面をよく読み画面上部の【同意して使用開始】ボタンをクリックします。

使用開始をするとキャラクター紹介画面に来ます。あとはキャラクターのサンプルボイスを聞いていき、気に入ったキャラクターのボイスで音声合成を行うことができます。

あとは、音声合成の文章を入力する画面でテキスト入力を行い、文章入力の左側にあるキャラクターアイコンをクリックすることでボイスの変更を行うことができます。1回目の読み上げでは生成に時間が少しかかりますが、2回目以降はスムーズに読み上げを行います。文章の入力以外にもアクセントやイントネーションの設定も可能ですが、比較的設定を行っていなくても自然に聞こえると思います。

キャラクターごとに規約などが異なるため、その点は注意が必要ですが、公序良俗に反しない、ボイスキャラクターを明示するなどのことがほとんどなので、普通に使う分には制限は少ないかなと感じます。

ボイスのサンプル

youtu.be

おわりに

今回はUbuntuVOICEVOXをインストールして軽く使用してみました。比較的非力なPCにインストールをしましたが生成時には少し時間はかかるもののGPU無しでも問題なく使えると感じました。ボイスキャラクターごとに規約もありますが、普通に使用する分には全く問題ないかなと思います。また商用利用可能な点も応用がききそうです。

RaspberryPiでも動作確認してみたいと思います。

/* -----codeの行番号----- */