Subtítulo WebVTT (.vtt)

Recomendación Estándar

Web Video Text Tracks (WebVTT) es el estándar web oficial de W3C para subtítulos, leyendas y descripciones de capítulos, integrado de forma nativa en elementos de video HTML5 (<track>) y transmisión HTTP en vivo moderna (HLS).

Convertir de SRT a VTT

Convertidor gratuito de SRT a VTT en el navegador. Convierte archivos al instante en tu dispositivo.

Inspeccionar y metadatos

Los sistemas operativos y analizadores de archivos identifican los archivos de WebVTT inspeccionando la secuencia de bytes binarios inicial:

Selecciona o arrastra archivos aquí

Conversión 100% privada en el navegador; los archivos nunca salen de tu dispositivo

o pega Ctrl+V
Garantía de privacidad sin transmisión de red: 0 bytes subidos a servidores externos. Todo el procesamiento se realizó de forma local en el entorno seguro de tu navegador.

Firma de cabecera a nivel de bytes (Bytes mágicos)

Los sistemas operativos y analizadores de archivos identifican los archivos de WebVTT inspeccionando la secuencia de bytes binarios inicial:

FIRMA HEXADECIMAL (DESPLAZAMIENTO 0):

57 45 42 56 54 54

REPRESENTACIÓN ASCII: WEBVTT

Estandarización: Recomendación W3C WebVTT

Especificaciones técnicas

Arquitectura del contenedorArchivo de texto UTF-8 que comienza con la firma 'WEBVTT', seguido de bloques opcionales STYLE y NOTE y bloques de señales secuenciales
CompresiónTexto plano sin comprimir (típicamente comprimido a través de HTTP mediante Gzip o Brotli)
Orden de bytes (Endianness)Flujo de texto UTF-8
Espacios de colorSoporte completo para el Módulo de Color CSS Nivel 4 en los estilos de las señales
Canales y estructuraSeñales con marcas de tiempo, confianza en el reconocimiento de voz, estilos CSS y ajustes de posición en pantalla
Dimensiones máximasSeñales secuenciales sin límite
TransparenciaOpacidad CSS completa y transparencia alfa admitidas mediante el pseudo-elemento '::cue'
Streaming y progresivoTransmisión nativa en elementos HTML5 <video> y manifiestos de video en vivo HLS / DASH

Matriz de comparación técnica: WebVTT frente a la competencia

Atributo técnicoWebVTT (Actual)SRTASSSUB
Integración web HTML5Estándar 100% nativo (<track>)Requiere conversión JSRequiere WebAssemblyRequiere conversión
Estilos CSSEstilos CSS nativos completos (::cue)Solo etiquetas HTML básicasEtiquetas de anulación propietariasNinguno
Transmisión HLS / DASHEstándar universal de transmisión de difusiónSoportado mediante multiplexaciónSoporte de transmisión limitadoNinguno
Requisito de encabezadoLínea 1 estricta con texto mágico 'WEBVTT'No requiere encabezadoSección [Script Info]No requiere encabezado

Modos de corrupción comunes y guía de recuperación hexadecimal

Error en la consola del navegador: 'Malformed WebVTT file: Missing WEBVTT signature'.

Causa raíz: Falta la cadena 'WEBVTT' en la línea 1, o hay líneas en blanco antes del encabezado.

Recuperación: Agregue 'WEBVTT\n\n' al principio del archivo utilizando el conversor de subtítulos de File2File.

Análisis de seguridad y vectores de ataque al analizador

Los analizadores de WebVTT en los navegadores web procesan señales no confiables que pueden provocar ataques de secuencias de comandos en sitios cruzados (XSS) si se representan sin desinfectar en el DOM.

Vectores de ataque conocidos

  • Inyección XSS a través de contenidos de señales HTML no desinfectados insertados en el DOM del reproductor de video web.
  • Falsificación de solicitudes del lado del servidor (SSRF) durante la generación automatizada de miniaturas de subtítulos en el servidor.
  • Denegación de servicio a través de selectores de señales CSS mal formados.

Mejores prácticas defensivas: Confíe en la representación nativa del navegador <track> y desinfecte las cargas útiles de las señales antes de la inserción manual en el DOM.

Orígenes históricos e hitos

2019W3C promueve oficialmente WebVTT: el formato Web Video Text Tracks hacia Recomendación Propuesta.
2011Renombrado de WebSRT a WebVTT para establecer un estándar W3C distinto y separado del SubRip clásico.
2010WHATWG introduce WebVTT para resolver el subtitulado nativo de la etiqueta <video> de HTML5.

Ventajas clave y pros

  • Estándar web nativo de HTML5: soportado directamente por todos los navegadores web en el elemento <track> sin bibliotecas externas.
  • Amplio soporte de estilos CSS: personaliza colores, fuentes, fondos y posiciones utilizando el pseudo-elemento CSS nativo '::cue'.
  • Soporte de primera clase para transmisión en vivo: integrado en los manifiestos de transmisión Apple HLS y MPEG-DASH para subtítulos de transmisión.

Limitaciones técnicas y contras

  • Requisito estricto de encabezado: el archivo debe comenzar con el texto exacto 'WEBVTT' en la primera línea o los navegadores lo rechazarán.
  • El separador de milisegundos con punto ('00:01:20.500') requiere conversión desde archivos SRT heredados separados por comas.
  • Los reproductores de hardware antiguos que no son de navegador (como los reproductores multimedia USB económicos) a menudo carecen de soporte nativo para WebVTT.

Curiosidades técnicas interesantes

  • Cada archivo WebVTT válido debe comenzar con la palabra exacta 'WEBVTT' en la primera línea; cualquier otra cosa hace que los navegadores ignoren el archivo.
  • WebVTT se llamó originalmente 'WebSRT' porque fue diseñado deliberadamente para parecerse casi idéntico a los subtítulos SRT clásicos.
  • WebVTT también se puede utilizar para capítulos de video y descripciones emergentes interactivas de miniaturas al pasar el cursor sobre las barras de reproducción del video.

Preguntas técnicas frecuentes

¿Para qué se utiliza WebVTT?

WebVTT es el formato estándar web oficial para agregar subtítulos, leyendas, capítulos y descripciones a los elementos <video> de HTML5 en sitios web.

¿Cómo puedo convertir un subtítulo SRT a WebVTT?

Puede convertir archivos SRT en archivos WebVTT limpios con un solo clic usando File2File.app directamente en su navegador.

¿Por qué no se muestran mis subtítulos WebVTT en el navegador?

Asegúrese de que su archivo comience con 'WEBVTT' en la línea 1, tenga una línea en blanco después y su servidor web lo sirva con el encabezado 'Content-Type: text/vtt'.