ABANDA-OMGBA-Ulrich-Michel commited on
Commit
be93553
1 Parent(s): 00b651f

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +35 -0
app.py ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import torch
2
+ from transformers import VitsModel, AutoTokenizer
3
+ import numpy as np
4
+ import scipy.io.wavfile as wavfile
5
+
6
+ def yes(texte):
7
+ model = VitsModel.from_pretrained("facebook/mms-tts-eng")
8
+ tokenizer = AutoTokenizer.from_pretrained("facebook/mms-tts-eng")
9
+
10
+ text = texte
11
+ inputs = tokenizer(text, return_tensors="pt")
12
+
13
+ with torch.no_grad():
14
+ output = model(**inputs).waveform
15
+
16
+ # Normaliser les données audio dans la plage [-1, 1]
17
+ output_normalized = output / torch.max(torch.abs(output))
18
+
19
+ # Convertir en tableau numpy avec le bon type
20
+ audio_data = output_normalized.squeeze().cpu().numpy()
21
+
22
+ # Mettre à l'échelle dans la plage de valeurs acceptées par WAV
23
+ audio_data_scaled = np.int16(audio_data * 32767)
24
+
25
+ # Enregistrer les données audio dans un fichier WAV
26
+ wavfile.write("techno.wav", rate=model.config.sampling_rate, data=audio_data_scaled)
27
+
28
+ with open("techno.wav",'rb') as audio:
29
+ audio_data = audio.read()
30
+
31
+ return audio_data
32
+
33
+ text = gr.Interface(fn=yes, inputs='text', outputs='audio')
34
+ text.launch(debug=True)
35
+