-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgenerate_audios.py
76 lines (66 loc) · 2.64 KB
/
generate_audios.py
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
from gtts import gTTS
import os
import random
# Lista de palabras que necesitas convertir a audio
words = [
'Tambor', 'Auto', 'Avión', 'Tijeras', 'Robot', 'Lámpara', 'Mate', 'Martillo', 'Guante',
'Gato', 'Perro', 'León', 'Elefante', 'Tigre', 'Mono', 'Pájaro', 'Rana', 'Pez',
'Uno', 'Dos', 'Tres', 'Cuatro', 'Cinco', 'Seis', 'Siete', 'Ocho', 'Nueve',
'Círculo', 'Cuadrado', 'Triángulo', 'Rectángulo', 'Pentágono', 'Hexágono', 'Estrella', 'Rombo', 'Óvalo'
]
# Frases adicionales para felicitaciones y error
feedback_words = {
'correct': [
'¡Bien hecho! Has acertado!',
'¡Excelente! Sigue así.',
'¡Correcto! Muy buen trabajo.',
'¡Perfecto! Lo hiciste genial.',
'¡Bravo! Has elegido bien.'
],
'incorrect': [
'Uf, inténtalo de nuevo.',
'No es correcto, prueba otra vez.',
'¡Casi! Sigue intentándolo.',
'No acertaste, intenta otra vez.',
'Esa no es la opción, prueba de nuevo.'
]
}
# Frases para las categorías y sus conectores
categories = {
'objetos': 'los',
'animales': 'los',
'números': 'los',
'figuras': 'las'
}
# Directorio de destino para guardar los audios
audio_dir = 'audio'
# Crear el directorio de audio si no existe
if not os.path.exists(audio_dir):
os.makedirs(audio_dir)
# Función para generar audios si no existen
def generate_audio(word, text, file_path):
if not os.path.exists(file_path):
tts = gTTS(text=text, lang='es') # Elige el idioma, 'es' para español
tts.save(file_path)
print(f"Audio generado para: {word} -> {file_path}")
else:
print(f"Audio ya existente para: {word}, omitiendo...")
# Generar audios para las palabras del juego
for word in words:
audio_file_path = os.path.join(audio_dir, f"{word.lower()}.mp3")
generate_audio(word, word, audio_file_path)
# Generar audios para las felicitaciones y el error
for key, phrases in feedback_words.items():
for i, text in enumerate(phrases):
audio_file_path = os.path.join(audio_dir, f"{key}_{i}.mp3")
generate_audio(f"{key}_{i}", text, audio_file_path)
# Generar audios para las categorías con el conector correcto
for category, connector in categories.items():
text = f"Vamos a aprender {connector} {category}"
audio_file_path = os.path.join(audio_dir, f"categoria_{category}.mp3")
generate_audio(f"categoria_{category}", text, audio_file_path)
# Generar audios para la instrucción "BUSCA EL:"
for word in words:
text = f"Busca el {word}"
audio_file_path = os.path.join(audio_dir, f"busca_{word.lower()}.mp3")
generate_audio(f"busca_{word.lower()}", text, audio_file_path)