
RVCの弱点である笑い声を克服した話
こんにちは。よちゅばです。
最近、巷でRetrieval-based Voice Change(RVC)というAIボイスチェンジャーが話題になっているのをご存じでしょうか?
異性の別人を名乗って友達相手に30分通話しても全く怪しまれないくらいのクオリティで、今までのボイスチェンジャーとは比べ物になりません。
(悪用厳禁!!!!!!)
気になる方は、こちらの方の記事が非常にわかりやすいため、ぜひ一度試してみてください。
しかし、このAIボイスチェンジャーにも弱点があります。それは、
笑い声を再現できない
ことです。VC Client等を用いてRVCのリアルタイム変換する際にマイクの前で思わず笑うと、頑張って笑い声を通常の会話に変換しようとしてしまい、おかしな言葉を喋り始めます。
AIボイチェンのRVC、完全に地声で喋ってもかわいい声になるのは圧倒的強みだけど、反面、言葉・声を変換する仕組み上、ピッチ変更系のボイチェンと違って「笑い声」とか「欠伸」などの言語外の仕草には正常に反応しないという結構致命的な弱点もある。
— 榎宮祐♟️ノゲノラ (@yuukamiya68) April 10, 2023
笑い方や学習の方法等である程度は改善できますが、自然な笑い声を再現することはやはり難しく、今の技術では限界がありそうです。
しかし、もし友達の前やライブ配信等でボイスチェンジャーを使いたいのであれば、やはり笑い声もほしいところ。
そこで、RVCのリアルタイム変換を行いながら、自然な笑い声を安定して発する必勝法を思いつきました。それは、
笑い声のサンプルをたくさん集めて、ランダムで再生する
です。要は、実際に話し手が笑うのではなく、笑いを入れたいタイミングであらかじめ用意した笑い声を再生してしまえばいいのです()
あれ?こんなところに丁度いいソフトが…
この「ランダム音声プレイヤー」というソフトは、ボタンを押すと、指定したフォルダに含まれる音声ファイルをランダムに選択し、指定した音声デバイスで再生してくれます!まさに探していたようなソフト!!!
ランダム音声プレイヤーの使い方
上記のGitHubのリンク先から、Setup_RandomSoundPlayer.msiをダウンロードし、実行してソフトをインストールします。
(ダウンロード数が少ないためウイルスと誤認される場合がありますが、ウイルスではないのでご安心ください。)
再生する笑い声の音声ファイル(wav形式)が入ったフォルダを用意します。フォルダ名とファイル名は何でも大丈夫です。
笑い声のバリエーションを増やすために、なるべく多くの笑い声ファイルを用意しておきましょう。

その後、ランダム音声プレイヤーのソフトを起動し、再生デバイスと再生フォルダパスを入力します。
再生デバイスは、RVCのリアルタイム変換をする上で出力デバイスに設定している仮想オーディオデバイスを選択します。(私はVB-CABLEを使っています。)
再生フォルダパスは、先ほど作成した笑い声のフォルダをドラッグ&ドロップすればOKです。

あとは再生ボタンを押せば、フォルダ内の笑い声ファイルから、ランダムで1つが再生されます!
これで、マイクで喋ってRVCのリアルタイム変換を行いつつ、笑いたいときはボタンを一押しするだけで笑うことができます。
※声を出して笑ってはいけません!黙ってボタンを押すこと!
なお、AIボイスチェンジャーにしろ、今回の笑い声にしろ、他人の声を利用する際はトラブルが無いよう十分に注意してください。
ということで、タイトル詐欺のような記事になってしまいましたが、楽しんでもらえたのであれば光栄です。コメント等も大歓迎です。
笑い声がAIで再現できるようになるのも時間の問題な気はします。その時は今回用意した笑い声の音声ファイルたちが学習の役に立つかも、、、?
それでは、良き開発ライフを。