Rinne commited on
Commit
899fbd2
1 Parent(s): c486933
Files changed (15) hide show
  1. .gitignore +12 -0
  2. Packaging.bat +33 -0
  3. Setup.bat +10 -0
  4. Sing.bat +28 -0
  5. Sing.md +38 -0
  6. Sing0.png +0 -0
  7. Sing1.png +0 -0
  8. Sing2.png +0 -0
  9. Speech.bat +22 -0
  10. Speech.md +20 -0
  11. Speech.png +0 -0
  12. SpeechCPU.bat +22 -0
  13. VoiceChange.bat +22 -0
  14. VoiceChange.md +44 -0
  15. VoiceChange.png +0 -0
.gitignore ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /COEIROINK-*/
2
+ /MMVCServerSIO/
3
+ /RVC-beta/
4
+ /RinneVoiceSet/
5
+ /7zr.exe
6
+ /COEIROINK-*.zip
7
+ /MMVCServerSIO_*.zip
8
+ /Rinne.index
9
+ /Rinne.npy
10
+ /Rinne.onnx
11
+ /Rinne.pth
12
+ /RVC-beta.7z
Packaging.bat ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @echo off
2
+
3
+ pushd %~dp0
4
+
5
+ set SEVEN_ZIP=7zr.exe
6
+ if not exist %SEVEN_ZIP% ( curl -LO https://www.7-zip.org/a/7zr.exe )
7
+
8
+ set DST=RinneVoiceSet
9
+
10
+ xcopy /QY README.md %DST%\
11
+ xcopy /QY README.png %DST%\
12
+ xcopy /QY Setup.bat %DST%\
13
+ xcopy /QY Sing.md %DST%\
14
+ xcopy /QY Sing0.png %DST%\
15
+ xcopy /QY Sing1.png %DST%\
16
+ xcopy /QY Sing2.png %DST%\
17
+ xcopy /QY Speech.md %DST%\
18
+ xcopy /QY Speech.png %DST%\
19
+ xcopy /QY VoiceChange.md %DST%\
20
+ xcopy /QY VoiceChange.png %DST%\
21
+
22
+ 7zr a %DST%\DoNotExtract.7z^
23
+ 64274982-857a-11ed-a560-0242ac1c000c\^
24
+ Rinne.index^
25
+ Rinne.npy^
26
+ Rinne.onnx^
27
+ Rinne.pth^
28
+ Sing.bat^
29
+ Speech.bat^
30
+ SpeechCPU.bat^
31
+ VoiceChange.bat
32
+
33
+ popd
Setup.bat ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ @echo off
2
+
3
+ pushd %~dp0
4
+
5
+ set SEVEN_ZIP=7zr.exe
6
+ if not exist %SEVEN_ZIP% ( curl -LO https://www.7-zip.org/a/7zr.exe )
7
+
8
+ %SEVEN_ZIP% x DoNotExtract.7z
9
+
10
+ popd
Sing.bat ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @echo off
2
+
3
+ pushd %~dp0
4
+
5
+ set SEVEN_ZIP=7zr.exe
6
+
7
+ if not exist %SEVEN_ZIP% (
8
+ curl -LO https://www.7-zip.org/a/7zr.exe
9
+ )
10
+
11
+ set RVC_ZIP=RVC-beta.7z
12
+ if not exist %RVC_ZIP% (
13
+ curl -LO https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/%RVC_ZIP%
14
+ )
15
+
16
+ set RVC_DIR=RVC-beta
17
+ if not exist %RVC_DIR%\ (
18
+ %SEVEN_ZIP% x %RVC_ZIP%
19
+ )
20
+
21
+ if not exist %RVC_DIR%\weights\Rinne.pth (
22
+ copy .\Rinne.pth %RVC_DIR%\weights\
23
+ )
24
+
25
+ popd
26
+
27
+ cd %~dp0%RVC_DIR%
28
+ start go-web.bat
Sing.md ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Rinne を歌わせたい
2
+
3
+ [Retrieval-based-Voice-Conversion-WebUI](https://github.com/liujing04/Retrieval-based-Voice-Conversion-WebUI) で、すでにある曲を Rinne に歌わせます。
4
+
5
+ # つかいかた
6
+
7
+ 1. 女性のボーカル付きの曲を mp3 形式や wav 形式で用意します。
8
+ 2. `Sing.bat` をダブルクリックして、[Retrieval-based-Voice-Conversion-WebUI](https://github.com/liujing04/Retrieval-based-Voice-Conversion-WebUI) を立ち上げます。
9
+ - Windowsファイアウォールで通信を許可しなくとも利用できるようです。
10
+ 3. ブラウザに WebUI が表示されたら画面上部の、「伴奏とボーカルの分離」で、曲を伴奏とボーカルに分離します。
11
+ ![Sing0](./Sing0.png)
12
+ - 左下の「ここにファイルをドロップ -または- クリックしてアップロード」から mp3 形式や wav 形式の曲を登録できますが、**すぐ上の「フォルダパスを入力」を空欄にする必要があります**。
13
+ - モデルを「HP5-~」にして「変換」すると `RVC-beta\opt\` 以下に伴奏とボーカルの wav が出力されます。
14
+ - 曲によって相性があるようなので、「HP2-~」でも「変換」してどちらが伴奏とボーカルをキレイに分離できているかを比較します。
15
+ 4. ボーカルが分離できたら上部の「モデル推論」で、ボーカルを Rinne の声に変換します。
16
+ ![Sing1](./Sing1.png)
17
+ - 「音源推論」を「Rinne.pth」にします。
18
+ - 「処理対象音声ファイルのパス」にボーカルのwevのパスにします(フルパス可)。
19
+ - 「ピッチ抽出アルゴリズム」を「harvest」にします。
20
+ - 「特徴量検索データベースのファイルパス」を「..\Rinne.index」にします(フルパス可)。
21
+ - 「特徴量ファイルのパス」を「..\Rinne.py」にします(フルパス可)。
22
+ 5. 「変換」が成功したら、「出力音声」の「…」から変換したボーカルの wav をダウンロードします。
23
+ 6. 変換したボーカルの wav と、分離した伴奏の wav を、[Audacity](https://www.audacityteam.org/) などのツールで結合します。
24
+ - 例)[Audacity](https://www.audacityteam.org/) でボーカルと伴奏を開き、「ファイル」-「書き出し」-「MP3として書き出す」
25
+ ![](./Sing2.png)
26
+
27
+ # 品質の向上
28
+
29
+ - 曲を伴奏とボーカルに分離する手段はたくさんあり、よりキレイに分離できる手法がありそうです。
30
+ - 例)「[UVR5で高精度なBGM除去を行う方法](https://ddpn08.fanbox.cc/posts/5738173)」
31
+ - 曲や声の組み合わせによって、最適なパラメータは異なるようです。
32
+ - 「ピッチ変更」を上げ下げしてみる
33
+ - 「ピッチ抽出アルゴリズム」を「harvest」でなく「pm」にしてみる
34
+ - 「检索特征占比(特徴量の検索割合?)」を上げ下げしてみる
35
+ - [Audacity](https://www.audacityteam.org/) などのサウンドツールでも、品質を向上できます。
36
+ - ボーカルと伴奏のバランス調整やノイズの除去など
37
+
38
+ [戻る](./README.md)
Sing0.png ADDED
Sing1.png ADDED
Sing2.png ADDED
Speech.bat ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @echo off
2
+
3
+ pushd %~dp0
4
+
5
+ set COEIROINK_DIR=COEIROINK-GPU-v.1.7.2
6
+ set COEIROINK_ZIP=%COEIROINK_DIR%.zip
7
+ if not exist %COEIROINK_ZIP% (
8
+ curl -Lo %COEIROINK_ZIP% https://www.dropbox.com/s/8rycvu4a58in62h/%COEIROINK_ZIP%?dl=1
9
+ )
10
+
11
+ if not exist %COEIROINK_DIR%\ (
12
+ PowerShell -Version 5.1 -ExecutionPolicy Bypass Expand-Archive -Path %COEIROINK_ZIP% -DestinationPath .
13
+ )
14
+
15
+ set MYCOE=64274982-857a-11ed-a560-0242ac1c000c
16
+ if not exist %COEIROINK_DIR%\speaker_info\%MYCOE% (
17
+ xcopy /SQ %MYCOE%\ %COEIROINK_DIR%\speaker_info\%MYCOE%\
18
+ )
19
+
20
+ call %COEIROINK_DIR%\COEIROINK.exe
21
+
22
+ popd
Speech.md ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Rinne をしゃべらせたい
2
+
3
+ [COEIROINK](https://coeiroink.com/) でテキスト入力した日本語を Rinne にしゃべらせます。
4
+
5
+ [COEIROINK](https://coeiroink.com/) の一番の特徴は [MYCOEIROINK](https://coeiroink.com/mycoeiroink) でユーザーが自由に声を追加できることで、これを利用しています。
6
+
7
+ # つかいかた
8
+
9
+ 1. `Speech.bat` をダブルクリックします。
10
+ 2. ダウンロード後に `COEIROINK` が立ち上がり、規約やキャラクター追加を確認します。
11
+ 3. キャラクターで `Rinne` を選択し、テキストを入力して、左下の再生ボタンを押すとしゃべります。
12
+
13
+ ![Speech](./Speech.png)
14
+
15
+ # トラブルシューティング
16
+
17
+ - `Speech.bat` で COEIROINK が動作しない場合は、GPU でなく CPU を使う `SpeechCPU.bat` を使うと動作する場合があります。
18
+ - [COEIROINK](https://coeiroink.com/) の [ダウンロードページの注意書き](https://coeiroink.com/download) や [Q&A](https://coeiroink.com/q_and_a) も参照ください。
19
+
20
+ [戻る](./README.md)
Speech.png ADDED
SpeechCPU.bat ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @echo off
2
+
3
+ pushd %~dp0
4
+
5
+ set COEIROINK_DIR=COEIROINK-CPU-v.1.7.2
6
+ set COEIROINK_ZIP=%COEIROINK_DIR%.zip
7
+ if not exist %COEIROINK_ZIP% (
8
+ curl -Lo %COEIROINK_ZIP% https://www.dropbox.com/s/ofopoyvvao3agyf/%COEIROINK_ZIP%?dl=1
9
+ )
10
+
11
+ if not exist %COEIROINK_DIR%\ (
12
+ PowerShell -Version 5.1 -ExecutionPolicy Bypass Expand-Archive -Path %COEIROINK_ZIP% -DestinationPath .
13
+ )
14
+
15
+ set MYCOE=64274982-857a-11ed-a560-0242ac1c000c
16
+ if not exist %COEIROINK_DIR%\speaker_info\%MYCOE% (
17
+ xcopy /SQ %MYCOE%\ %COEIROINK_DIR%\speaker_info\%MYCOE%\
18
+ )
19
+
20
+ call %COEIROINK_DIR%\COEIROINK.exe
21
+
22
+ popd
VoiceChange.bat ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @echo off
2
+
3
+ pushd %~dp0
4
+ set ZIP_FILE=MMVCServerSIO_win_onnxgpu-cuda_v.1.5.2.3.zip
5
+ if not exist %ZIP_FILE% (
6
+ curl -LO https://huggingface.co/wok000/vcclient/resolve/main/%ZIP_FILE%
7
+ )
8
+
9
+ set MMVC_DIR=MMVCServerSIO
10
+ if not exist %MMVC_DIR% (
11
+ PowerShell -Version 5.1 -ExecutionPolicy Bypass Expand-Archive -Path %ZIP_FILE% -DestinationPath .
12
+ )
13
+
14
+ set HUBERT_BASE=hubert_base.pt
15
+ if not exist %MMVC_DIR%\%HUBERT_BASE% (
16
+ curl -Lo %MMVC_DIR%\%HUBERT_BASE% https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/hubert_base.pt
17
+ )
18
+ popd
19
+
20
+ cd %~dp0MMVCServerSIO
21
+ start http://localhost:18888/
22
+ start start_http.bat
VoiceChange.md ADDED
@@ -0,0 +1,44 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Rinne にボイスチェンジしたい
2
+
3
+ [RVC](https://github.com/liujing04/Retrieval-based-Voice-Conversion-WebUI) と [VC Client](https://github.com/w-okada/voice-changer) によるボイスチェンジャーで Rinne の声になれます。
4
+
5
+ ## つかいかた
6
+
7
+ 1. `VoiceChange.bat` をダブルクリックします。
8
+ - 赤字のエラーが表示されていたら、新しいVC Clientがリリースされている可能性があります。
9
+ - `VoiceChange.bat` の `set ZIP_FILE=` 以降のバージョン番号を[公式ページ](https://huggingface.co/wok000/vcclient/tree/main)に合わせると動作する可能性があります。
10
+ 2. インストールが完了すると、ブラウザとアプリで「Realtime Voice Changer Client」が立ち上がります。
11
+ - Windows Defenderファイアーウォールが通信をブロックしたら「アクセスを許可する」とします。
12
+ - コンソールにエラーが表示されていたら、一旦閉じて Run.bat を再起動します。
13
+ - アプリの「Voice Changer Client Demo」は最小化しておきます。
14
+ - アプリを閉じてしまうとボイスチェンジができなくなります。
15
+ - アプリからのボイスチェンジでは、なぜかうまく声を変換できません。
16
+ 3. 次の VoiceChange.png と比較しながら、**アプリでなくブラウザ側**を設定します。
17
+ - ブラウザからマイクへのアクセスを求められたら、許可します。
18
+ 4. ブラウザで「Model Setting」の「Model Uploader」で同梱のRinneモデル4種を「select」して「upload」します。
19
+ - Onnx(.onnx): Rinne.onnx
20
+ - PyTorch(.pth): Rinne.pth
21
+ - feature(.npy): Rinne.npy
22
+ - index(.index): Rinne.index
23
+ - 最後に忘れずに「upload」すると、「Server Control」の「Model Info」が更新されます。
24
+ - アップロードが途中で止まる場合は、一旦終了して Run.bat を再起動してください。
25
+ 5. 変換前に各種設定をします。
26
+ - 「Device Setting」で「Audio Input」と「Audio Output」を、お使いのサウンドデバイスに設定します。
27
+ - 変換する声が女性の場合は「Speaker Setting」の「Tuning」を「0」にします。
28
+ - 「Speaker Setting」の「predict f0」を有効にします。
29
+ 6. 一番上の「Server Control」の「start」で、マイクからの声をリアルタイムで変換できます。
30
+ ![VoiceChange](./VoiceChange.png)
31
+ 7. 変換する声に合わせて以下を調整します。
32
+ - 「Speaker Setting」の「Tuning」を男性なら「10~20」、女性なら「-5~5」など
33
+ - マイクのノイズが大きい場合は「Speaker Setting」の「Silent Threshold」を上げる
34
+ - 「Converter Setting」の「Input Chunk Num」で音声の遅延調整
35
+ - 「Quality Control」の「F0 Detector」を「harvest」と「dio/pm」で切り替え
36
+ 8. 「Device Setting」の「output record」で「start」すると録音できます。
37
+
38
+ ## Discord でつかうには
39
+
40
+ 以下を参考にしてください。
41
+
42
+ https://overwhelmingrowth.com/entry/2023/04/09/232415#VB-Audio-Virtual-Cable%E3%81%AE%E5%B0%8E%E5%85%A5
43
+
44
+ [戻る](./README.md)
VoiceChange.png ADDED