リアルタイムボイスチェンジャー Realtime Voice Changer
Go to file
2023-01-19 09:43:43 +09:00
client hide original voice from file input as mic 2023-01-18 06:35:09 +09:00
docker WIP: Docker on linux 2023-01-14 19:36:53 +09:00
docker_onnx WIP refactoring 2023-01-07 20:07:39 +09:00
docs update 2022-11-12 09:26:28 +09:00
script refactoring 2023-01-06 01:37:29 +09:00
server omit: open chrome automatically2 2023-01-17 08:29:57 +09:00
.gitignore tmp folder 2023-01-15 01:30:46 +09:00
Checklist.md update 2023-01-14 19:28:26 +09:00
LICENSE add license 2022-08-24 09:50:45 +09:00
MMVCTrainerFrontendDemo.ipynb Colaboratory を使用して作成しました 2022-12-11 09:15:57 +09:00
package-lock.json update 2022-08-27 11:43:55 +09:00
package.json WIP refactoring 2023-01-07 20:07:39 +09:00
README.md update 2023-01-19 09:43:43 +09:00
SoftVcDemo.ipynb Colaboratory を使用して作成しました 2022-10-29 09:56:28 +09:00
start2.sh hide original voice from file input as mic 2023-01-18 06:35:09 +09:00
start_v0.1.sh update 2022-10-30 00:58:21 +09:00
VoiceChangerDemo_Simple.ipynb Colaboratory を使用して作成しました 2023-01-14 19:54:40 +09:00
VoiceChangerDemo.ipynb Colaboratory を使用して作成しました 2023-01-14 20:00:44 +09:00
VoiceRecorder.ipynb Colaboratory を使用して作成しました 2022-11-09 04:12:09 +09:00

VC Helper

概要

AIを使ったリアルタイムボイスチェンジャーMMVCのヘルパーアプリケーションです。

MMVCで必要となる一連の作業トレーニング用の音声の録音、トレーニング、ボイスチェンジャの中で、音声の録音とボイスチェンジャを各種プラットフォームでお手軽に実行できます。

※ トレーニングについては公式ノートブックをご利用ください。

解説動画

image

このアプリケーションを用いることで、以下のことを簡単に行うことができます。

  • MMVCトレーニング用の音声録音
  • MMVCモデルを用いたリアルタイムボイスチェンジャー
    • リアルタイム話者切り替え
    • CPU/GPU切り替え
    • リアルタイム/ニアリアルタイム声質変換

本アプリケーションのリアルタイムボイスチェンジャーは、サーバ・クライアント構成で動きます。MMVCのサーバを別のPC上で動かすことで、ゲーム実況など他の負荷の高い処理への影響を抑えながら動かすことができます。

image

使用方法

(1) レコーダー(トレーニング用音声録音アプリ)

MMVCトレーニング用の音声を簡単に録音できるアプリです。 Github Pages上で実行できるため、ブラウザのみあれば様々なプラットフォームからご利用可能です。 録音したデータは、ブラウザ上に保存されます。外部に漏れることはありません。

録音アプリ on Github Pages

解説動画

詳細についてはwikiをご確認ください。

(2) プレイヤー(ボイスチェンジャーアプリ)

MMVCでボイチェンを行うためのアプリです。

大きく3つの方法でご利用できます。難易度順に次の通りです。

  • Google Colaboratoryでの利用
  • 事前ビルド済みのBinaryでの利用
  • DockerやAnacondaなど環境構築を行った上での利用

本ソフトウェアやMMVCになじみの薄い方は上から徐々に慣れていくとよいと思います。

(2-1) Google Colaboratoryでの利用

Googleが提供している機械学習プラットフォームColaboratory上で実行できます。 MMVCのモデルをトレーニングが完了している場合、既にColaboratoryを利用していると思いますので、事前準備は必要ありません。ただし、ネットワーク環境やColaboratoryの状況によってボイスチェンジャのタイムラグが大きくなる傾向があります。

解説動画

(2-2) 事前ビルド済みのBinaryでの利用

実行形式のバイナリをダウンロードして実行することができます。 Windows版とMac版を提供しています。事前準備は必要ありません。

・Mac版はダウンロードファイルを解凍したのちに、MMVCServerSIOをダブルクリックしてください。開発元を検証できない旨が示される場合は、再度コントロールキーを押してクリックして実行してください。詳細下記 *1

・Windows版は、directML版とGPU版を提供しています。環境に応じたzipファイルをダウンロードしてください。ダンロードしたzipファイルを解凍して、MMVCServerSIO.exeを実行してください。

・NvidiaのGPUをお持ちの方はonnxgpuがファイル名に含まれるファイルをご利用ください。多くの場合はonnxgpu_nocudaの方で動きます。環境によって極まれにgpuが認識されない場合があります。その場合はonnxgpu_cudaの方をご利用ください。サイズが大きく違います。

・NvidiaのGPUをお持ちでない方はonnxdirectMLが含まれるファイルをご利用ください。多くの場合は、onnxdirectML_nocudaの方で動きます。環境によって極まれにgpuが認識されない場合があります。その場合はonnxgpu_cudaの方をご利用ください。サイズが大きく違います。

・リモートからアクセスできるようにする方法など、より詳しくはこちらをご覧ください。

最新バージョン

過去バージョン

https://user-images.githubusercontent.com/48346627/212569645-e30b7f4e-079d-4504-8cf8-7816c5f40b00.mp4

詳細は、こちらのBlogをご確認ください。

*1 本ソフトウェアは開発元の署名しておりません。下記のように警告が出ますが、コントロールキーを押しながらアイコンをクリックすると実行できるようになります。これはAppleのセキュリティポリシーによるものです。実行は自己責任となります。

image

(2-3) DockerやAnacondaなど環境構築を行った上での利用

本リポジトリをクローンして利用します。WindowsではWSL2の環境構築が必須になります。また、WSL2上でDockerもしくはAnacondaなどの仮想環境の構築が必要となります。MacではAnacondaなどのPythonの仮想環境の構築が必要となります。事前準備が必要となりますが、多くの環境においてこの方法が一番高速で動きます。 GPUが無くてもそこそこ新しいCPUであれば十分動く可能性があります (下記のリアルタイム性の節を参照)

WSL2とDockerのインストールの解説動画

WSL2とAnacondaのインストールの解説動画

操作方法はwikiをご覧ください。

説明動画

No タイトル リンク
01 ざっくり説明編 youtube
02 ユーザー音声の録音編 youtube
03 トレーニング編 作成中
04a Colabでボイチェン編 youtube
04b PCでボイチェン編 欠番(ex1, ex2, 04aの内容と被るため)
ex1 番外編WSL2とDockerのインストール youtube
ex2 番外編WSL2とAnacondaのインストール youtube

リアルタイム性

GPUを使用するとほとんどタイムラグなく変換可能です。

https://twitter.com/DannadoriYellow/status/1613483372579545088?s=20&t=7CLD79h1F3dfKiTb7M8RUQ

CPUでも最近のであればそれなりの速度で変換可能。

https://twitter.com/DannadoriYellow/status/1613553862773997569?s=20&t=7CLD79h1F3dfKiTb7M8RUQ

古いCPU( i7-4770)だと、1000msecくらいかかってしまう。

Acknowledgments

免責事項

本ソフトウェアの使用または使用不能により生じたいかなる直接損害・間接損害・波及的損害・結果的損害 または特別損害についても、一切責任を負いません。