File size: 936 Bytes
cc98606
1ae8d88
 
 
cc98606
1ae8d88
 
 
cc98606
1ae8d88
 
 
 
 
 
 
 
 
 
 
 
 
 
cc98606
1ae8d88
60d096c
cc98606
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import gradio as gr
from transformers import VitsModel, AutoTokenizer
import torch
import scipy.io.wavfile

# Charger le modèle Vits
model = VitsModel.from_pretrained("joefox/tts_vits_ru_hf")
tokenizer = AutoTokenizer.from_pretrained("joefox/tts_vits_ru_hf")

def generate_audio(text):
    # Prétraiter le texte
    text = text.lower()
    inputs = tokenizer(text, return_tensors="pt")
    inputs['speaker_id'] = 3
    
    # Générer l'audio
    with torch.no_grad():
        output = model(**inputs).waveform
        
    # Enregistrer l'audio dans un fichier
    scipy.io.wavfile.write("output.wav", rate=model.config.sampling_rate, data=output[0].cpu().numpy())
    
    return "output.wav"

# Créer une interface Gradio
iface = gr.Interface(fn=generate_audio, inputs="text", outputs="audio", title="Text to Speech (Vits russe)", description="Saisissez votre texte russe pour convertir en discours audio russe.")
iface.launch()