11 KiB
Retrieval-based-Voice-Conversion-WebUI
VITSに基づく使いやすい音声変換(voice changer)framework更新日誌 | よくある質問 | AutoDL·5 円で AI 歌手をトレーニング | 対照実験記録 | オンラインデモ
English | 中文简体 | 日本語 | 한국어 (韓國語) | Français | Türkçe | Português
デモ動画はこちらでご覧ください。
RVC によるリアルタイム音声変換: w-okada/voice-changer
著作権侵害を心配することなく使用できるように、基底モデルは約 50 時間の高品質なオープンソースデータセットで訓練されています。
RVCv3 の基底モデルルをご期待ください。より大きなパラメータ、より大きなデータ、より良い効果を提供し、基本的に同様の推論速度を維持しながら、トレーニングに必要なデータ量はより少なくなります。
トレーニングと推論インターフェース | リアルタイム音声変換インターフェース |
go-web.bat | go-realtime-gui.bat |
実行したい操作を自由に選択できます。 | 既に端から端までの170msの遅延を実現しました。ASIO入出力デバイスを使用すれば、端から端までの90msの遅延を達成できますが、ハードウェアドライバーのサポートに非常に依存しています。 |
はじめに
本リポジトリには下記の特徴があります。
- Top1 検索を用いることで、生の特徴量を訓練用データセット特徴量に変換し、トーンリーケージを削減します。
- 比較的貧弱な GPU でも、高速かつ簡単に訓練できます。
- 少量のデータセットからでも、比較的良い結果を得ることができます。(10 分以上のノイズの少ない音声を推奨します。)
- モデルを融合することで、音声を混ぜることができます。(ckpt processing タブの、ckpt merge を使用します。)
- 使いやすい WebUI。
- UVR5 Model も含んでいるため、人の声と BGM を素早く分離できます。
- 最先端の人間の声のピッチ抽出アルゴリズム InterSpeech2023-RMVPEを使用して無声音問題を解決します。効果は最高(著しく)で、crepe_full よりも速く、リソース使用が少ないです。
- A カードと I カードの加速サポート
私たちのデモビデオをチェックしてください!
環境構築
下記のコマンドは、Python3.8 以上の環境で実行する必要があります:
Windows/Linux/MacOS などのプラットフォーム共通方法
以下の方法のいずれかを選択してください。
1. pip を通じた依存関係のインストール
- Pytorch 及びその主要な依存関係のインストール、すでにインストールされている場合はスキップ。参照:https://pytorch.org/get-started/locally/
pip install torch torchvision torchaudio
- win システム + Nvidia Ampere アーキテクチャ(RTX30xx)の場合、#21 の経験に基づいて pytorch に対応する cuda バージョンを指定
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu117
- 自分のグラフィックカードに合わせた依存関係のインストール
- N カード
pip install -r requirements.txt
- A カード/I カード
pip install -r requirements-dml.txt
- A カード ROCM(Linux)
pip install -r requirements-amd.txt
- I カード IPEX(Linux)
pip install -r requirements-ipex.txt
2. poetry を通じた依存関係のインストール
Poetry 依存関係管理ツールのインストール、すでにインストールされている場合はスキップ。参照:https://python-poetry.org/docs/#installation
curl -sSL https://install.python-poetry.org | python3 -
poetry を使って依存関係をインストール
poetry install
MacOS
run.sh
を使って依存関係をインストールできます
sh ./run.sh
その他の事前訓練されたモデルの準備
RVC は推論とトレーニングのために他のいくつかの事前訓練されたモデルが必要です。
これらのモデルは私たちのHugging Face spaceでダウンロードできます。
1. assets のダウンロード
以下は、RVC に必要なすべての事前学習モデルとその他のファイルのリストです。tools
フォルダーにこれらをダウンロードするスクリプトがあります。
-
./assets/hubert/hubert_base.pt
-
./assets/pretrained
-
./assets/uvr5_weights
v2 バージョンのモデルを使用する場合、追加で以下をダウンロードする必要があります。
- ./assets/pretrained_v2
2. ffmpeg のインストール
ffmpeg と ffprobe が既にインストールされている場合はスキップします。
Ubuntu/Debian ユーザー
sudo apt install ffmpeg
MacOS ユーザー
brew install ffmpeg
Windows ユーザー
ダウンロード後、ルートディレクトリに配置してください。
3. RMVPE 人間の声のピッチ抽出アルゴリズムに必要なファイルのダウンロード
最新の RMVPE 人間の声のピッチ抽出アルゴリズムを使用する場合、ピッチ抽出モデルのパラメータをダウンロードして RVC のルートディレクトリに配置する必要があります。
dml 環境の RMVPE をダウンロード(オプション、A カード/I カードユーザー)
4. AMD グラフィックカード Rocm(オプション、Linux のみ)
Linux システムで AMD の Rocm 技術をベースに RVC を実行したい場合、こちらで必要なドライバーを先にインストールしてください。
Arch Linux を使用している場合、pacman を使用して必要なドライバーをインストールできます。
pacman -S rocm-hip-sdk rocm-opencl-sdk
一部のモデルのグラフィックカード(例:RX6700XT)の場合、以下のような環境変数を追加で設定する必要があるかもしれません。
export ROCM_PATH=/opt/rocm
export HSA_OVERRIDE_GFX_VERSION=10.3.0
同時に、現在のユーザーがrender
およびvideo
ユーザーグループに属していることを確認してください。
sudo usermod -aG render $USERNAME
sudo usermod -aG video $USERNAME
使用開始
直接起動
以下のコマンドで WebUI を起動します '''bash python infer-web.py '''
統合パッケージの使用
RVC-beta.7z
をダウンロードして解凍
Windows ユーザー
go-web.bat
をダブルクリック
MacOS ユーザー
'''bash sh ./run.sh '''
IPEX 技術が必要な I カードユーザー向け(Linux のみ)
'''bash source /opt/intel/oneapi/setvars.sh '''
参考プロジェクト
- ContentVec
- VITS
- HIFIGAN
- Gradio
- FFmpeg
- Ultimate Vocal Remover
- audio-slicer
- Vocal pitch extraction:RMVPE