Spaces:
Sleeping
Sleeping
Create voice_cloner.py
Browse files- voice_cloner.py +17 -0
voice_cloner.py
ADDED
@@ -0,0 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from transformers import BarkModel, BarkProcessor
|
2 |
+
import torch
|
3 |
+
|
4 |
+
# You could switch to xtts-v2 or Tortoise if needed
|
5 |
+
def clone_and_generate_text(text, reference_audio_path, output_path="clone_output.wav"):
|
6 |
+
processor = BarkProcessor.from_pretrained("suno/bark")
|
7 |
+
model = BarkModel.from_pretrained("suno/bark").cuda()
|
8 |
+
|
9 |
+
# Preprocess input
|
10 |
+
inputs = processor(text=text, voice_preset="v2/en_speaker_9", return_tensors="pt").to("cuda")
|
11 |
+
|
12 |
+
# Generate speech
|
13 |
+
speech = model.generate(**inputs)
|
14 |
+
|
15 |
+
# Save output
|
16 |
+
torchaudio.save(output_path, speech.cpu(), 22050)
|
17 |
+
return output_path
|