文章から感情豊かな音声を生成する Bert-VITS2 を簡単に使えます。
主に litagin さんの Bert-VITS2 (ver 2.1, 2.2) の学習方法(2023-12-01)を自動化したものです。
サンプル音声はこちら。
最近のNVIDIA製ビデオカード(VRAM 8GB以上)を搭載した、管理者権限のある Windows PC で動作します。
Git や Python は不要です。
- Releases から Install-EasyBertVits2.bat(←を右クリックから保存も可) をダウンロードして、インストール先のフォルダ (スペースを含まない英数字のみの浅いパス) で実行します。
- 「WindowsによってPCが保護されました」と表示されたら、「詳細表示」から「実行」します。
- ファイルの配布元を
Ctrl + Click
で確認して、問題がなければy
とEnter
を入力してください。
- インストールが終わると
Hiyori UI
が Web ブラウザに表示されますので、ブラウザの翻訳機能で日本語化します(例はChrome で右クリックから日本語に翻訳
)。 - 右上の
モデルのロード
の下の欄をクリックして、JVNV の学習済みモデルG_JVNV-F2-10000.pth
を選択します。
Download-DemoModel.bat
で学習ステップ数の異なるモデルを追加でダウンロードできます。
複数のモデルを選択して、生成された音声を聴き比べることもできます。
- モデル選択欄の右側の
ZH
を 2 番めの日本
(選択後にJP
に変わります)にしてモデルをロードする
をします。 - ロードされたモデルが画面下に表示されますので、右上のトグルを有効にします 。
テキストコンテンツを入力してください
に文章を入力して、音声を生成する
で生成します。- 音声は下部のモデル別に生成され、再生やダウンロードができます。複数のモデルで同時に生成して、聴き比べることもできます。
- 文章の内容で感情表現が大きく変化します。以下のサンプル文章で生成を試してみてください。
- ずっとずっと好きでした! 私とお付き合いしてください。お願いします!
- マッサージ、上手いねー。 あっ そうっ! そこっ! いい! いい~!! あああぁぁ~~~~!
- ごめんなさい…本当に許してください…ごめんなさい…もうしません…
- 私のことを騙していたのね!絶対に絶対に絶対に許さない!
感情
で0-9
のスタイルを選べますが、動作がいまいち&旧仕様になるので放置が良さそうです。
- 文章の内容で感情表現が大きく変化します。以下のサンプル文章で生成を試してみてください。
- どこかから学習済みモデルを入手したのなら、
Bert-VITS2\Data
以下にフォルダを作成して、G_*.pth
のモデルとconfig.json
の設定ファイルを一緒に置けば同様に読み込めます。
Hiyori UI
を再度立ち上げたい場合は、HiyoriUi.bat
を実行します。
音声の学習には感情豊かな読み上げ音声と、その文章が必要です。
ここではサンプルとして感情豊かな JVNV の音声と文章を学習してみます。
Download-LearningSample-JVNV.bat
を実行すると、Bert-VITS2\Data
にJNNV-F2
プロジェクトを作成し、学習用のデータをダウンロードします。JNNV-F2
プロジェクトのaudios\raw
に、感情豊かな音声ファイルがありますので、学習用音声の参考にしてください。JNNV-F2
プロジェクトのilelists\esd.list
で音声の読みとファイルパスを指定していますので、テキストエディタで開いて参考にしてください。
- プロジェクトの
Learn.bat
で学習を開始します。
しばらく待つと学習結果がmodels\G_*.pth
に書き出されますので、HiyoriUi.bat
で読み込んで学習状況を確認できます。
ビデオカードの VRAM が 8GB の場合は、学習中の VRAM 不足を防ぐため、CPU
で読み込んでください。
CreateProject.bat
でBert-VITS2\Data
に学習用プロジェクトを作成します。- プロジェクトの
audios\raw
に音声を配置します。 - プロジェクトの
filelists\esd.list
に音声ファイルパスと音声の読みを入力します。 - プロジェクトの
Learn.bat
で学習します。
Download-LearningSample-JVNV.bat
を実行していれば、読み上げ収録ソフトのOREMO(ダウンロードはこちら)で収録するためのファイルが lib\JVNV-F2_Bert-VITS2-main\OREMO\
にあります。
JVNV_OREMO.txt
は OREMO で収録するための音名リストです。- JVNV のフレーズフリーセッションは、学習に必要なアドリブ部の読みテキストが無いため取り除いています。
JVNV_OREMO_rename.bat
は OREMO で収録した wav と同じフォルダに置いて実行すると、ファイル名を学習用に変更します。filelists\esd.list
はlib\JVNV-F2_Bert-VITS2-main\JVNV.txt
を置換で編集して用意します。- 数が多い場合は、
lib\JVNV-F2_Bert-VITS2-main\transcription.pdf
の各感情が均等になるように収録するとよいかもしれません。 - 収録時の感情表現を大きくしたほうが、Bert-VITS2 の特性にあっているようです。
音声ファイルを用意したあとは『学習用の音声を長尺の音声ファイルから変換する』と同じです。
- プロジェクトの
models\G_WebUi.bat
に、学習したモデルファイルG_*.pth
をドラッグ&ドロップすると、Bert-VITS2 の WebUI でモデルを試せます。 - プロジェクトの
models\G_Compress.bat
に、学習したモデルファイルG_*.pth
をドラッグ&ドロップすると、配布用の省サイズモデルに圧縮します。- 音声生成時に
ERROR:utils:enc_q … is not in the checkpoint
と表示されますが、音声の生成はできるようです。
- 音声生成時に
- Bert-VITS2 v2.2 対応
- 手元では動いてはいるが、生成の品質が高められていない。
- litaginさんのStyle Textが便利で、待っていれば入りそう で様子見。
- Bert-VITS2-UI の v2.2 対応版のリリースも待ちたい。
- そうこうしてるうちに v2.3 が来たりするかも。
このリポジトリのスクリプトやドキュメントは、MIT Licenseです。
This software is released under the MIT License, see LICENSE.txt.