GUÍA

Texto a voz en Raspberry Pi con voces naturales

Una Raspberry Pi que habla convierte un proyecto casero en algo que usa toda la familia: un timbre que saluda a las visitas, el tiempo cada mañana, un sensor que pide agua para las plantas, un juego de preguntas para niños. Las voces habituales en la Pi, espeak-ng y pico2wave, se instalan fácil pero suenan robóticas.

El motor gratuito SuperClonica da a la Pi voces neuronales naturales en 31 idiomas. Esta guía muestra tres formas de usarlo, desde archivos generados de antemano hasta el motor en la propia Pi, y dice con honestidad cuál conviene a cada proyecto.

Tres formas de hacer hablar a una Pi

Si tu proyecto solo dice unas pocas frases fijas, los archivos generados antes son todo lo que necesitas.

  • Archivos generados antes: genera las frases en tu ordenador, cópialas a la Pi y reprodúcelas con aplay. La forma más rápida y fiable.
  • Un servidor en tu red: un PC o servidor doméstico ejecuta la imagen Docker, la Pi envía el texto y reproduce la respuesta. Texto nuevo en cualquier momento.
  • El motor en la Pi: el paquete de Python se instala en una Pi 4 o Pi 5 con el sistema de 64 bits. Más lento, pero todo sin conexión en una sola placa.
  • Las voces hablan 31 idiomas; el chino aún no está disponible.

Escucha las voces gratis

En la página de cualquier voz, escribe una frase que dirá tu Pi, de 30 a 100 caracteres, elige el idioma y pulsa el botón para generarla. En unos segundos oyes cómo sonará tu proyecto y puedes descargar el archivo, sin cuenta.

Pide la voz a un servidor de tu red

Mantén el servidor en tu red doméstica o detrás de una VPN, y nunca lo abras a internet sin clave.

  • En un PC o servidor doméstico con Docker, inicia el servidor: docker run -d -p 8000:8000 -v superclonica-models:/models superclonica/superclonica:cpu. La imagen está hecha para procesadores x86-64, así que no funciona en la propia Pi.
  • En la Pi, pide la voz y reprodúcela: curl -s -X POST http://192.168.1.20:8000/synthesize -H "Content-Type: application/json" -d '{"text": "Las plantas necesitan agua.", "voice": "F1", "lang": "es"}' -o /tmp/say.wav && aplay /tmp/say.wav
  • Define SUPERCLONICA_API_KEY en el servidor y añade -H "Authorization: Bearer TU-CLAVE" a la petición.
  • Una frase corta tarda bastante menos de un segundo en un procesador de escritorio normal, más el tiempo de red.

El motor en la propia Pi

En Raspberry Pi OS de 64 bits, crea primero un entorno virtual, porque el Python del sistema rechaza las instalaciones con pip: python3 -m venv ~/tts, y luego ~/tts/bin/pip install superclonica-cpu. Después genera y reproduce una frase: ~/tts/bin/superclonica --text "¡Buenos días! Es hora de desayunar." --voice F1 --lang es --output hello.wav && aplay hello.wav. La primera vez se descarga el modelo, unos 385 MB. Todas las bibliotecas del motor tienen versión para el procesador ARM de 64 bits de la Pi, pero no hemos medido su velocidad en una Pi: cuenta con que sea varias veces más lenta que un ordenador de escritorio, y genera una sola vez las frases que se repiten.

Proyectos que hablan

Una tarea de cron puede leer el tiempo o la agenda cada mañana, un sensor de movimiento puede saludar a quien entra y un botón puede contar un chiste al azar a los niños. Para un proyecto que vendas o muestres en público, usa una voz sobre la que tengas derechos: las diez voces de serie del modelo, de M1 a M5 y de F1 a F5, o tu propia voz entrenada en el estudio de SuperClonica a partir de la grabación de un locutor que dio su consentimiento. Las voces de personajes del catálogo son creaciones de fans y sirven para proyectos personales.