TL;DR
COEIROINKのエディターは、Windows/Mac用しか提供されていないので、Linuxで直接動かすことができません。ですが、音声を合成するプログラム本体(エンジン)ならLinuxで動きます。そこで、今回はCOEIROINKエンジンをVOICEVOXエディター経由でいじってみます。
Requirements
- Anaconda3
- git
- VOICEVOXエディター
動作確認済環境
- Ubuntu 22.10
- Conda 22.9.0
- Linux 6.2.0-rc1
- CUDA 12.0
- NVIDIA Driver 525.78.01
手順
1. COEIROINKエンジンをclone
COEIROINKのエンジンをcloneします。
git clone https://github.com/shirowanisan/voicevox_engine coeiroink_engine
# git clone git@github.com:shirowanisan/voicevox_engine coeiroink_engine
# gh repo clone shirowanisan/voicevox_engine coeiroink_engine
2. condaでエンジンのビルド用の環境を作ってそれに入る
conda create -n coeiroink python==3.8
conda activate coeiroink
3. エンジンのブランチを切り替える
次のコマンドを実行して、エンジンのブランチを切り替えます。
pushd coeiroink_engine
git checkout c-1.7.1+v-0.14.5+gpu # ブランチ名に「+gpu」とありますが、別にGPUがなくても動くはずです。気になるようであれば+gpuを削除してもらっても構いません。
popd
4. エンジンのビルドなどに必要なRequirementsをインストール
python3 -m pip install -r coeiroink_engine/requirements.txt sklearn espnet typeguard==3.0.0b2 git+https://github.com/shirowanisan/coeiroink_core.git pyinstaller
5. COEIROINKエンジンをビルド
エンジンをビルドして、必要なファイルをコピーします。
pyi-makespec run.py
cat run.spec | sed -e "3i import sys ; sys.setrecursionlimit(sys.getrecursionlimit() * 5)" > run.spec.new
cat run.spec.new>run.spec
rm run.spec.new
pyinstaller run.spec
mkdir -p dist/run/espnet
cp ~/anaconda3/envs/coeiroink/lib/python3.8/site-packages/espnet/version.txt dist/run/espnet/
mkdir -p dist/run/librosa/util/example_data
cp ~/anaconda3/envs/coeiroink/lib/python3.8/site-packages/librosa/util/example_data/{registry.txt,index.json} dist/run/librosa/util/example_data/
mkdir -p dist/run/jamo/data
cp ~/anaconda3/envs/coeiroink/lib/python3.8/site-packages/jamo/data/* dist/run/jamo/data/
cp engine_manifest.json default.csv default_setting.yml dist/run/
cp -r engine_manifest_assets dist/run/
cp -r speaker_info dist/run/ >/dev/null 2>&1 || mkdir dist/run/speaker_info
popd
6. キャラクターのデータを入れる
手順5でエンジン自体は完成していますが、まだキャラクターが一人もいないので、そのまま起動するとエラーを吐いてしまいます。
残念ながら、筆者はCOEIROINK本体に同梱されている3人のデータの配布元がわからない(恐らく配布されてないのかも)ので、それ以外のキャラクター(ex. つくよみちゃん, MYCOEIROINKのキャラクター)を使います。
その3人以外は
ここから入手できます。真ん中らへんに「音声ライブラリ ダウンロード」ってやつがあるので、そこから使いたいキャラクターをダウンロードしてください。
キャラクターのインストール方法は基本的にはMYCOEIROINKと一緒です。
speaker_infoディレクトリ(フォルダー)は、
[インストール作業をしたディレクトリ]/coeiroink_engine/dist/run/speaker_info/
にあるので、そこに入れてやってください。
注)
公式音声ライブラリとMYCOEIROINK以外の合成音声をCOEIROINKエンジンで動かすことはCOEIROINKソフトウェア利用規約で禁止されています。絶対にやらないようにしてください。
7. エンジンの再配置(任意)
エンジンは、ビルド直後では[インストール作業をしたディレクトリ]/coeiroink_engine/dist/run/
にあります。自由に移動させてやってください。(権限に気をつけて)
8. VOICEVOXエディターに登録・起動
VOICEVOXエディターを開いてから、マルチエンジンを有効化し、メニューバー/エンジン/エンジンの管理/追加/既存エンジン
をクリックしていき、エンジンの位置を指定して追加してください。
追加が終わると、COEIROINKのキャラクターが使えるようになると思います。
9. condaの環境を削除(任意)
ビルドが終わったので、不要な環境を削除しておきます。
conda env remove -n coeiroink
参考