GUÍA

SRT a voz: convierte subtítulos en una pista de voz

Un archivo de subtítulos ya contiene todo lo que necesita una locución: las palabras y el momento en que debe oírse cada línea. Convertirlo en voz da a un tutorial, un short o un vídeo traducido una pista de voz sincronizada con la imagen, sin grabar ni una frase.

El motor gratuito SuperClonica genera cada línea sin conexión con una voz natural, y un breve script de Python la coloca en su momento. Esta guía muestra el script, cómo encajar las líneas largas en su hueco y cómo poner la pista bajo el vídeo.

Qué necesitas

El motor no lee archivos SRT por sí solo: unas veinte líneas de Python hacen el trabajo.

  • Un archivo SRT: de tu editor, de subtítulos automáticos o de una traducción.
  • El motor gratuito SuperClonica y Python 3.10 o posterior: python -m pip install superclonica-cpu. numpy viene incluido.
  • Una voz: una de las diez de serie, una del catálogo o tu propia voz entrenada.
  • Sin tarjeta gráfica: basta un procesador normal.

Escucha una línea gratis

En la página de cualquier voz, pega una línea de subtítulo, de 30 a 100 caracteres, elige el idioma y pulsa el botón para generarla. En unos segundos oyes cómo sonará el vídeo, sin cuenta.

De las líneas a una pista

Crea el motor una vez antes del bucle: cargarlo tarda unos segundos y cada frase, una fracción de segundo.

  • Lee el archivo: cada entrada es un número, una línea con las horas de inicio y fin, y el texto.
  • Genera cada entrada: audio, sample_rate = tts.synthesize(text, voice="F2", lang="es", seed=7).
  • Crea un array de numpy en silencio tan largo como el vídeo y suma cada frase en la muestra donde empieza su entrada: el inicio en segundos por la frecuencia de muestreo.
  • Guarda el resultado con tts.save("track.wav", track).

Líneas que no caben

Imprime la duración de cada frase junto a la duración de su entrada. Si la voz dura más que su hueco, se solapa con la siguiente. Primero acorta el texto; une dos entradas cortas en una; o crea el motor algo más rápido, por ejemplo Superclonica(speed=1.15), dentro del rango permitido de 0,7 a 2,0. El mismo texto, voz y seed dan siempre el mismo audio, así que puedes arreglar una frase y reconstruir la pista.

Pon la voz bajo el vídeo

Importa track.wav en tu editor de vídeo como pista de audio, o únelo al vídeo con un solo comando: ffmpeg -i video.mp4 -i track.wav -map 0:v -map 1:a -c:v copy -c:a aac voiced.mp4. Deja el sonido original en una segunda pista si quieres música o efectos bajo la voz. Pon voz solo a vídeos tuyos o con permiso, y no uses una voz que imite a una persona real sin su consentimiento.