Real-Time-Voice-Cloning: el proyecto de código abierto que enseñó a una generación cómo funciona realmente la clonación de voz
- ¿Qué es Real-Time-Voice-Cloning?
- Ventajas funcionales de Real-Time-Voice-Cloning
- Cómo funciona realmente la arquitectura de tres etapas de SV2TTS
- Primeros pasos con Real-Time-Voice-Cloning en local
- Consejos para obtener mejores resultados con Real-Time-Voice-Cloning
- Real-Time-Voice-Cloning frente a proyectos de clonación de voz de código abierto más recientes
- Preguntas frecuentes
- Genera nuevas frases a partir de una voz de referencia en Echora
Convierte texto y grabaciones en audio listo para escuchar
Doblaje, stems, covers y efectos de sonido, todo en el navegador.
- Texto a voz, y también clonación de voz
- Separa pistas, o genera un cover
- Regístrate para escuchar primero y decidir después
Mucho antes de que las plataformas comerciales convirtieran la clonación de voz en una suscripción mensual, un proyecto gratuito enseñó a una generación de desarrolladores cómo funcionaba realmente por dentro. Real-Time-Voice-Cloning, creado por Corentin Jemine y publicado en GitHub, clona una voz a partir de una muestra corta mediante un proceso de tres etapas llamado SV2TTS. Se ha bifurcado, estudiado y utilizado como base tantas veces que, en la práctica, se ha convertido en el punto de referencia de la clonación de voz neuronal. No sería tu primera opción si hoy buscas resultados con calidad de producción, pero ejecutarlo y entender cómo está construido es casi un requisito previo para comprender todo lo que vino después.
¿Qué es Real-Time-Voice-Cloning?
Real-Time-Voice-Cloning es un proyecto gratuito y de código abierto para clonar voces, creado por Corentin Jemine (CorentinJ en GitHub) y basado en SV2TTS: una técnica de tres etapas para clonar una voz a partir de una muestra de audio corta, desarrollada originalmente por un equipo de investigación de Google en 2018. Su lema —«clona una voz en 5 segundos para generar cualquier discurso en tiempo real»— se quedó corto al describir la influencia que acabaría teniendo: ha acumulado más de 60.000 estrellas en GitHub y 9.400 forks, lo que lo convierte en una de las bases de código de clonación de voz más utilizadas y citadas jamás publicadas. Su legado va más allá del propio repositorio: el componente codificador se separó en un paquete independiente llamado Resemblyzer, que ahora se mantiene bajo la organización Resemble AI (la empresa para la que Jemine pasó a trabajar), y la técnica subyacente se adaptó en MockingBird, un fork muy utilizado centrado en el mandarín y creado específicamente para la clonación de voz en chino.
Ventajas funcionales de Real-Time-Voice-Cloning
- Completamente gratuito y ejecutado íntegramente en tu propio hardware. Sin cuenta, sin clave de API y sin coste por generación: todo se ejecuta localmente una vez instaladas las dependencias y descargados los modelos preentrenados.
- Una arquitectura realmente didáctica. Como el codificador, el sintetizador y el vocoder son módulos de Python separados que puedes inspeccionar, en lugar de un único modelo opaco, es una de las bases de código más accesibles para entender cómo funciona internamente la clonación de voz neuronal.
- El truco de aprendizaje por transferencia que hizo posible clonar voces a partir de muestras cortas. Este proyecto es una implementación funcional de la técnica que permitió generalizar la clonación a un hablante que el modelo nunca había escuchado durante el entrenamiento: la base conceptual sobre la que se construyen la mayoría de las herramientas comerciales de clonación posteriores.
- Una auténtica caja de herramientas, no solo scripts de entrenamiento.
demo_toolbox.pyproporciona una interfaz gráfica para grabar o cargar una muestra de voz, generar audio de voz e inspeccionar los embeddings resultantes, mientras quedemo_cli.pyofrece una vía de línea de comandos para automatizar el mismo proceso mediante scripts. - Un ecosistema de forks y derivados del que aprender. Su popularidad y su licencia permisiva han llevado a que forks de la comunidad como MockingBird lo amplíen a nuevos idiomas, con implementaciones de referencia funcionales más allá de la versión original centrada en el inglés.
- Modelos preentrenados disponibles sin tener que entrenarlos por tu cuenta. Puedes clonar una voz de inmediato utilizando los pesos preentrenados publicados por el autor y reservar el reentrenamiento completo para los casos en los que realmente necesites otro conjunto de datos de base u otro idioma.
Cómo funciona realmente la arquitectura de tres etapas de SV2TTS
La idea central de SV2TTS, y el motivo por el que este proyecto ya podía clonar una voz a partir de unos pocos segundos de audio en 2019, cuando la mayoría de los sistemas TTS necesitaban horas de voz transcrita por hablante, es un truco concreto de aprendizaje por transferencia: separar el problema de «cómo suena esta voz» del de «cómo conseguir que un modelo TTS lea texto con esa voz» y entrenar cada parte con el conjunto de datos que resulta fácil conseguir para ella.
El codificador se entrena como un modelo de verificación de hablantes: un sistema cuya única tarea es decidir si dos clips de audio corresponden a la misma persona o a personas diferentes, entrenado con conjuntos de datos como VoxCeleb1, que proporcionan audio de miles de hablantes sin necesidad de transcripciones palabra por palabra. Resolver esa tarea de verificación obliga al modelo a aprender una representación numérica compacta (un embedding) que recoge el carácter de una voz, independientemente de lo que se esté diciendo. Como este espacio de embeddings generaliza bien, puede producir una representación utilizable de una voz que el codificador nunca había encontrado, a partir de solo unos segundos de esa persona hablando.
El sintetizador es un modelo de secuencia a secuencia al estilo de Tacotron que recibe el texto junto con ese embedding del hablante y genera un espectrograma mel —una representación visual de la voz basada en frecuencias— condicionado por ambos. Entrenado con conjuntos de datos como LibriSpeech y VCTK, aprende a leer cualquier texto de una forma modulada por el embedding que reciba, lo que permite que un único sintetizador entrenado produzca voz con muchos timbres diferentes sin necesitar un modelo independiente para cada hablante.
El vocoder toma ese espectrograma mel y lo convierte en una forma de onda que se puede reproducir. El vocoder de este proyecto está basado en WaveRNN, una arquitectura neuronal elegida específicamente por su capacidad para generar audio a una velocidad suficiente para su uso en tiempo real, frente a los vocoders más lentos y con mayor latencia habituales en aquel momento. Como estas tres etapas se entrenan en gran medida de forma independiente —el codificador con un conjunto de datos de verificación de hablantes, el sintetizador con audio transcrito de varios hablantes y el vocoder con los espectrogramas resultantes—, se puede clonar una voz nueva durante la inferencia simplemente pasando una muestra corta por el codificador ya entrenado, sin reentrenar en absoluto el sintetizador ni el vocoder.
Primeros pasos con Real-Time-Voice-Cloning en local
- Clona el repositorio y prepara el entorno. El repositorio actual utiliza uv para gestionar el entorno de Python y las dependencias. Su configuración requiere Python 3.9 y PyTorch 1.10 tanto para CPU como para CUDA. uv crea el entorno adecuado al ejecutar un comando.
- Instala ffmpeg y uv. ffmpeg es necesario para leer archivos de audio. Después de instalar uv, ejecuta desde la raíz del repositorio el comando correspondiente de la tabla; uv se encargará de las dependencias de Python.
- Usa los modelos preentrenados. Los pesos del codificador, el sintetizador y el vocoder se descargan automáticamente la primera vez que se ejecuta el programa, por lo que no necesitas entrenarlos. Si falla la descarga automática, utiliza los enlaces manuales del README oficial.
- Ejecuta la caja de herramientas para una sesión interactiva.
demo_toolbox.pyabre una interfaz gráfica en la que puedes grabar o cargar una voz de referencia, generar audio a partir del texto que escribas e inspeccionar visualmente el embedding resultante. - O utiliza la CLI para automatizar el proceso mediante scripts.
demo_cli.pyejecuta el mismo proceso de codificador-sintetizador-vocoder desde la línea de comandos y resulta más adecuado que la caja de herramientas interactiva para integrarlo en un script más amplio. - Utiliza una GPU si piensas reentrenar algún modelo. La caja de herramientas por sí sola puede ejecutarse en hardware más modesto (un modo experimental de bajo consumo de memoria admite GPU con apenas unos 2GB de VRAM), pero reentrenar en serio cualquiera de los tres modelos se beneficia considerablemente de una GPU dedicada.
| Modo de uso | CPU | GPU NVIDIA |
|---|---|---|
| Herramienta gráfica | uv run --extra cpu demo_toolbox.py | uv run --extra cuda demo_toolbox.py |
| Ejemplo de línea de comandos | uv run --extra cpu demo_cli.py | uv run --extra cuda demo_cli.py |
Consejos para obtener mejores resultados con Real-Time-Voice-Cloning
- Ajusta tus expectativas antes de empezar. Incluso el autor original ha reconocido abiertamente que la calidad de salida queda por detrás de las alternativas comerciales y de código abierto modernas: plantéatelo como una forma de entender cómo funciona la clonación de voz, no de producir audio listo para publicar.
- Utiliza clips de referencia limpios y de un solo hablante. Como el codificador se entrenó con datos de verificación de hablantes relativamente limpios, el ruido de fondo o las voces superpuestas en la muestra de referencia degradan el embedding resultante de forma más perceptible que en sistemas más recientes y robustos.
- Inspecciona la visualización del embedding en la caja de herramientas antes de generar. El gráfico de embeddings de la interfaz puede revelar si un clip de referencia ha producido una representación deficiente o inusual; detectarlo ahí es más rápido que hacerlo después de escuchar una salida ininteligible del sintetizador.
- Empieza con los modelos preentrenados antes de intentar reentrenarlos. Basta con descargar el subconjunto train-clean-100 de LibriSpeech para experimentar con la caja de herramientas: deja las descargas completas de VoxCeleb1 y VCTK para cuando realmente tengas intención de reentrenar un modelo desde cero.
- Consulta MockingBird si tu idioma de destino no es el inglés. En lugar de intentar adaptar por tu cuenta los modelos originales entrenados en inglés a otro idioma, el fork existente centrado en el mandarín es un punto de partida más directo para ese caso concreto.
Real-Time-Voice-Cloning frente a proyectos de clonación de voz de código abierto más recientes
| Real-Time-Voice-Cloning (SV2TTS) | Proyectos de código abierto más recientes (p. ej., Coqui XTTS-v2, Chatterbox) | |
|---|---|---|
| Lanzamiento | 2019 | 2023–2025 |
| Mantenimiento | Arquitectura anterior; actualizaciones posteriores de dependencias, instalación y compatibilidad | Mantenimiento activo |
| Arquitectura | Codificador, sintetizador y vocoder separados (Tacotron + WaveRNN) | A menudo, arquitecturas de un único modelo de extremo a extremo o más integradas |
| Calidad zero-shot | Históricamente importante, pero anticuada según los estándares actuales | Claramente más natural y estable |
| Mejor uso hoy | Aprender de forma práctica cómo funciona la clonación de voz | Uso real en producción autoalojada o por aficionados |
Preguntas frecuentes
¿Qué es SV2TTS?
SV2TTS (Transfer Learning from Speaker Verification to Multispeaker Text-To-Speech Synthesis) es la técnica de tres etapas en la que se basa Real-Time-Voice-Cloning, desarrollada originalmente por un equipo de investigación de Google en 2018.
¿Se sigue manteniendo Real-Time-Voice-Cloning?
La arquitectura del modelo es antigua, pero el repositorio ha recibido actualizaciones posteriores de dependencias, instalación y compatibilidad. El autor también advierte que su calidad de audio queda por detrás de opciones más recientes, por lo que conviene evaluar si se ajusta a las necesidades de un proyecto de producción.
¿Cuánto audio necesita Real-Time-Voice-Cloning para clonar una voz?
Tan solo unos segundos, según el lema original del proyecto, aunque los resultados reales dependen en gran medida de lo limpia que esté la muestra de referencia y, en general, quedan por detrás de los sistemas de clonación de voz más recientes en calidad global.
¿Real-Time-Voice-Cloning es gratuito?
Sí. Se ejecuta en tu propio hardware, sin necesidad de cuenta, clave de API ni suscripción, aunque necesitarás un ordenador razonablemente potente, idealmente con una GPU, para utilizarlo con fluidez.
¿Qué relación hay entre este proyecto y Resemble AI?
Corentin Jemine, el creador del proyecto, pasó después a trabajar en Resemble AI, y Resemblyzer —un paquete independiente derivado del codificador de hablantes de este proyecto— se mantiene ahora bajo la organización de Resemble AI en GitHub.
Genera nuevas frases a partir de una voz de referencia en Echora
Para realizar un proceso similar de clonación de voz en tu navegador, sube una grabación de referencia a la herramienta de clonación de voz de Echora, introduce un texto nuevo y genera audio con una voz parecida a la de referencia. Después puedes escuchar y descargar el resultado. Utiliza únicamente tu propia voz o una voz que tengas permiso explícito para clonar.