本リポジトリは、書籍『音声変換入門 Pythonで作って学ぶボイスチェンジャー』のサポートページです。 パラレル音声変換から最新のゼロショット音声変換まで、4つの手法を実際に動かしながら学ぶことができます。
| ディレクトリ | 対応章 | モデル | 概要 |
|---|---|---|---|
ParallelVC/ | 第5章 | パラレル音声変換 | 簡易なDNNに基づく音声変換 |
AutoVC/ | 第5章 | AutoVC | オートエンコーダーによる音声変換 |
FreeVC/ | 第7章 | FreeVC | 正規化フローに基づく音声変換 |
SeedVC/ | 第8章 | SeedVC | フローマッチングに基づく音声変換 |
本書では全章を通してPython 3.10で統一しています。 将来的に各モデルが新しいPythonバージョンに対応した場合は、本リポジトリも対応を更新する予定です。
本リポジトリでは、Pythonの環境管理ツールとして uv を使用します。
# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
git clone https://github.com/supikiti/VC_book.git
cd VC_book
# Pythonをダウンロード
uv python install 3.10
本書では、日本語多数話者音声コーパス「JVS (Japanese Versatile Speech) corpus」を使用します。
ダウンロード手順:
corpus/ ディレクトリに配置します。# リポジトリのルートで実行
mkdir -p corpus
# ダウンロードしたzipを解凍して配置
unzip jvs_ver1.zip -d corpus/
配置後のディレクトリ構成が以下のようになっていることを確認してください。
VC_book/
├── corpus/
│ └── jvs_ver1/
│ ├── jvs001/
│ │ ├── parallel100/
│ │ │ └── wav24kHz16bit/
│ │ ├── nonpara30/
│ │ ├── whisper10/
│ │ └── falset10/
│ ├── jvs002/
│ ├── ...
│ └── jvs100/
├── ParallelVC/
├── AutoVC/
├── FreeVC/
└── SeedVC/
試したいモデルのディレクトリに移動し、uv sync で環境を構築します。
# 例:FreeVCを試す場合
cd FreeVC
uv sync
各ディレクトリの README.md に、モデルごとの詳細な実行手順を記載しています。
書籍内で紹介された手法の合成音声サンプルは、こちらのサイトで公開しています。
書籍の正誤情報は こちらのスプレッドシート で公開しています。
本書のコードは、以下のオープンソースプロジェクトを参考に作成しています。 各プロジェクトの著者の皆様に深く感謝いたします。
AutoVC ― Kaizhi Qian, Yang Zhang, Shiyu Chang, Xuesong Yang, Mark Hasegawa-Johnson "AutoVC: Zero-Shot Voice Style Transfer with Only Autoencoder Loss" (ICML 2019) https://github.com/auspicious3000/autovc
FreeVC ― Jingyi Li, Weiping Tu, Li Xiao "FreeVC: Towards High-Quality Text-Free One-Shot Voice Conversion" (ICASSP 2023) https://github.com/OlaWod/FreeVC
SeedVC ― Plachtaa et al. "Seed-VC: Zero-Shot Voice Conversion and Singing Voice Conversion with Real-Time Support" https://github.com/Plachtaa/seed-vc
また、本書で使用する音声データとして、以下のコーパスを利用しています。
本リポジトリのライセンスはディレクトリによって異なります。
ParallelVC/、AutoVC/、FreeVC/:MIT LicenseSeedVC/:GPL-3.0 License(派生元の Seed-VC のライセンスに準拠)SeedVC/ 内のコードを改変・再配布する場合は、GPL-3.0の条件に従う必要があります。
詳細は各ディレクトリ内のLICENSEファイルをご確認ください。
JVSコーパスの利用条件については、コーパス配布ページの規約に従ってください。
40 commits
Python
96.5%
Cuda
1.5%
本リポジトリは、書籍『音声変換入門 Pythonで作って学ぶボイスチェンジャー』のサポートページです。 パラレル音声変換から最新のゼロショット音声変換まで、4つの手法を実際に動かしながら学ぶことができます。
| ディレクトリ | 対応章 | モデル | 概要 |
|---|---|---|---|
ParallelVC/ | 第5章 | パラレル音声変換 | 簡易なDNNに基づく音声変換 |
AutoVC/ | 第5章 | AutoVC | オートエンコーダーによる音声変換 |
FreeVC/ | 第7章 | FreeVC | 正規化フローに基づく音声変換 |
SeedVC/ | 第8章 | SeedVC | フローマッチングに基づく音声変換 |
本書では全章を通してPython 3.10で統一しています。 将来的に各モデルが新しいPythonバージョンに対応した場合は、本リポジトリも対応を更新する予定です。
本リポジトリでは、Pythonの環境管理ツールとして uv を使用します。
# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
git clone https://github.com/supikiti/VC_book.git
cd VC_book
# Pythonをダウンロード
uv python install 3.10
本書では、日本語多数話者音声コーパス「JVS (Japanese Versatile Speech) corpus」を使用します。
ダウンロード手順:
corpus/ ディレクトリに配置します。# リポジトリのルートで実行
mkdir -p corpus
# ダウンロードしたzipを解凍して配置
unzip jvs_ver1.zip -d corpus/
配置後のディレクトリ構成が以下のようになっていることを確認してください。
VC_book/
├── corpus/
│ └── jvs_ver1/
│ ├── jvs001/
│ │ ├── parallel100/
│ │ │ └── wav24kHz16bit/
│ │ ├── nonpara30/
│ │ ├── whisper10/
│ │ └── falset10/
│ ├── jvs002/
│ ├── ...
│ └── jvs100/
├── ParallelVC/
├── AutoVC/
├── FreeVC/
└── SeedVC/
試したいモデルのディレクトリに移動し、uv sync で環境を構築します。
# 例:FreeVCを試す場合
cd FreeVC
uv sync
各ディレクトリの README.md に、モデルごとの詳細な実行手順を記載しています。
書籍内で紹介された手法の合成音声サンプルは、こちらのサイトで公開しています。
書籍の正誤情報は こちらのスプレッドシート で公開しています。
本書のコードは、以下のオープンソースプロジェクトを参考に作成しています。 各プロジェクトの著者の皆様に深く感謝いたします。
AutoVC ― Kaizhi Qian, Yang Zhang, Shiyu Chang, Xuesong Yang, Mark Hasegawa-Johnson "AutoVC: Zero-Shot Voice Style Transfer with Only Autoencoder Loss" (ICML 2019) https://github.com/auspicious3000/autovc
FreeVC ― Jingyi Li, Weiping Tu, Li Xiao "FreeVC: Towards High-Quality Text-Free One-Shot Voice Conversion" (ICASSP 2023) https://github.com/OlaWod/FreeVC
SeedVC ― Plachtaa et al. "Seed-VC: Zero-Shot Voice Conversion and Singing Voice Conversion with Real-Time Support" https://github.com/Plachtaa/seed-vc
また、本書で使用する音声データとして、以下のコーパスを利用しています。
本リポジトリのライセンスはディレクトリによって異なります。
ParallelVC/、AutoVC/、FreeVC/:MIT LicenseSeedVC/:GPL-3.0 License(派生元の Seed-VC のライセンスに準拠)SeedVC/ 内のコードを改変・再配布する場合は、GPL-3.0の条件に従う必要があります。
詳細は各ディレクトリ内のLICENSEファイルをご確認ください。
JVSコーパスの利用条件については、コーパス配布ページの規約に従ってください。
40 commits
Python
96.5%
Cuda
1.5%