Tu Nombre commited on
Commit
b62c1de
·
1 Parent(s): 2a5d662

rotacion aleatoria de voces

Browse files
Files changed (1) hide show
  1. cliente_template.py +23 -5
cliente_template.py CHANGED
@@ -21,10 +21,22 @@ except:
21
 
22
  # Mapeo de voces edge-tts
23
  VOCES = {
24
- "es": {"masculina": "es-ES-AlvaroNeural", "femenina": "es-ES-ElviraNeural"},
25
- "en": {"masculina": "en-US-GuyNeural", "femenina": "en-US-JennyNeural"},
26
- "pt": {"masculina": "pt-BR-AntonioNeural", "femenina": "pt-BR-FranciscaNeural"},
27
- "fr": {"masculina": "fr-FR-HenriNeural", "femenina": "fr-FR-DeniseNeural"}
 
 
 
 
 
 
 
 
 
 
 
 
28
  }
29
  CLIENT_EMAIL = "EMAIL_PLACEHOLDER"
30
  HF_REPO = "REPO_PLACEHOLDER"
@@ -96,7 +108,13 @@ async def pipeline():
96
  if voz_ia_on:
97
  idioma_v = CONFIG.get("idioma", "es")
98
  genero_v = CONFIG.get("voz_genero", "masculina")
99
- voz_seleccionada = VOCES.get(idioma_v, VOCES["es"]).get(genero_v, "es-ES-AlvaroNeural")
 
 
 
 
 
 
100
  vel = CONFIG.get("velocidad_voz", 1.0)
101
  rate_str = f"+{int((vel-1)*100)}%" if vel >= 1 else f"-{int((1-vel)*100)}%"
102
  await edge_tts.Communicate(guion, voz_seleccionada, rate=rate_str).save("voz.mp3")
 
21
 
22
  # Mapeo de voces edge-tts
23
  VOCES = {
24
+ "es": {
25
+ "masculina": ["es-ES-AlvaroNeural", "es-MX-JorgeNeural", "es-AR-TomasNeural", "es-CO-GonzaloNeural"],
26
+ "femenina": ["es-ES-ElviraNeural", "es-MX-DaliaNeural", "es-AR-ElenaNeural", "es-CO-SalomeNeural"]
27
+ },
28
+ "en": {
29
+ "masculina": ["en-US-GuyNeural", "en-US-DavisNeural", "en-GB-RyanNeural", "en-AU-WilliamNeural"],
30
+ "femenina": ["en-US-JennyNeural", "en-US-AriaNeural", "en-GB-SoniaNeural", "en-AU-NatashaNeural"]
31
+ },
32
+ "pt": {
33
+ "masculina": ["pt-BR-AntonioNeural", "pt-BR-FabioNeural"],
34
+ "femenina": ["pt-BR-FranciscaNeural", "pt-BR-BrendaNeural"]
35
+ },
36
+ "fr": {
37
+ "masculina": ["fr-FR-HenriNeural", "fr-FR-JeromeNeural"],
38
+ "femenina": ["fr-FR-DeniseNeural", "fr-FR-EloiseNeural"]
39
+ }
40
  }
41
  CLIENT_EMAIL = "EMAIL_PLACEHOLDER"
42
  HF_REPO = "REPO_PLACEHOLDER"
 
108
  if voz_ia_on:
109
  idioma_v = CONFIG.get("idioma", "es")
110
  genero_v = CONFIG.get("voz_genero", "masculina")
111
+ import random as _rnd
112
+ voces_disponibles = VOCES.get(idioma_v, VOCES["es"]).get(genero_v, ["es-ES-AlvaroNeural"])
113
+ if isinstance(voces_disponibles, str):
114
+ voz_seleccionada = voces_disponibles
115
+ else:
116
+ voz_seleccionada = _rnd.choice(voces_disponibles)
117
+ log(f"Voz elegida: {voz_seleccionada}")
118
  vel = CONFIG.get("velocidad_voz", 1.0)
119
  rate_str = f"+{int((vel-1)*100)}%" if vel >= 1 else f"-{int((1-vel)*100)}%"
120
  await edge_tts.Communicate(guion, voz_seleccionada, rate=rate_str).save("voz.mp3")