NeoPy commited on
Commit
51df0e8
·
verified ·
1 Parent(s): f742e49

Update lib/rvc.py

Browse files
Files changed (1) hide show
  1. lib/rvc.py +10 -23
lib/rvc.py CHANGED
@@ -237,8 +237,7 @@ def voice_change(voice_model, vocals_path, output_path, pitch_change, f0_method,
237
  """
238
  Convert the input vocals using the specified RVC model.
239
  """
240
- rvc_model_path, rvc_index_path = get_rvc_model(voice_model, is_webui)
241
-
242
  inferred_audio = infer_audio(
243
  MODEL_NAME=voice_model,
244
  SOUND_PATH=vocals_path,
@@ -340,48 +339,36 @@ def song_cover_pipeline(song_input, voice_model, pitch_change, keep_files,
340
  f'{base_song_name}_lead_{voice_model}_p{pitch_change}_i{index_rate}_fr{filter_radius}_'
341
  f'rms{rms_mix_rate}_pro{protect}_{f0_method}{algo_suffix}.wav'
342
  )
343
- ai_backing_path = os.path.join(
344
- song_dir,
345
- f'{base_song_name}_backing_{voice_model}_p{pitch_change}_i{index_rate}_fr{filter_radius}_'
346
- f'rms{rms_mix_rate}_pro{protect}_{f0_method}{algo_suffix}.wav'
347
- )
348
  ai_cover_path = os.path.join(song_dir, f'{base_song_name} ({voice_model} Ver).{output_format}')
349
- ai_cover_backing_path = os.path.join(song_dir, f'{base_song_name} ({voice_model} Ver With Backing).{output_format}')
350
-
351
  if not os.path.exists(ai_vocals_path):
352
- display_progress('[~] Converting lead voice using RVC...', 0.5, is_webui, progress)
353
  voice_change(voice_model, main_vocals_dereverb_path, ai_vocals_path, pitch_change,
354
  f0_method, index_rate, filter_radius, rms_mix_rate, protect, crepe_hop_length, is_webui)
355
 
356
- display_progress('[~] Converting backing voice using RVC...', 0.65, is_webui, progress)
357
- voice_change(voice_model, backup_vocals_path, ai_backing_path, pitch_change,
358
- f0_method, index_rate, filter_radius, rms_mix_rate, protect, crepe_hop_length, is_webui)
359
-
360
  display_progress('[~] Applying audio effects to Vocals...', 0.8, is_webui, progress)
361
  ai_vocals_mixed_path = add_audio_effects(ai_vocals_path, reverb_rm_size, reverb_wet, reverb_dry, reverb_damping)
362
- ai_backing_mixed_path = add_audio_effects(ai_backing_path, reverb_rm_size, reverb_wet, reverb_dry, reverb_damping)
363
-
364
  if pitch_change_all != 0:
365
  display_progress('[~] Applying overall pitch change', 0.85, is_webui, progress)
366
  instrumentals_path = pitch_shift(instrumentals_path, pitch_change_all)
367
- backup_vocals_path = pitch_shift(backup_vocals_path, pitch_change_all)
368
-
369
  display_progress('[~] Combining AI Vocals and Instrumentals...', 0.9, is_webui, progress)
370
  combine_audio([ai_vocals_mixed_path, backup_vocals_path, instrumentals_path],
371
  ai_cover_path, main_gain, backup_gain, inst_gain, output_format)
372
- combine_audio([ai_vocals_mixed_path, ai_backing_mixed_path, instrumentals_path],
373
- ai_cover_backing_path, main_gain, backup_gain, inst_gain, output_format)
374
-
375
  if not keep_files:
376
  display_progress('[~] Removing intermediate audio files...', 0.95, is_webui, progress)
377
- intermediate_files = [vocals_path, main_vocals_path, ai_vocals_mixed_path, ai_backing_mixed_path]
378
  if pitch_change_all != 0:
379
  intermediate_files += [instrumentals_path, backup_vocals_path]
380
  for file in intermediate_files:
381
  if file and os.path.exists(file):
382
  os.remove(file)
383
 
384
- return ai_cover_path, ai_cover_backing_path
385
 
386
  except Exception as e:
387
  raise_exception(str(e), is_webui)
 
237
  """
238
  Convert the input vocals using the specified RVC model.
239
  """
240
+
 
241
  inferred_audio = infer_audio(
242
  MODEL_NAME=voice_model,
243
  SOUND_PATH=vocals_path,
 
339
  f'{base_song_name}_lead_{voice_model}_p{pitch_change}_i{index_rate}_fr{filter_radius}_'
340
  f'rms{rms_mix_rate}_pro{protect}_{f0_method}{algo_suffix}.wav'
341
  )
342
+
 
 
 
 
343
  ai_cover_path = os.path.join(song_dir, f'{base_song_name} ({voice_model} Ver).{output_format}')
344
+
 
345
  if not os.path.exists(ai_vocals_path):
346
+ display_progress('[~] Converting voice using RVC...', 0.5, is_webui, progress)
347
  voice_change(voice_model, main_vocals_dereverb_path, ai_vocals_path, pitch_change,
348
  f0_method, index_rate, filter_radius, rms_mix_rate, protect, crepe_hop_length, is_webui)
349
 
350
+
 
 
 
351
  display_progress('[~] Applying audio effects to Vocals...', 0.8, is_webui, progress)
352
  ai_vocals_mixed_path = add_audio_effects(ai_vocals_path, reverb_rm_size, reverb_wet, reverb_dry, reverb_damping)
353
+
 
354
  if pitch_change_all != 0:
355
  display_progress('[~] Applying overall pitch change', 0.85, is_webui, progress)
356
  instrumentals_path = pitch_shift(instrumentals_path, pitch_change_all)
357
+
 
358
  display_progress('[~] Combining AI Vocals and Instrumentals...', 0.9, is_webui, progress)
359
  combine_audio([ai_vocals_mixed_path, backup_vocals_path, instrumentals_path],
360
  ai_cover_path, main_gain, backup_gain, inst_gain, output_format)
361
+
 
 
362
  if not keep_files:
363
  display_progress('[~] Removing intermediate audio files...', 0.95, is_webui, progress)
364
+ intermediate_files = [vocals_path, main_vocals_path, ai_vocals_mixed_path]
365
  if pitch_change_all != 0:
366
  intermediate_files += [instrumentals_path, backup_vocals_path]
367
  for file in intermediate_files:
368
  if file and os.path.exists(file):
369
  os.remove(file)
370
 
371
+ return ai_cover_path
372
 
373
  except Exception as e:
374
  raise_exception(str(e), is_webui)