El sintetizador de voz de Mozilla: TTS

Qu茅 es TTS Mozilla 馃

TTS es una herramienta, un toolkit y una infraestructura creada en lenguaje Python que es capaz de sintetizar voz a partir de texto, de manera natural imitando el tono humano, sin parecer as铆 una m谩quina qui茅n “habla”. Desarrollado por la Fundaci贸n Mozilla 馃 (La fundaci贸n detr谩s de Firefox).

TTS Mozilla es State of Art ahora mismo en el campo de la generaci贸n de voz humana, siendo muy superior a la mayor铆a de alternativas que se han usado estos a帽os (Loquendo, Festival, etc.). Incluso supera a la voz de los asistente Google, Cortana o Alexa.

He aqu铆 un ejemplo que he creado para Makiai

Esto es posible con la integraci贸n de modelos de extremo a extremo como VITS, que ha revolucionado la industria.

Con TTS de Mozilla puede sintetizar voz en m谩s de 20 idiomas y usando muchos modelos, no solo VITS. Adem谩s de ser potente y f谩cil de usar, no consume recursos de manera excesiva como otras opciones punteras.

Por si esto fuera poco es OpenSource馃, es decir, de c贸digo abierto y FreeSoftware, por lo que se puede usar con pocas limitaciones legales como veremos m谩s adelante en el apartado de la licencia.

C贸mo instalar TTS Mozilla en Linux 馃崳

Aqu铆 voy a explicar c贸mo instalar esta herramienta en Linux, concretamente en Fedora, por lo que el tutorial tambi茅n sirve para otros SO Linux basados en RPM como CentOS. Si usas una distro con paqueter铆a DEB como Debian o Ubuntu, entonces lo 煤nico que tienes que hacer para seguir este tutorial es cambiar el instalador, cada vez que veas “dnf install” c谩mbialo por “apt-get”.

馃毀 Una cosa m谩s: si no tienes 8GB de memoria RAM o m谩s es posible que tu ordenador no pueda instalarlo ni ejecutarlo.

Dicho esto empezemos…馃槑

Paso 1: comprobar la versi贸n de python

Abre la terminal y ejecuta el siguiente comando:

python3 --version

Es para comprobar la versi贸n de Python, si es inferior a la versi贸n 3.7, actualizalo.

Paso 2: Instala pips

Pips nos sirve para instalar programas en Python. Ejecuta el siguiente comando en la terminal:

sudo dnf install pips

Paso 3: Instala TTS de Mozilla

pip install TTS

Puedes preparar un caf茅 mientras se instala pues puede llevar m谩s de 10 minutos perfectamente. 鈽

隆Fin de la instalaci贸n! Ahora puedes usarlo.

C贸mo usar TTS 馃帳

Se puede usar para muchas cosas, incluso para entrenarlo como sintetizador de voz o usar tu propio modelo, o clonar voces, etc. Pero su funci贸n principal y la que nos ocupa en este art铆culo es sintetizar voz. A su vez hay varias maneras de usarlo y yo voy a mostrar la que creo m谩s sencilla.

Simplemente usaremos un peque帽o script:

tts --text "Texto que quieres sintetizar" --model_name "Aqu铆vaelmodelo" --out_path "audiotts.wav"

Lo 煤nico que tienes que hacer es ejecutar ese comando en la terminal y sintetizar谩 el texto a audio y aparecer谩 en la carpeta un archivo de audio en fotmato wav. Si est谩s en Linux no te apures, con cambiar .wav por .mp3 un archivo ya queda aplicado el formato.

Y te preguntar谩s, 驴c贸mo se que modelos hay? Muy sencillo. Abre la terminal y ejecuta el siguiente comando y aparecer谩n todos los modelos disponibles en TTS:

tts --list_models

Son muchos modelos. Cuando ejecutas TTS para sintetizar un texto a audio descargar谩 el modelo elegido y lo usar谩. Si ya lo has usado alguna vez entonces no descargar谩 de nuevo ese modelo obviamente. Los modelos ocupan unos cientos de MB cada uno. As铆 pues solo tienes que elegir un modelo de la lista e introducirlo en el comando, como ver谩s los modelos de la lista tienen en medio /es/, /en/, /de/, etc. Son los idiomas en los que sintetiza bien audio, algunos modelos est谩n para varios idiomas, como dije al principio podremos sintetizar hasta en 20 idiomas. 驴Y si me descargo un modelo en ingl茅s y sintetizo texto en castellano que ocurre? Nada, que la calidad ser谩 peor y tenr谩 acento ingl茅s.

Para no complicar la vida al lector dejo aqu铆 el que creo que es el mejor modelo en castellano, VITS. Puedes usarlo usando el siguiente comando:

tts --text "Texto de prueba de la web Makiai.com" --model_name "tts_models/es/css10/vits" --out_path "makiai.wav"

Tardar谩 unos segundos o minutos dependiendo de c贸mo sea de largo el texto que ejecutes y la potencia de tu ordenador.

Y eso es todo.

Licencia de uso de TTS Mozilla

Usa una licencia MPL-2.0 license.

Resumen: Puedes usarlo casi como te de la gana, puedes comercializarlo, modificarlo, usarlo en tu empresa, etc.

La MPL-2.0 (Mozilla Public License 2.0) es una licencia de c贸digo abierto con copyleft d茅bil que permite el uso, modificaci贸n, distribuci贸n y uso de patentes de software. Tambi茅n permite el uso comercial y privado. La licencia tiene ciertas limitaciones y condiciones para garantizar la disponibilidad del c贸digo fuente y la preservaci贸n de los derechos de autor y las notificaciones de licencia.

Resumen de la MPL-2.0:

  1. Permisos:
    • Uso comercial
    • Modificaci贸n
    • Distribuci贸n
    • Uso de patentes
    • Uso privado
  2. Limitaciones:
    • Responsabilidad
    • Uso de marcas comerciales
    • Garant铆a
  3. Condiciones:
    • Divulgaci贸n del c贸digo fuente
    • Notificaci贸n de licencia y derechos de autor
    • Uso de la misma licencia (archivo)

Ejemplos de uso de la licencia MPL-2.0:

  1. Un desarrollador crea un software bajo la licencia MPL-2.0. Otros desarrolladores pueden utilizar, modificar y distribuir este software, pero deben mantener la misma licencia para los archivos modificados y proporcionar el c贸digo fuente de esos archivos.
  2. Un desarrollador crea una biblioteca de software bajo MPL-2.0 y otro desarrollador la integra en una aplicaci贸n m谩s grande. La aplicaci贸n m谩s grande puede distribuirse bajo t茅rminos diferentes y sin el c贸digo fuente de los archivos adicionales, siempre que se respeten las condiciones de la MPL-2.0 para los archivos de la biblioteca original.
  3. Una empresa utiliza un software bajo MPL-2.0 para sus operaciones internas. La empresa debe cumplir con las condiciones de la licencia, como proporcionar el c贸digo fuente de las modificaciones realizadas al software y mantener las notificaciones de derechos de autor y licencia en los archivos modificados. Sin embargo, la empresa no est谩 obligada a compartir el c贸digo fuente de los archivos adicionales creados para la aplicaci贸n interna.

Enlaces de inter茅s

Like