Guide : W-Okada, realtime voice cloning (2024)

Back to Articles
Community Article

PublishedFebruary 17, 2024

Upvote-

LenylvtLeny

Information

Before you begin, please note that footnotes are provided at the end of this guide. These footnotes are indicated by superscript numbers, such as ^0, corresponding to additional information or references found at the bottom of the document.

1 - To begin, download the corresponding archive, go on this site then selecte your version (name of the file) :

  • For Windows and Nvidia GPU : MMVCServerSIO_win_onnxgpu-cuda_v* ^1
  • Download For Windows and AMD GPU : MMVCServerSIO_win_onnxdirectML-cuda_v* ^1

Important Note for AMD GPU Users ^2

  • Download For macOS (Apple Silicon) : MMVCServerSIO_mac_onnxcpu-nocuda_v* ^1

2 - Next, you need to extract the archive to your main disk. To do this, right-click on it and select the extraction option. If you're on a Mac, simply double-click it to open.

Update :

During the update, delete everything EXCEPT the following:

  • The model_dir folder
  • Your shortcut to start_http.bat
  • The VBS script if you created one to prevent a command prompt from appearing.

Don't forget to reset your additional parameters, clipping, and audio to a value higher than the previous, as sometimes they display incorrect values.

This also includes the S.R. for server mode if you're using it.

VB-Cable is necessary to send sound to the virtual microphone for use with Discord or other software.

1 - Go to the official VB-Audio page for VB-Cable and click "Download"

2 - This will download a .zip archive that you'll need to extract into a new empty folder.

3 - Run setup_x64.exe (for 64-bit Windows), setup.exe (for 32-bit Windows) or VBCable_MACDriver_Pack*.dmg^1 (for MacOS).

4 - After installation, restart your PC/Mac so the OS can detect the VB-Cable audio device.

To use the voice changer, follow these steps:

1 - Open the folder you extracted earlier.

2 - Run the start_http.

3 - Models will start downloading. The duration of this process depends on your internet connection.

4 - After a few minutes, the application should open.

Here are the settings I recommend using for a better experience:

Hardwaref0ChunkExtra
GPU NVIDIARMVPE or CREPE_TINY1124096-16384
GPU AMD/INTELRMVPE_ONNX or CREPE_TINY1124096-16384
CPUDio or Harvest4484096-8192
Mac M2 Max and -Harvest or RMVPE_ONNX or CREPE_TINY448131072
Mac M2 Max and +RMVPE or RMVPE_ONNX or CREPE_TINY25665536
  • Please pay attention to the "Extra" option. A higher value will utilize more CPU processing power.
  • The quantity of "Chunk" affects the delay before the audio processed by the voice changer is transmitted to VB-Cable.

It's recommended to adjust these settings based on your needs and your system's power.

To achieve the best audio quality, follow these steps to configure the audio settings:

1 - Select the server audio option. It's faster than the client audio.

2 - Choose your audio devices:

  • Select your primary microphone for input.
  • Choose the VB-Cable audio device: "[MME] CABLE Input (VB-Audio Virtual Cable)" for output.
  • Use the monitor to listen to the output audio. Select your headset.

⚠️ Make sure your headphones are correctly configured as the default output device in the system settings.

If you're using other software like Discord, configure them as follows:

  • For input, select « CABLE Output ».
  • For output, choose your headset.

These configurations will ensure that the voice changer works properly with your other applications.

You can choose any you want, but we recommend the following in IV. Recommended Settings

⚠️ AMD GPU: rmvpe-onnx or crepe_tiny

The choice of the "f0Detector" model depends on how you intend to use it, whether it's for singing, speaking, rapping, etc. Here are some recommendations for different use cases:

  • RMVPE : It provides excellent quality and performance, suitable for all purposes.
  • Harvest : Suitable for basic conversations and rap with lower pitches.
  • Dio : Suitable for basic conversations and rap with medium/high pitches.
  • Crepe / Crepe-full : Recommended for speaking and singing with various pitches.
  • Crepe-tiny : A faster and less resource-intensive version of the Crepe model, ideal for many uses.

Select the model based on your specific needs to achieve the best possible results with voice conversion.

You have the option to enable or disable the noise suppression function. However, please note that this function is only available in "Client Device" mode. It's important to note that noise suppression in "Client Device" mode is slower compared to "Server Device" mode. To enable it, check the box next to "Sup1" or "Sup2". This option is effective in significantly reducing unwanted noise. However, keep in mind that it may impact audio quality and increase CPU processing load.

  • NVIDIA Broadcast can work extremely well. However, upon system restart, if you don't set its default settings separately from everything else, it might choose the virtual cable as the microphone and not work. To do this, open sound settings, scroll down to where you can press "App volume and device preferences," find the input area for this app, and choose your actual microphone. This solves any issues with the voice modifier getting stuck, according to my tests.
  • Steelseries Sonar it incorporates Clearcast, which is an excellent noise elimination feature, although not as effective as NVIDIA Broadcast. Anyone should be able to use it.

The following advanced settings are recommended for an optimal experience. Follow these recommendations to achieve the best results:

  • Protocol: sio
  • Crossfade: Overlap: 4096 Start: 0.1 End: 1
  • Truncate: 300
  • SilenceFront: on
  • Protect: 0.5
  • RVC Quality: low

After configuring all the settings, select the desired voice model from the list by clicking on it.

Click the "Start" button and wait for messages to appear in the command window output.

If you want to load your own audio models into the Voice Changer, follow these steps:

1 - Click the "Edit" button in the list of models. This will open up this menu.

2 - Click "Upload" and select the .pth/.onnx file of the model you want to use.

3 - Once the model is uploaded, click on the "no image" text on the left to set an image representing the model.

⚠️ Please note that you cannot delete already downloaded RVC models. To replace them, simply download a new model in their place.

For real-time voice conversion, you also have the option to use ONNX versions of RVC audio models.

  • When downloading a custom model, import an .onnx file instead of a .pth file.

There is limited confirmed information on whether .onnx is inherently better than .pth, but some tests suggest that .onnx may be faster than .pth for real-time voice conversion.

If you have a .pth file and want to convert it to .onnx, you can do so via W-Okada's Voice Changer:

  • Select the model you want to convert to .onnx, then click "Export to .onnx"

Using .onnx files may potentially improve the speed of real-time voice conversion. Experiment to see which option works best for you.

1 - Open Task Manager, click "Details"

2 - Right-click audiodg.exe and set the priority to "High"

3 - Right-click again and choose "Set affinity" then select only CPU 2.

Regarding the number of cores, choose an even number matching your actual processor core.

^1: The asterisk (*) means that numbers or letters can.

^2: Remember to convert all the models you use from PTH to ONNX. Your GPU will only support models in the ONNX format.

Guide : W-Okada, realtime voice cloning (2024)
Top Articles
Latest Posts
Article information

Author: Edmund Hettinger DC

Last Updated:

Views: 6134

Rating: 4.8 / 5 (78 voted)

Reviews: 93% of readers found this page helpful

Author information

Name: Edmund Hettinger DC

Birthday: 1994-08-17

Address: 2033 Gerhold Pine, Port Jocelyn, VA 12101-5654

Phone: +8524399971620

Job: Central Manufacturing Supervisor

Hobby: Jogging, Metalworking, Tai chi, Shopping, Puzzles, Rock climbing, Crocheting

Introduction: My name is Edmund Hettinger DC, I am a adventurous, colorful, gifted, determined, precious, open, colorful person who loves writing and wants to share my knowledge and understanding with you.