DreamVoice / examples /openvoice_example.py
Higobeatz's picture
freevc plugin
6e863db
raw
history blame contribute delete
916 Bytes
import torch
from dreamvoice import DreamVoice_Plugin
from dreamvoice.openvoice_utils import se_extractor
from openvoice.api import ToneColorConverter
# init dreamvoice
dreamvoice = DreamVoice_Plugin(device='cuda')
# init openvoice
ckpt_converter = 'checkpoints_v2/converter'
device = "cuda:0" if torch.cuda.is_available() else "cpu"
openvoice = ToneColorConverter(f'{ckpt_converter}/config.json', device=device)
openvoice.load_ckpt(f'{ckpt_converter}/checkpoint.pth')
# generate speaker
prompt = 'female voice, bright and cute'
target_se = dreamvoice.gen_spk(prompt)
target_se = target_se.unsqueeze(-1)
# content source
source_path = 'segment_1.mp3'
source_se = se_extractor(source_path, openvoice).to(device)
# voice conversion
encode_message = "@MyShell"
openvoice.convert(
audio_src_path=source_path,
src_se=source_se,
tgt_se=target_se,
output_path='output.wav',
message=encode_message)