LinuxでVCClientを使ってみる

VCClientとは

VCClientとは、いわゆるAIボイスチェンジャーと言われるソフト。 RVCやMMVCなど複数のモデルに対応している。
対応プラットフォームはWindows、M1 Mac、Linux、Google Colab。

インストール方法について

Windows、M1 MacではビルドされたものがHugging Faceでダウンロードできるが、Linuxへは配布されていないので開発者向けの方法でインストールする。

インストール

まずはリポジトリをクローンしてcd

git clone https://github.com/w-okada/voice-changer.git
cd ./voice-changer

仮想環境をつくる

ドキュメントではAnacondaを使っているが、多分仮想環境を作れるなら何でもよさそうなので uv を使ってみる。 pythonのバージョンは3.10なのでオプションで指定しておく。
仮想環境を作って有効化

uv venv -p 3.10
source ./.venv/bin/activate

仮想環境から抜ける時は

deactivate

でOK

モジュールをインストールする

requirements.txtからインストール

uv pip install -r ./server/requirements.txt

自分の環境では実行したときにModuleNotFoundErrorと言われたので追加でインストールした。

uv pip install fairseq pyworld

つかう

serverディレクトリに入って

cd ./server

起動する。ちなみにこれは公式ドキュメントに書いてあったものからhttpsで起動するオプションを外したもの。

python3 MMVCServerSIO.py -p 18888 \
    --content_vec_500 pretrain/checkpoint_best_legacy_500.pt  \
    --content_vec_500_onnx pretrain/content_vec_500.onnx \
    --content_vec_500_onnx_on true \
    --hubert_base pretrain/hubert_base.pt \
    --hubert_base_jp pretrain/rinna_hubert_base_jp.pt \
    --hubert_soft pretrain/hubert/hubert-soft-0d54a1f4.pt \
    --nsf_hifigan pretrain/nsf_hifigan/model \
    --crepe_onnx_full pretrain/crepe_onnx_full.onnx \
    --crepe_onnx_tiny pretrain/crepe_onnx_tiny.onnx \
    --rmvpe pretrain/rmvpe.pt \
    --model_dir model_dir \
    --samples samples.json

shファイルで保存して実行権限を与えておくとサッと実行できて便利。

初回起動時はモデルのダウンロードが行われる。デフォルト設定ならサーバーがhttp://localhost:18888/で起動するので、適当なブラウザで開く。

チュートリアルはここ

ループバック

実際にボイスチャットなどでマイク入力として使用する場合は、出力から入力へループバックする必要がある。PipeWireならlibpipewire-module-loopbackを使うとよさそう。 実際の方法はこの記事とかを見るのがよさげかも。

終了する

CTRL-cで終了できているように見えるが、裏ではまだ生きているのでhtopやらなんやらでkillする。(もっとちゃんとした方法があるかも)
deactivateで仮想環境を抜ければおわり。

リンク

VCClient
uv

Built with Hugo
Theme Stack designed by Jimmy