Saltar al contenido principal
SubtitleMatrix

Convertir SMI a LRC

O pega el texto de los subtítulos

Qué cambia esta conversión

5 cosas se descartan o requieren una decisión

  • Tiempos

    las horas de fin de los bloques (el formato de salida solo registra cuándo empieza un bloque)

  • Estilo

    todo el estilo (negrita, cursiva, color, contorno, sombra)

  • Posición

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

  • Precisión

    la precisión de los tiempos: el reloj del resultado es más grueso, así que cada marca de tiempo se redondea al 10 ms más cercano

  • 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.

Esta página convierte un archivo SAMI (SMI) en LRC, el formato de letras con marcas entre corchetes. Arrastra el archivo o pega el texto y obtienes el LRC; todo se ejecuta en el navegador, sin subir nada ni crear cuentas.

Es la dirección que más deja por el camino: cinco cosas. La primera es el tiempo de fin, porque LRC solo registra cuándo empieza cada línea y la mantiene hasta la siguiente. La segunda son los estilos del texto (<b>, <i>, <u>, <font color>). La tercera es la posición en pantalla que fijaba el CSS del SAMI. La cuarta es la precisión: LRC escribe [00:04.12] y SMI Start=4126, así que cada marca se redondea a los 10 ms más cercanos y ningún bloque se mueve más de 5 ms. La quinta es el contenido propio del formato: el bloque <STYLE>, el <TITLE> y los Class= de los párrafos no tienen dónde ir.

El texto y el orden sí sobreviven, y una temporada completa se procesa en cola y se descarga en un solo ZIP.

Ejemplos

Un archivo SMI típico convertido a LRC

Entrada

<SAMI>
<HEAD>
<STYLE TYPE="text/css">
<!--
P { text-align: center; font-family: Arial; }
.ENCC { Name: English; lang: en-US; }
-->
</STYLE>
</HEAD>
<BODY>
<SYNC Start=1000>
<P Class=ENCC>Hello there.
<SYNC Start=3000>
<P Class=ENCC>&nbsp;
<SYNC Start=3500>
<P Class=ENCC>How are you?<br>Fine, thanks.
<SYNC Start=6000>
<P Class=ENCC>&nbsp;
</BODY>
</SAMI>

Resultado

[00:01.00]Hello there.
[00:03.50]How are you?
[00:03.50]Fine, thanks.

En esta salida se pierden: tiempos, estilos, posiciones, precisión y contenido propio del formato. Todo lo demás coincide línea por línea.

La misma conversión con una entrada difícil

Entrada

<SAMI>
<HEAD>
<TITLE>Episode 1</TITLE>
<STYLE TYPE="text/css">
<!--
.ENCC { Name: English; }
-->
</STYLE>
</HEAD>
<BODY>
<sync start="00:00:02,500">
<P Class=ENCC>Line one<br>Line two
<sync start=9000>
<P Class=ENCC>Tom &amp; Jerry
<SYNC Start=12000>
<P Class=ENCC>&nbsp;
</BODY>
</SAMI>

Resultado

[00:02.50]Line one
[00:02.50]Line two
[00:09.00]Tom &amp; Jerry

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

Preguntas frecuentes

¿Qué pasa con el tiempo de fin de cada bloque SMI al pasarlo a LRC?

LRC solo registra cuándo empieza una línea, nada más: un reproductor de letras mantiene la línea hasta que empieza la siguiente, así que un tiempo de fin sería redundante. Cada final del SAMI se descarta y cada inicio queda intacto.

¿Qué ocurre con las negritas, las cursivas y el color de SAMI en LRC?

Se pierden. SAMI los guarda dentro del texto con <b>, <i>, <u> y <font color>, y LRC es una línea con una marca entre corchetes más el texto: no tiene etiquetas de énfasis ni de color. El informe de pérdidas de esta página cuenta los estilos como perdidos antes de que cargues el archivo.

¿Dónde queda la posición en pantalla del SAMI al convertir a LRC?

Se descarta. SAMI coloca el texto con CSS en la cabecera o con estilos en línea, y LRC no describe la pantalla en absoluto: solo el momento en que una línea empieza. La posición se cuenta como pérdida en esta dirección.

¿Por qué cambian las marcas de tiempo al convertir SAMI a LRC?

LRC guarda el tiempo como [00:04.12] y SAMI como Start=4126: centésimas frente a milésimas. Por eso cada marca se redondea a los 10 ms más cercanos y 00:00:04,126 sale como 4,12 s. Nada se estira ni se reordena, y ningún bloque se mueve más de 5 ms; si vas a alinear estos subtítulos con otro archivo, ese es el único punto donde la conversión deja de ser exacta.

¿Qué ocurre con el bloque STYLE, el TITLE y los Class de SAMI en el LRC?

Se pierden. El <STYLE> contiene CSS para los párrafos, el <TITLE> nombra el documento y Class=ENCC apunta un párrafo a una regla; LRC no tiene cabecera ni metadatos donde recibirlos, así que se descartan y se informan como contenido propio del formato.

¿Cómo se ve la salida cuando un SMI se convierte en LRC?

Como LRC: sin números de bloque, cada línea lleva su propia marca entre corchetes. Cada bloque SMI se convierte en una línea LRC, en el mismo orden y con el mismo texto.

¿Qué ocurre con un bloque SMI de dos líneas al pasar a LRC?

Se escriben las dos líneas con la misma marca temporal, que es como LRC dice que van juntas y se mantienen en pantalla a la vez. El <br> del SAMI desaparece como tal, pero la pareja se conserva en la salida.

¿Se conserva el orden de los bloques SMI en la salida LRC?

Sí, y de paso se ordenan por hora de inicio: primero el más temprano, que es lo que esperan todos los formatos de este sitio y cómo los leen los reproductores. Si tu archivo SAMI traía los bloques desordenados, la salida LRC los devuelve al orden; es un cambio en la estructura del archivo, no en su contenido, y es deliberado.

¿Puedo convertir el LRC resultante de vuelta a SAMI?

Sí, y esa dirección tiene su propia lista: al convertir LRC a SMI se pierde la sincronización del final de cada bloque. Esa lista es distinta de la de arriba porque los dos formatos guardan cosas diferentes.

¿La salida LRC mantiene la codificación del archivo SMI?

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

Herramientas relacionadas