Todos los artículos

· Casimiro Ferreira· 4 min de lectura

Presentamos phoonnx: El Nuevo Framework de TTS de OpenVoiceOS

  • phoonnx
  • TTS
  • OVOS
  • ONNX
  • Phonemization

Este blog se publicó originalmente en el blog de OpenVoiceOS

phoonnx es ahora el framework principal de Text-to-Speech de OpenVoiceOS — una stack completa de entrenamiento e inferencia construida sobre VITS y ONNX, diseñada para voces consistentes y listas para offline en todos los idiomas que soportamos.

Escúchalo en acción: la Demo de Voces ejecuta las voces phoonnx en vivo en tu navegador — onnxruntime-web, sin servidor.


Nuevo Idioma: ¡Presentamos el Euskera!

Sobre la base de nuestro trabajo anterior en Crear Voces Sintéticas desde Cero y de nuestra Colaboración en TTS Árabe, las incorporaciones más recientes a nuestro soporte de idiomas son voces para euskera (eu-ES).

Esto incluye tanto la voz masculina (Miro) como la voz femenina (Dii), impulsando nuestra misión de dar soporte incluso a idiomas de pocos recursos que carecen de opciones de TTS abiertas y de alta calidad.

Anteriormente solo estaba disponible una voz femenina robótica, a través del plugin AhoTTS creado en colaboración con ILENIA.

Escucha los resultados: Ejemplos de las nuevas voces de código abierto en euskera.

Miro (Voz Masculina): Escuchar a Miro

Dii (Voz Femenina): Escuchar a Dii


Una Identidad de Voz Coherente en Todos los Idiomas

OpenVoiceOS necesita una voz de marca consistente: una persona masculina y femenina estándar que suene igual independientemente del idioma para el que esté configurado el asistente. Un usuario que configura OpenVoiceOS en Lisboa y más tarde cambia al alemán debería oír al mismo hablante familiar.

TigreGotico construye y mantiene el motor phoonnx, contribuye con los datasets de entrenamiento abiertos y entrena las voces multilingües por defecto de OVOS — Miro (masculino) y Dii (femenino) — que cumplen este compromiso.


Flexibilidad de fonemizador

phoonnx es más que una simple herramienta de inferencia; es un framework completo de entrenamiento e inferencia construido sobre la robusta arquitectura VITS. Esta doble capacidad nos permite crear prototipos, entrenar e implementar voces de alta calidad rápidamente.

Una clave de esta flexibilidad es la capacidad de soportar diversos fonemizadores. Un fonemizador (o modelo de G2P - Grafema-a-Fonema) convierte el texto escrito en la secuencia de unidades de sonido (fonemas) que el modelo de TTS pronuncia. Idiomas diferentes pueden requerir fonemizadores diferentes y especializados para un habla precisa.

  • Compatibilidad con eSpeak: Una funcionalidad central es que los modelos phoonnx son totalmente compatibles con el runtime del popular motor Piper TTS, siempre que hayan sido entrenados usando el ampliamente disponible fonemizador eSpeak. Esto garantiza una implementación sencilla dentro del ecosistema OVOS existente y en proyectos de terceros como Home Assistant.
  • Soporte para Fonemizadores Personalizados: El framework no se limita a eSpeak. Por ejemplo, los modelos gallegos de alta calidad desarrollados por Proxecto Nós usando el fonemizador Cotovia son totalmente compatibles y pueden usarse con el pipeline phoonnx.

Esta flexibilidad nos permite integrar y beneficiarnos del trabajo de otros proyectos de código abierto. De hecho, para la inferencia, phoonnx puede usar con éxito modelos originalmente entrenados por otros proyectos, incluidos Coqui, Mimic3 y Piper.

Próximo Paso: Modelos de G2P Basados en ByT5

Mirando hacia el futuro, trabajamos constantemente para mejorar la precisión del G2P, especialmente para idiomas de pocos recursos. Actualmente estamos desarrollando y probando modelos de G2P de nueva generación basados en la potente arquitectura ByT5. Estos modelos basados en transformers prometen ofrecer una fonemización más precisa y robusta en una gama más amplia de idiomas.

Puedes seguir su desarrollo aquí: Colección de Modelos de G2P.

En un futuro próximo se creará un plugin de TTS dedicado de OVOS para phoonnx y se convertirá en el predeterminado de OpenVoiceOS, reemplazando los plugins anteriores: ovos-tts-plugin-piper y ovos-tts-plugin-nos.

Mientras tanto puedes probar las nuevas voces a través del plugin existente ovos-tts-plugin-piper

Todo lo que necesitas hacer es pasar las urls de los modelos en mycroft.conf

  "tts": {
    "module": "ovos-tts-plugin-piper",
    "ovos-tts-plugin-piper": {
      "model": "https://huggingface.co/OpenVoiceOS/phoonnx_eu-ES_miro_espeak/resolve/main/miro_eu-ES.onnx",
      "model_config": "https://huggingface.co/OpenVoiceOS/phoonnx_eu-ES_miro_espeak/resolve/main/miro_eu-ES.piper.json"
    }
  }

Informe de Progreso: Idiomas Disponibles

El trabajo colectivo de los equipos de OpenVoiceOS y TigreGotico ha dado como resultado una biblioteca de modelos de TTS de código abierto en rápida expansión.

Idiomas Actualmente Soportados:

  • Árabe
  • Euskera
  • Neerlandés
  • Inglés (EE. UU./RU)
  • Francés
  • Alemán
  • Italiano
  • Portugués (Brasil/Portugal)
  • Español

Participa y Encuentra los Modelos

Invitamos a la comunidad a explorar y utilizar estos nuevos recursos.

RecursoDescripciónEnlace
Modelos PhoonnxLos nuevos modelos de TTS entrenados con phoonnx en formato ONNX.phoonnx-tts-models
Voces Piper/PhoonnxLa colección completa de voces de OpenVoiceOS compatibles con Piper.pipertts-voices
Datasets AbiertosDatasets usados para entrenar estas voces, promoviendo la investigación de datos abiertos.tts-datasets


Explora el catálogo completo de modelos y datasets en Hugging Face: TigreGotico · OpenVoiceOS. Para contribuir con datos, abre una issue o discusión en phoonnx.