Coder Social home page Coder Social logo

easybertvits2's Introduction

EasyBertVits2

I haven't tested it in an English environment, but if you have an English model it should work the same way. Maybe.
我没有在中文环境中测试过,但是如果你准备一个中文模型,它应该以同样的方式工作。也许吧。

文章から感情豊かな音声を生成する Bert-VITS2 を簡単に使えます。
主に litagin さんの Bert-VITS2 (ver 2.1, 2.2) の学習方法(2023-12-01)を自動化したものです。

サンプル音声はこちら

2023/12/17

  • litagin さんの bert_vits2_okiba から 27種のモデル (18.1GB) をダウンロードする Download-litagin-bert_vits2_okiba.bat を追加しました。
    • Install-EasyBertVits2.bat を再ダウンロードして、インストール先の Install-EasyBertVits2.bat に上書きして再実行で更新できます。

インストールと音声の生成

最近のNVIDIA製ビデオカード(VRAM 8GB以上)を搭載した、管理者権限のある Windows PC で動作します。 Git は不要で、Python がなければ自動でインストールします。 アバストなどのウィルスチェックソフトが有効だと、インストールに失敗する場合があるようです。

  1. Releases から Install-EasyBertVits2.bat(←を右クリックから保存も可) をダウンロードして、インストール先のフォルダ (スペースを含まない英数字のみの浅いパス) で実行します。
    • 「WindowsによってPCが保護されました」と表示されたら、「詳細表示」から「実行」します。
    • ファイルの配布元を Ctrl + Click で確認して、問題がなければ yEnter を入力してください。
  2. インストールが終わると Hiyori UI が Web ブラウザに表示されますので、ブラウザの翻訳機能で日本語化します(例はChrome で右クリックから 日本語に翻訳)。
    HiyoriUi
  3. 右上の モデルのロード の下の欄をクリックして、JVNV の学習済みモデル G_JVNV-F2-10000.pth を選択します。
    HiyoriUiModel
    • Download-DemoModel.bat で学習ステップ数の異なるモデルを追加でダウンロードできます。
      複数のモデルを選択して、生成された音声を聴き比べることもできます。
  4. モデル選択欄の右側の ZH2 番めの 日本 (選択後に JP に変わります)にして モデルをロードする をします。
    HiyoriUiModelJa
  5. ロードされたモデルが画面下に表示されますので、右上のトグルを有効にします
    HiyoriUiModelEnable
  6. テキストコンテンツを入力してください に文章を入力して、音声を生成する で生成します。
    HiyoriUiText
  7. 音声は下部のモデル別に生成され、再生やダウンロードができます。複数のモデルで同時に生成して、聴き比べることもできます。
    HiyoriUiGen
    • 文章の内容で感情表現が大きく変化します。以下のサンプル文章で生成を試してみてください。
      • ずっとずっと好きでした! 私とお付き合いしてください。お願いします!
      • マッサージ、上手いねー。 あっ そうっ! そこっ! いい! いい~!! あああぁぁ~~~~!
      • ごめんなさい…本当に許してください…ごめんなさい…もうしませんkv
    • 感情0-9 のスタイルを選べますが、動作がいまいち&旧仕様になるので放置が良さそうです。
  8. どこかから学習済みモデルを入手したのなら、Bert-VITS2\Data 以下にフォルダを作成して、G_*.pth のモデルと config.json の設定ファイルを一緒に置けば同様に読み込めます。

Hiyori UI を再度立ち上げたい場合は、HiyoriUi.bat を実行します。

音声を学習してみる

音声の学習には感情豊かな読み上げ音声と、その文章が必要です。
ここではサンプルとして感情豊かな JVNV の音声と文章を学習してみます。

  1. Download-LearningSample-JVNV.bat を実行すると、Bert-VITS2\DataJNNV-F2 プロジェクトを作成し、学習用のデータをダウンロードします。
    • JNNV-F2 プロジェクトの audios\raw に、感情豊かな音声ファイルがありますので、学習用音声の参考にしてください。
    • JNNV-F2 プロジェクトの filelists\esd.list で音声の読みとファイルパスを指定していますので、テキストエディタで開いて参考にしてください。
  2. プロジェクトの Learn.bat で学習を開始します。
    しばらく待つと学習結果が models\G_*.pth に書き出されますので、HiyoriUi.bat で読み込んで学習状況を確認できます。
    ビデオカードの VRAM が 8GB の場合は、学習中の VRAM 不足を防ぐために CPU で読み込んでください。
    HiyoriUiModelCPU

学習用の音声を長尺の音声ファイルから変換する

litaginさんがツールを用意しています。

  1. CreateProject.batBert-VITS2\Data に学習用プロジェクトを作成します。
  2. プロジェクトの audios\raw に音声を配置します。
  3. プロジェクトの filelists\esd.list に音声ファイルパスと音声の読みを入力します。
  4. プロジェクトの 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.listlib\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 と表示されますが、音声の生成はできるようです。

そのうち?

参照

ライセンス

このリポジトリのスクリプトやドキュメントは、MIT Licenseです。

This software is released under the MIT License, see LICENSE.txt.

easybertvits2's People

Contributors

litagin02 avatar zuntan03 avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.