VOICEVOX COREをRaspberryPiにインストールしてCLIで便利に音声合成を行おう

前回のエントリではVOICEVOXをPCにインストールされたUbuntuへインストールしたという内容でしたが、今回はRaspberryPiVOICEVOXをインストールするという内容です。ただ、RaspberryPiの運用ではモニタのないヘッドレス環境での使用の可能性もあるため、この設定ではVOICEVOXを構成する要素の1つであるVOICEVOX COREを導入し、CLIでの運用を行ってみたいと思います。

ネットで検索してもうまくいかないという話はあるのですが、成功例はなかなかないようです。自分も数日悩みましたがようやく解決できました。

【参考】

uepon.hatenadiary.com

VOICEVOXの構成要素

VOICEVOXは3つのモジュール「エディター」、「エンジン」、「コア」で構成されています。VOICEVOXソフトウェアはこの3つから構成され、エディターエンジンの機能を参照し、エンジンコアの機能を参照しています。

参考github.com

エディター

GUI を表示するためのモジュールで、アプリケーションの形態をとります。リポジトリは以下となります。

github.com

エンジン

テキスト音声合成 API を公開するためのモジュールで、Web サーバーの形態をとります。リポジトリは以下となります。

github.com

コア

音声合成に必要な計算を実行するためのモジュールで、動的ライブラリの形態をとります。コマンドラインでの実行も可能)リポジトリは以下となります。

github.com

また、これらのモジュールは単独で使用できるようになっています。例えば、コアだけでコマンドラインからの使用、エンジンだけでWebAPIでの使用ができ、Web経由でリクエストを送信すれば音声合成された結果を得ることができます。このような形で導入が一部分であっても、サービスの使用ができるようになっています。

今回はコアRaspberryPiに導入し、コマンドライン上から実行を行えるようにしてみたいと思います。

続きを読む

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

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

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

ja.wikipedia.org

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

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

続きを読む

もう1本マイクがほしい!便利なUSBマイクで機材を増やさずに音声出力を実現

久々にドン・キホーテにいったらSWITCHやPS4向けのマイクが半額になっているのを見つけました。

www.a-answer.co.jp

USBドングルでPCに接続し、ケーブルレスでマイクをつける事ができます。特にペアリングなどは不要です。1500円はまあ安いかなと思って購入しました。ただし、このマイクでは機能的に2本使用することはできません。購入される場合にはご注意ください。

何に使用するか?

リアルなイベントを開催すると、ちょっとだけマイクが欲しくなることがあります。会場によってはマイクやPA卓の設備があるのですが、もう一本ほしいというときに別途オーディオインターフェースがなかったりピン形状が異なったりと単純にはいきません。実は映像より音声周りのほうがこういう状況になりがちです。

そこで先程購入したハンドマイクを使用して、イベントに使用しようと考えての購入となります。 マイクの音声はHDMI接続したプロジェクターや別途スピーカーなどを経由して音声が出力できると考えたのです。

マイクはUSB接続で音声をVHF帯の無線で接続を行っているようで、マイクのテストは問題なくレベルが出ていました。デバイスとしてはバッチリです。ゲーム機用のデバイスですが、USB接続であればこのあたりの心配しなくても良いのは嬉しい限りです。


その後、現場リハーサルで実験をしてみたのですが、マイク-スピーカーのスルー出力に関しては、どういう設定をすれば良いかわかりません。PC1台でなんとかならないと、機材が多くなるのでできれば避けたいところです。

ようやくその設定を見つけることができたので、設定方法を書き残します。

続きを読む

Raspberry PiとMiniforgeで始める、Pythonの仮想開発環境

Pythonの開発環境はPCでは基本的にDockerを使用するようにしているのですが、RaspberryPiでもPythonの開発環境構築をなんとかしたいなあと思っていました。といっても、それほど大掛かりな感じではなく仮想環境やライブラリの依存性をなんとかしてくれるだけでも問題なさそうなレベルです。そのため、デフォルトのpythonpipvenvといったもので十分に対応はできています。ただ、週末プログラマな自分に取ってはこの仮想環境の有効化あたりがなかなか覚えられず、えーいグローバルな環境に全部入れてしまえとなってしまうことが多々ありました。

ですが、最近のLinuxディストリビューションではPEP668などの影響から、仮想環境を必須にしてpipを使用するような方向性も出てきています。

そこで、前々から気になっていたAnacondaRaspberryPiでも使用するということでインストール作業をしてみました。

Anacondaとは

AnacondaとはWikipediaによると

Anacondaは、科学計算(データサイエンス、機械学習アプリケーション、大規模データ処理、予測分析など)のためのPythonおよびR言語の無料のオープンソースディストリビューションであり、パッケージ管理とデプロイメントを簡略化することを狙ったものである。パッケージのバージョンは、パッケージ管理システム conda によって管理される。

ja.wikipedia.org

www.anaconda.com

Pythonのライブラリ・パッケージシステムのディストリビューションのようです。このシステムはライブラリも包含しているため、かなり大きなシステムとなります。つまりターゲットとしているRaspberryPiのような比較的小さなシステムでは使用が難しいといえます。

Anacondaでは大きすぎるので…

では、大きすぎるAnacondaRaspberryPiなどで使用するには、Anacondaの最小構成版であるMinicondaを使用するのが良さそうです。AnacondaMinicondaではインストール時のストレージサイズが10倍程度異なります。また、私がほしいのはパッケージシステムと仮想環境のみと機能が限られているのでMinicondaで十分です。

docs.conda.io

ただ、このMinicondaをそのままインストールしてもRaspberryPi OS(64bit)では動作がうまく行かないようです。

【参考】 ebi-mayonnaise.com

そこで、今回はRaspberryPi OS(64bit)で動作実績のあるMiniforgeを使用することにしました。MiniforgeにはAnacondaMinicondaと同様にcondaコマンドによるパッケージ管理ができるようになっています。

github.com

続きを読む

Arduino UNO R4 MinimaでHIDのサンプルスケッチが動かない件

前回のエントリーではLチカ後にHID(USBのヒューマン・インターフェース・デバイス)のテストのサンプルスケッチを動作してみたのですが、軽くトラブっていました。

【参考】 uepon.hatenadiary.com

一部のソースコードコメントアウトして動作ができました。とはいえ、原因の特定をしないと気持ちが悪いので もう少し掘り下げてみます。

もう少し調べてみる

使用しているのは以下のスケッチ例になります。

続きを読む
/* -----codeの行番号----- */