Saltar al contenido principal
SubtitleMatrix

Convertir SSA a VTT

Conversión de formatosSubStation Alpha (SSA)
O pega el texto de los subtítulos

Qué cambia esta conversión

4 cosas se descartan o requieren una decisión

  • Estilo

    todo el estilo excepto negrita y cursiva (color, contorno, sombra, márgenes)

  • Posición

    la posición en pantalla (cada bloque vuelve a la posición predeterminada)

  • Karaoke

    la sincronización karaoke (resaltado por sílaba)

  • Contenido específico del formato

    contenido que el formato de origen guarda fuera de sus bloques (bloques que no son cue, texto de cabecera, ajustes por bloque, eventos comentados): el formato de destino no tiene sitio para él

Esta lista proviene de la matriz de capacidades de estos dos formatos, no del archivo concreto que has cargado. Un archivo específico puede perder más si usa características que el formato permite pero que la matriz no modela.

Convierte SSA a VTT y obtén el formato que los navegadores reproducen de forma nativa. Arrastra un archivo o pega el texto; la conversión se ejecuta entera en tu navegador, sin subir nada y sin cuenta.

Los dos formatos no guardan lo mismo, y la diferencia no es cosmética: los estilos, la posición y el karaoke no tienen dónde ir en VTT, y tampoco las secciones que SSA guarda fuera de su lista de cues —`[Script Info]` y los bloques `[Fonts]` y `[Graphics]` que incrustan las fuentes y las imágenes que necesita un reproductor. La lista de arriba sale de lo que cada formato puede expresar, no de tu archivo, así que no cambia aunque cargues otro.

Un archivo está bien y una temporada completa también: la cola los procesa en orden y los resultados se descargan juntos en un único ZIP.

Ejemplos

Un archivo SSA típico convertido a VTT

Entrada

[Script Info]
Title: Example SSA
ScriptType: v4.00
Collisions: Normal

[V4 Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,1,2,2,2,10,10,10,0,1

[Events]
Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: Marked=0,0:00:01.00,0:00:04.00,Default,,0,0,0,,Hello there.
Dialogue: Marked=0,0:00:05.00,0:00:08.00,Default,,0,0,0,,{\i1}Italic{\i0} line.
Dialogue: Marked=0,0:00:09.00,0:00:12.00,Default,,0,0,0,,Two\Nlines

Resultado

WEBVTT

00:00:01.000 --> 00:00:04.000
Hello there.

00:00:05.000 --> 00:00:08.000
<i>Italic</i> line.

00:00:09.000 --> 00:00:12.000
Two
lines

En esta salida se pierden los estilos, la posición, el karaoke y el contenido propio del formato. Todo lo demás coincide línea por línea.

La misma conversión con una entrada incómoda

Entrada

[Script Info]
Title: Dirty SSA
ScriptType: v4.00

[V4 Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,1,2,2,2,10,10,10,0,1

[Events]
Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Comment: Marked=0,0:00:00.00,0:00:01.00,Default,,0,0,0,,not a subtitle
Dialogue: Marked=0,0:00:01.00,0:00:04.00,Default,,0,0,0,,{\b1}Bold{\b0} and {\u1}underlined{\u0}.
Dialogue: Marked=0,0:00:05.00,0:00:08.00,Default,,0,0,0,,A soft\nbreak and a {\p1}mystery{\p0} code.

Resultado

WEBVTT

00:00:01.000 --> 00:00:04.000
<b>Bold</b> and <u>underlined</u>.

00:00:05.000 --> 00:00:08.000
A soft
break and a {\p1}mystery{\p0} code.

Es el tipo de daño que traen los archivos reales: finales de línea mezclados, espacios sueltos y campos vacíos. Compáralo con el ejemplo ordenado de arriba para ver qué perdona el analizador.

Preguntas frecuentes

¿Qué estilos sobreviven de SSA a VTT?

El énfasis, escrito en el texto como etiquetas: negrita, cursiva, subrayado y un color salen como `<b>`, `<i>`, `<u>` y `<font color="…">`, y los navegadores los aplican. Lo que el archivo VTT no llevará es la tabla de estilos de la que depende SSA: la fuente, su tamaño, el contorno, la sombra y los márgenes se van, y la página que incrusta los subtítulos los estiliza con su propio CSS.

¿Qué ocurre con la posición en pantalla al convertir SSA a VTT?

VTT no puede decir dónde se dibuja un subtítulo, así que los códigos `\pos`, `\an` y `\move` se descartan al salir de SSA, y cada cue vuelve a la posición por defecto que elige el reproductor: el borde inferior del fotograma y centrado, en la mayoría.

¿Qué pasa con el karaoke al convertir SSA a VTT?

El tiempo se va; las palabras quedan. El karaoke vive en los códigos `\k`, `\kf` y `\ko` que lleva un evento SSA, que marcan cuándo se ilumina cada sílaba, y VTT no tiene forma de registrar un instante dentro de una línea: las marcas se quitan y las sílabas llegan como texto VTT normal.

¿Qué ocurre con el bloque `[Script Info]` y el resto del script al pasar de SSA a VTT?

Solo las líneas `Dialogue:` se convierten en subtítulos. El bloque `[Script Info]` (título incluido, porque VTT no tiene dónde ponerlo), la tabla de estilos, las líneas `Comment:` y lo que esté incrustado en `[Fonts]` o `[Graphics]` se descartan. En un archivo SSA cuyo estilo se escribió a mano, esta es la pérdida que más se nota.

¿Cómo se ve la salida cuando SSA se convierte en VTT?

Como VTT: una línea de identificador opcional encima de cada cue, que ningún reproductor muestra. Cada cue SSA se convierte en un cue VTT, en el mismo orden y con el mismo texto.

¿Los tiempos SSA son exactos en el archivo VTT?

Sí, al milisegundo, que es la precisión máxima de ambos formatos. SSA escribe un instante como `0:00:04.13` y VTT escribe ese mismo instante como `00:00:04.126`; nada se redondea ni se desplaza entre los dos, y un cue que estaba 2,9 segundos en pantalla sigue estándolo.

¿Cómo sale un cue SSA de dos líneas en VTT?

Como dos líneas, una debajo de la otra. El emparejamiento sobrevive: las dos líneas SSA siguen perteneciendo a un solo subtítulo en la salida VTT, y el reproductor las muestra juntas.

¿Los cues SSA mantienen el orden en la salida VTT?

Sí, y de paso se ordenan por hora de inicio: primero el más temprano, que es como los espera cada formato de este sitio y como los leen los reproductores. Si tu archivo SSA listaba los cues desordenados, la salida VTT los devuelve al orden; es un cambio en la estructura del archivo, no en su contenido, y es deliberado.

¿Puedo convertir el VTT de vuelta a SSA?

Sí, y tiene su propia lista: convertir VTT a SSA pierde precisión y contenido propio del formato. Esa lista es distinta de la de arriba porque los dos formatos conservan cosas diferentes.

¿La salida VTT conserva la codificación del archivo SSA?

No: la salida es UTF-8, con finales de línea de Unix y sin marca de orden de bytes, sea cual sea la codificación del archivo SSA. Un archivo en UTF-16 o en una codificación de un byte de Windows se decodifica al entrar (el panel de resultados lo indica cuando ocurre); lo que sale es siempre el mismo VTT en UTF-8.

Herramientas relacionadas