Subtítulos · Whisper

Subtítulos WebVTT para web

Si publicas video en tu propio sitio con la etiqueta <video> de HTML, los subtítulos van en formato WebVTT a través de una etiqueta <track>. Whisper lo genera directo desde el audio: whisper-cli -m ggml-small.bin -l es -ovtt video.wav. Es el mismo proceso que el SRT, solo cambia el formato de salida.

Gratis y open source macOS · Linux · Windows Nada sale de tu equipo

1. Instala whisper.cpp

Se instala una sola vez y queda para siempre. Es gratis y de código abierto:

# macOS (Homebrew)
brew install whisper-cpp

# Ubuntu / Debian (compilar desde el código, ~2 minutos)
git clone https://github.com/ggml-org/whisper.cpp
cd whisper.cpp && cmake -B build && cmake --build build -j

Si nunca has usado la terminal, empieza por la guía de la terminal.

2. Genera el archivo WebVTT

Pide la salida en VTT con la bandera -ovtt:

whisper-cli -m ggml-small.bin -l es -ovtt video.wav

El resultado es video.wav.vtt, el formato exacto que entiende el navegador. A diferencia del SRT, el VTT empieza con la línea WEBVTT y usa el punto como separador de milisegundos; Whisper escribe todo eso por ti.

Conéctalo a tu reproductor HTML

Coloca el VTT junto a tu video y enlázalo con una etiqueta <track> dentro de <video>:

<video controls>
  <source src="video.mp4" type="video/mp4">
  <track kind="subtitles" src="video.wav.vtt" srclang="es" label="Español" default>
</video>

El navegador muestra el botón de subtítulos y el usuario los activa o desactiva; el texto queda seleccionable e indexable, no quemado en la imagen.

Tareas relacionadas

Preguntas frecuentes

¿Cuál es la diferencia entre VTT y SRT?

Son casi idénticos: ambos son texto con frases y sus tiempos. WebVTT es el estándar nativo del navegador para la etiqueta , admite estilos y metadatos, y separa los milisegundos con punto. SRT es más antiguo y universal en reproductores de escritorio y YouTube. Para tu propio sitio web, usa VTT; para subir a YouTube, SRT.

¿Puedo convertir un SRT que ya tengo a VTT?

Sí, son tan parecidos que la conversión es trivial, pero lo más limpio es pedirle a Whisper directamente la salida en VTT con -ovtt y evitar el paso intermedio. Si ya generaste el SRT, también puedes volver a correr el comando solo cambiando la bandera de formato.