「自分の声を、まるで別人のように変えたい」「ゲーム実況やVTuberで使う声色を、外部サービスに頼らず自前で作りたい」——そんなときの定番OSSが RVC(Retrieval-based Voice Conversion) です。ひとことで言えば、10分ほどの音声さえあれば自分だけの声を学習し、ブラウザ上のWebUIから声を変換できるAI音声変換(ボイスチェンジャー)フレームワーク。VITSという音声合成モデルをベースにしており、GitHubでは約3.6万スター(2026年7月時点)を集める人気プロジェクトです。ライセンスはMITで、商用も含めて扱いやすいのも支持される理由です。
この記事では、公式README・FAQ(日本語版あり)をもとに、①RVCで結局何ができるのか(自分の声を別の声色に変換し、歌声にも使える)、②何を解決するのか(声優や高価な機材なしで、少量の音声から声を作り替えられる)、③何を代替できるのか(従来のDSP型ボイスチェンジャーや外部の音声変換サービス)という読者の3つの疑問に、使い方・学習のコツ・リアルタイム変換・他ツール比較まで踏み込んで答えます。あわせて、音声変換につきものの倫理・法的な注意点も最後に整理します。なお、テキストから音声を作るTTS側の低遅延実装に興味がある方は、RealtimeTTS:テキスト音声変換オープンソースで実現するLLM応答のゼロ遅延音声化手法も参考になります。
- ・RVCは10分ほどの音声から自分だけの声色を学習できる、VITSベースの音声変換OSS(ライセンスMIT・約3.6万スター)。
- ・最大の特徴は「Top1特徴検索」。入力の特徴量を学習データの特徴量に置き換え、音色漏れ(tone leakage)を抑える。
- ・WebUIで学習・推論が完結し、リアルタイム変換は内蔵GUIで約170ms、ASIOなら約90ms。
- ・歌声にも対応し、UVR5でボーカルとBGMを分離、RMVPEで高精度なピッチ抽出ができる。
- ・音声変換は悪用リスクの大きい技術。本人の同意なき学習・なりすまし・詐欺利用は厳禁で、用途の責任は利用者にある。
1. RVCとは:10分の音声で作るAI音声変換(ボイスチェンジャー)
RVCは、入力した音声の「話している内容」はそのままに、「声色(誰の声か)」だけを学習済みモデルの声に置き換えるツールです。テキストから音声を作るTTS(音声合成)とは向きが異なり、RVCは「すでにある音声」を素材に、その声質を別の声へと変換します。だからマイクに向かって話した自分の声を、リアルタイムで別人の声にすることもできます。
技術的な土台はVITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)で、ここにTop1検索という独自の工夫を加えているのがRVCの核心です。公式は「Top1検索を用いて生の特徴量を訓練データセットの特徴量に置き換え、音色漏れ(tone leakage)を削減する」と説明しています。音色漏れとは、変換後の声に元話者のクセが残ってしまう現象のこと。RVCはこれを検索ベースで抑え込むため、少ないデータでも「その人らしさ」を出しやすいのです。
読者の3つの疑問に、この段階で結論だけ先に答えます。
・何ができるか:自分(や許諾を得た人)の声を、学習した別の声色に変換できる。話し声だけでなく歌声の変換にも対応する
・何を解決するか:声優への依頼や高価な変換機材を用意しなくても、10分程度の音声さえあれば自分専用のボイスチェンジャーを作れる。しかも貧弱なGPUでも学習が回る
・何を代替できるか:声の高さを機械的にずらすだけの従来のDSP型ボイスチェンジャーや、月額で使うクラウドの音声変換サービスを、ローカル完結の自前環境で置き換えられる
公式が「著作権侵害を心配せず使えるよう、基底モデルは約50時間の高品質なオープンソースデータセットで訓練している」と明記している点も安心材料です。基盤モデル自体がクリーンなデータで作られているため、あとは自分の素材で微調整するだけで済みます。
- ・RVC=「話す内容はそのまま、声色だけ別人に差し替える」AI音声変換。
- ・少量データでも似せられる秘密は、音色漏れを抑えるTop1特徴検索にある。
2. RVCの主な機能としくみ:Top1検索・RMVPE・UVR5
RVCが「ただのボイスチェンジャー」で終わらないのは、学習から仕上げまでに必要な機能がWebUIに一通りそろっているからです。公式READMEが挙げる主な特徴を、読者目線で整理します。
・Top1特徴検索:入力音声の特徴量を学習データの特徴量に置き換え、音色漏れ(元話者のクセの残留)を抑える。RVC最大の差別化点
・少量データでの学習:10分以上のノイズの少ない音声が推奨。比較的性能の低いGPUでも高速に学習できる
・RMVPEによるピッチ抽出:InterSpeech2023で発表されたアルゴリズムを採用。無声音(かすれ)の問題を解決し、従来のcrepe_fullより高精度かつ高速・省リソース
・UVR5によるボーカル分離:歌ってみた素材などから、人の声とBGMを素早く分離できる。歌声変換の前処理に効く
・モデル融合(ckpt merge):複数モデルを混ぜて、中間的な声色を作り出せる
・リアルタイム変換:内蔵GUIで端から端まで約170ms、ASIO入出力なら約90msの低遅延を実現
・幅広いGPU対応:NVIDIA(Nカード)に加え、AMDのROCm/DirectML、IntelのIPEXでも加速できる
とくに押さえたいのがピッチ抽出アルゴリズムの使い分けです。WebUIでは pm / harvest / crepe / rmvpe を選べ、公式の説明では「歌声には pm が速い、harvest は低音が良いが非常に遅い、crepe は高品質だがGPUを食う、rmvpe が最良でGPU負荷も小さい」とされています。迷ったら rmvpe を選んでおけば大きく外しません。
推論時の
index rate は、音色漏れをどれだけ抑えるかを調整するパラメータです。1に近づけるほど学習データの音色に寄り(漏れが減る)、0にすると検索による音色保護が効かなくなります。ただし学習データより変換元の音質が高い場合、上げすぎると音質が下がることがあると案内されています。3. RVCの使い方①:導入と学習(10分の音声で自分の声を作る)
ここからは実際の使い方です。RVCは「環境構築 → 事前学習モデルの配置 → 素材の学習 → 推論」という流れで進みます。まずは導入と学習まで。
環境構築は、Python 3.8以上の環境で依存関係を入れ、WebUIを起動するだけです。まず、音声の読み込みに使うffmpegを入れます(すでに入っていればスキップ)。
# macOS
brew install ffmpeg
# Ubuntu / Debian
sudo apt install ffmpeg
続いて、PyTorchとRVC本体の依存関係をインストールします(NVIDIA GPUの場合。AMDなら requirements-dml.txt、IntelのIPEXなら requirements-ipex.txt を使います)。
pip install torch torchvision torchaudio
pip install -r requirements.txt
あとはWebUIを起動すれば、ブラウザで学習・推論画面が開きます。
python infer-web.py
Windowsユーザーは配布されている統合パッケージ(RVC-beta.7z)を解凍し、go-web.bat をダブルクリックするだけでも起動できます。macOSでは sh ./run.sh で依存関係を入れられます。加えて、推論・学習にはHuBERT(hubert_base.pt)やRMVPE(rmvpe.pt)、pretrained などの事前学習モデルを公式のHugging Face spaceからダウンロードして所定のフォルダに置く必要があります。手元にGPUがなくても、公式のGoogle Colabノートブックから試すこともできます。
ノイズの少ない音声を10分〜"] --> B["前処理
音声をスライスし16kHzへリサンプル"] B --> C["特徴抽出
HuBERTで音声特徴を抽出
RMVPEでピッチを抽出"] C --> D["学習
約50時間の基底モデルから
少量データで微調整"] D --> E["indexファイル生成
Top1検索用の特徴データベース"] E --> F["モデル完成
weightsフォルダのpthファイル"] F --> G["推論・変換
単発 または リアルタイム"]
学習の実務で効いてくるのが、公式FAQで案内されているデータ量とエポック数の目安です。
・学習データの長さ:10分〜50分を推奨。音質が良く特徴的な声色なら5〜10分でも成功例がある。1分未満は推奨されない
・total_epoch(総エポック数):ノイズが多い素材なら20〜30で十分。高音質で長い素材なら200程度まで上げてよい
・VRAM:4GB未満のGPUでの学習は厳しい。メモリ不足(out of memory)が出たらバッチサイズを下げるのが基本対処
音声パスに空白や括弧などの特殊文字が含まれると、ffmpeg関連のエラーが出ることがあります。また、ワンクリック学習の完了後に
added で始まるindexファイルが生成されない場合は、素材が大きすぎてindex追加の段階が止まっている可能性があるため、「トレーニングインデックス」ボタンを押し直します(公式FAQより)。学習が終わると、共有・推論に使うのは weights フォルダに保存される60MB以上のpthファイルです。logs フォルダ側にある数百MBのpthは、学習を再開するための状態保存用であって推論用ではない、という点は取り違えやすいので注意しましょう。
できあがったモデルを配布したいときは、weights/モデル名.pth と logs/モデル名/added_xxx.index をセットで渡すのが基本です。indexファイルがないと推論時にTop1検索が効かず、音色漏れ対策が弱まります。逆に、自分だけで使うなら共有は不要ですし、学習素材が高品質で長尺なら(total_epochを高く取れば)モデル自体が元話者やベースモデルの声色をあまり参照しなくなるため、indexへの依存自体が小さくなる、と公式FAQは説明しています。中間的な声色を作りたい場合は、ckpt処理タブの ckpt merge で複数モデルを融合するという手もあります。
4. RVCの使い方②:推論とリアルタイム音声変換
学習済みモデルができたら、いよいよ声を変換します。推論には大きく2つのモードがあります。
(A)単発・バッチ推論:用意した音声ファイル(歌ってみたの音源など)をまとめて変換するモード。WebUIの推論タブで、①変換したい音声、②声色モデル、③indexファイル、④ピッチ抽出アルゴリズム、⑤ピッチシフト量(半音単位。男声↔女声などで調整)、⑥index rate を指定して「変換」を押すだけです。歌声を扱うときは、先にUVR5でボーカルとBGMを分離しておくと仕上がりが安定します。
歌声変換の実際のワークフローはこうです。まずUVR5タブで原曲からボーカルだけを抽出し、そのボーカルをRVCで目的の声色に変換。最後に元のBGMと重ね直せば、「別人が歌う歌ってみた」が完成します。RVCがボーカル分離(UVR5)まで内包しているおかげで、外部ツールを行き来せずに一連の作業が1つのWebUIで完結するのが強みです。ピッチシフト量は、元の歌い手と目標の声のキー差に合わせて半音単位で調整します(男声モデルで女声曲を歌わせるなら+12=1オクターブ上、などが目安)。
(B)リアルタイム変換:マイク入力をその場で別の声に変える、いわゆるボイスチェンジャー用途です。RVCにはリアルタイム用のGUI(go-realtime-gui.bat)が付属し、公式によると端から端まで約170ms、ASIO対応の入出力デバイスを使えば約90msまで遅延を詰められます(ただしハードウェアドライバーのサポートに強く依存すると明記されています)。
配信やボイスチャットで本格的に使うなら、RVC単体のGUIに加えて、公式READMEでも案内されている w-okada/voice-changer という別プロジェクトのリアルタイム変換クライアントがよく使われます。RVCで学習したモデルをこのクライアントに読み込み、仮想オーディオデバイス(VoiceMeeterなど)を経由してDiscordやOBSに流す、という構成が定番です。
- ・ピッチ抽出は負荷と精度のバランスから
rmvpe/fcpeあたりが扱いやすい。 - ・index rate を上げすぎると遅延・音質に響くことがあるため、少しずつ調整する。
- ・入出力は同種のドライバ(WASAPI同士やASIO同士)でそろえると安定しやすい。
5. RVC vs so-vits-svc:音声変換ツールの違いと使い分け
「RVCと他の音声変換ツールは何が違うのか」もよく検索される疑問です。ここでは代表的な選択肢として、歌声変換で広く使われてきた so-vits-svc と、モデル学習を伴わない従来型のDSPボイスチェンジャーを並べて比較します。RVCのリポジトリ自体がトピックに so-vits-svc を掲げており、両者は近い領域を扱う「いとこ」のような関係です。
| 観点 | RVC | so-vits-svc | 従来のDSP型ボイスチェンジャー |
|---|---|---|---|
| 方式 | VITS+Top1特徴検索 | SoftVC+VITS | 信号処理(ピッチ/フォルマント加工) |
| 主な用途 | 話し声・歌声の両方 | 主に歌声変換 | 声の高さ・質感の加工 |
| 音色漏れ対策 | Top1検索で抑制(独自の強み) | 検索方式は持たない | 学習しないため対象外 |
| 学習データ目安 | 10分程度から可 | 一般に多めが望ましい | 学習不要 |
| リアルタイム変換 | 内蔵GUI+w-okadaで対応(最短約90ms) | 別実装に依存 | リアルタイム前提 |
| WebUI | あり(Gradio製・多言語) | フォークにより異なる | 製品ごとのGUI |
| ライセンス | MIT | 実装・フォークにより異なる | 製品による |
ざっくりした使い分けの指針はこうです。
・少ないデータで話し声も歌声も手軽に変えたい/リアルタイムでも使いたい → まずRVC。WebUIとリアルタイム環境が整っており、日本語のノウハウも多い
・歌声変換に特化して作り込みたい → so-vits-svc系も候補。ただし細かな仕様・ライセンスはフォークごとに確認が必要
・声質を学習せず、声の高さだけ手早く変えたい(学習の手間をかけたくない) → 従来型のDSPボイスチェンジャーで十分なことも多い
なお、RVCは「話す内容」を変えるものではありません。文章から新しい音声を生成したいなら、それはTTS(音声合成)の領域です。用途がテキスト起点なら、前述のRealtimeTTSのようなツールと役割分担する、という考え方になります。
「自分の声を、少ないデータで、話しも歌もリアルタイムも」——この欲張りな条件を一番バランスよく満たすのが現状のRVC。特定用途に振り切るなら他ツールも視野に入る、という位置づけです。
6. 倫理・法的配慮:音声変換で守るべき一線
最後に、もっとも大切な話をします。音声変換は「両刃の剣」です。自分の声を楽しく変えるのと同じ技術が、他人へのなりすましや詐欺にも転用できてしまいます。RVCを使うなら、次の3点は必ず守ってください。
・①本人の同意なく他人の声を学習・変換しない:家族・有名人・声優・配信者などの声を、許可なく素材にしてモデルを作る行為はトラブルの元です。肖像権・パブリシティ権・著作隣接権などに触れる可能性があります
・②なりすまし・詐欺・世論操作に使わない:他人になりすまして送金を求める、虚偽の発言を「本人の声」で拡散する、といった利用は違法であり、社会的にも許されません。ディープフェイク音声による被害は各国で問題化しています
・③生成物の用途に責任を持つ:作った音声を公開・配布する場合は、素材の権利処理と用途の適法性を自分で確認する。プラットフォームの規約(AI生成音声の表示義務など)にも従う
RVC自体はMITライセンスの中立な技術です。基底モデルも著作権に配慮したオープンデータで学習されています。だからこそ、誰の声を素材にし、生成した音声をどう使うかの判断と責任は、100%利用者側にあります。少しでも「これは大丈夫だろうか」と迷う用途なら、やめておくのが安全です。
健全な使い方は無数にあります。自分の声を別の声色に変える、許諾を得た声や合成音声を素材に創作する、VTuber・ゲーム実況・ラジオドラマ・音声表現に使う——こうした「自分の権利の範囲」または「明示的な許可の範囲」で楽しむぶんには、RVCは表現の幅を大きく広げてくれるツールです。技術を萎縮させず、しかし一線は越えない。その線引きを自分で持つことが、音声変換とうまく付き合う唯一の条件です。
まとめ
- ・10分ほどの音声から、自分だけの声色を学習してボイスチェンジャーを自作したい人。
- ・話し声も歌声も、外部サービスに頼らずローカル完結で変換したい人(配信・実況・創作)。
- ・Top1特徴検索・RMVPE・UVR5といった機能を、Gradio製WebUIから一通り触ってみたい人。
- ・逆に、他人の声を無断で使う・なりすましに使うといった用途は絶対にNG。用途の責任は利用者にある。
RVCは、「少ないデータで似せる」を音色漏れ対策(Top1検索)で成立させ、学習から推論・リアルタイム変換までをWebUIに束ねた、AI音声変換の実用的な決定版です。約3.6万スターという支持は、その扱いやすさと完成度の証と言えます。事前学習モデルの準備やGPU要件といったハードルはあるものの、Colabから試せる導線も整っており、「まず動かしてみる」までの距離は近い。
一方で、声は極めて個人的なデータです。技術の面白さと、他者の権利・安全への配慮は、常にセットで考えてください。自分の声で、あるいは許諾を得た範囲で——そのルールを守るかぎり、RVCはあなたの表現に新しい声を1つ加えてくれます。
参照ソース
・RVC-Project/Retrieval-based-Voice-Conversion-WebUI(GitHub 公式リポジトリ)
・RVC 日本語README(docs/jp/README.ja.md)
・RVC よくある質問(docs/jp/faq_ja.md)
・w-okada/voice-changer(RVC対応のリアルタイム変換クライアント)