EOL - No further Updates
Github - Blanc-dot
Discord User ID - https://discord.com/users/824922747423031359
Despite being end of life, most if not all information has not really changed, so should be very accurate until actual new stuff comes out.

Modifying Original RVC to suit your needs

Too lazy to do this? Here's a release with these changes and more https://github.com/Blanc-dot/RVC-Edits

Requirement a text editor of some sort, Sublime or Notepad++ are both fine.

Obviously Original RVC you can use the newest prebuilt binary or manually build using their repo.

Navigate inside your RVC folder, the first thing we are going to do is change how often logs are updated.

Configs > v2 (and v1 if you plan on doing that) > all json files in those folders need to be opened in your text editor of choice.

Second line will always say Log Interval, by default its 200. You can lower this all the way down to 50, aka 4x more updates, on your tensorlogs.

The config.json file thats outside of the v2 v1 folders is for the voice changer part of the RVC repo, you can ignore.

Navigate back to the main folder, and back up the infer-web.py file. This is what we will be editing to have better defaults, and if you mess up you can revert.

I will be telling you line #'s to jump to and what they do.

Line # 1109 or the 4th mi-test is our starting point. You can leave this name as it is, its just default name on train tab

Reference Line

Line #1112 add "32k",

Line # 1113 you can choose your default model to be 48k, 40k, or 32k
EX: value="32k",
whatever you set here go to 1264 & 1269 assets/pretrained_v2/f0G48k.pth assets/pretrained_v2/f0D48k.pth

Reference Line to add 32k to
Reference Line to choose default
Reference Line paired with default
Reference Line paired with default 2

Line # 1134 or the line with config.n_cpu, uses math to determine what your default CPU processes to use is.

For me I always wanted to use 7 of my 16 cores so EX: value=int(np.ceil(config.n_cpu / 2.5)), config.n_cpu just gets your max amount of cores.

Reference Line

Line # 1145 is where you can change your default dataset folder to be, I set this to be a folder I made inside of rvc called Datasets

EX: value="C:\Users\Mia\Desktop\RVC\datasets" you need to include a second \ when doing your path to folder else itll error similar to what i have done.

Reference Line

Line # 1182 is where you can choose default f0, just leave on rmvpe_gpu, EX: value="rmvpe_gpu",

Reference Line

Line # 1219 Maximum save frequency. you really dont have to change this but if you want just increase it to like 250

it only really matters on really short datasets so you arent clogging your weights folder if you do have saves on. EX: maximum=250,

Reference Line

Line # 1222 this is what the slider is on by default for save freq

set this to whatever value you want, that still falls within your maximum range EX: value=25,

Reference Line

Line #1227 is same as 1219 except for the maximum epoch you can go to.

EX: maximum=2500,

Reference Line

Line # 1230 is same as 1222 except for choosing what your default save number is on

i always set this to same as maximum. EX: value=2500,

Reference Line

Line # 1235 this is batch size

you have to figure out what your actual max is by trying to train, and setting it to whatever is the highest working value you can get so you dont ever run out of memory, by accidentally setting too high. EX: maximum=16,

Reference Line

Line # 1238 we ignore

Copy the first symbol on # 1243 to paste into # 1244, this makes the save only latest .ckpt enabled

With that same copied symbol paste it into # 1258 if you want a weights model to appear at every epoch checkpoint, this is what i always have on, sure it wastes some storage but its so you can always get a model that isnt "overtrained" symbols should be this EX:

Reference Line to copy the first icon from
Reference Line to paste to 1
Reference Line to paste to 2

Now for # 1238 that we ignored, if you want to set your default batch size go to # 112

More math fun, take your maximum amount of vram for your card, lets say its 24gb, and divide until you get to a value that you want, example 24gb but you wanted a batch size of 16 to be your default youd divide by 1.5, if you wanted 12, then you'd divide by 2 and so on. if 8gb of vram just copy whats below, and never change it.

EX: default_batch_size = min(mem) // 1.3
Should give you batch size of 6 on 8gb of vram, if you do want to do more change 1.3 to 1.5, which makes batchsize become 5.
Reference Line

Edit
Pub: 25 Oct 2023 23:30 UTC
Edit: 28 Jul 2024 20:09 UTC
Views: 2153