Saltar al contenido principal
SubtitleMatrix

Editor de letras sincronizadas

Archivos multimediaEditor de letras con tiempos

Letra

Las líneas en blanco se descartan. Una línea que ya empieza por [mm:ss.xx] conserva ese tiempo.

Suelta un archivo de audio, pega la letra y luego pulsa reproducir y toca la tecla de marca cuando empiece cada línea. Nada sale de esta pestaña.

Desplazar todas las líneas sincronizadas

.lrc exportado

Una línea aparece aquí en cuanto tiene un tiempo.

Las líneas sin tiempo se omiten en las dos exportaciones: una línea necesita una marca antes de tener un lugar en la línea de tiempo.

Teclado

  • K o Espacio — reproducir / pausar
  • Flecha izquierda / derecha — 5 segundos atrás / adelante
  • R — marcar esta línea y pasar a la siguiente
  • T — insertar una línea después de esta
  • Supr — borrar el tiempo de esta línea
  • Flecha arriba / abajo — ir a la línea anterior / siguiente

Esta página convierte una canción y una lista de líneas en un archivo .lrc sincronizado. Carga un audio, pega la letra —texto plano, una línea por línea, o un .lrc existente cuyas marcas quieras ajustar—, pulsa reproducir y toca una tecla en el momento en que empieza cada línea. La marca se toma del tiempo actual del elemento de audio, así que sigue al archivo que estás escuchando y no a un reloj de la página. Cuando la última línea esté marcada, exporta el resultado como .lrc, o como .srt si el editor de subtítulos al que lo vas a llevar necesita uno.

La lista de líneas es todo el modelo. Una línea tiene texto y una hora de inicio opcional; una línea sin hora es una a la que todavía no has llegado. Las líneas sin marcar se quedan en el editor para que puedas volver a ellas, pero no aparecen en la exportación: una línea sin hora de inicio no tiene posición en la línea de tiempo, e inventarla pondría una línea en pantalla en un momento que nadie eligió. Por eso un archivo exportado a mitad de una canción es más corto que la lista que tienes delante, no está mal.

Cuatro operaciones cubren lo que de verdad sale mal al sincronizar una letra. Marcar fija una línea en el tiempo actual de reproducción, y el editor avanza a la siguiente para que una tanda de líneas cueste una pulsación cada una. Borrar quita una marca que cayó un poco antes de tiempo. Insertar añade una línea que olvidaste pegar. Desplazar mueve todas las líneas marcadas la misma cantidad de milisegundos, que es lo que necesitas cuando notas que todo el archivo va un segundo por detrás de la voz: el espaciado relativo se mantiene intacto, y un desplazamiento negativo se detiene en cero en lugar de escribir un código de tiempo que los reproductores no pueden leer.

El modelo temporal es el que tiene LRC. Una línea dura hasta que empieza la siguiente; la última no tiene siguiente, así que recibe dos segundos, el mismo ancho que este sitio usa siempre que un formato no tiene hora de fin propia. Cuando exportas .srt, de ahí salen las horas de fin: la misma derivación que hace una conversión desde un archivo .lrc en las páginas de conversión, de modo que las dos rutas producen la misma línea de tiempo. Los centisegundos son la precisión que .lrc puede registrar; una marca en 12,346 segundos se escribe como 12,34, y por eso un archivo exportado que se vuelve a leer puede diferir del editor en unos milisegundos.

El archivo de audio lo abre el elemento de audio del propio navegador y esta página nunca lo lee, lo analiza ni lo sube. No hay ninguna petición que lo lleve a ningún sitio; el único tráfico de red es la propia página. Un borrador de la lista de líneas se guarda en el almacenamiento local de este navegador para que una recarga accidental no te cueste una sesión de trabajo, y borrar los datos del sitio lo elimina. Nada de la canción ni de la letra existe en un servidor después de cerrar la pestaña.

Ejemplos

Letra en texto plano, marcada de una pasada

Letra

First line of the song
Second line of the song
Third line of the song

.lrc exportado

[00:12.00]First line of the song
[00:15.30]Second line of the song
[00:18.75]Third line of the song

Cada línea marcada es un bloque. La exportación a .lrc escribe centisegundos, así que 18,75 segundos es exactamente lo que registró la pulsación; una marca en 18,754 se escribiría como 18,75.

Volver a sincronizar un .lrc existente

Letra

[00:12.00]First line of the song
[00:14.00]Second line of the song
Third line of the song

.lrc exportado

[00:12.00]First line of the song
[00:14.00]Second line of the song
[00:17.75]Third line of the song

Pegar un .lrc conserva las marcas que ya tiene. La tercera línea llegó sin marca de tiempo, siguió sin marcar hasta que se reprodujo y se marcó en 17,75 segundos.

Preguntas frecuentes

¿Las líneas que todavía no he marcado acaban en el archivo .lrc?

No. Una línea sin marcar no tiene hora de inicio, y .lrc sitúa una línea solo por su marca de tiempo, así que no hay nada que escribir para ella. La línea sigue en la lista del editor sin una hora al lado, y en el momento en que reproduces más allá y pulsas la tecla de marca se une a la exportación. Esto es deliberado y no una limitación: la alternativa es darle a la línea una hora inventada, lo que la pone en pantalla en un momento que nunca elegiste, justo el tipo de invención silenciosa que este sitio evita en el resto de páginas.

¿Cuánto tiempo permanece en pantalla la última línea de la letra en la exportación a .srt?

Dos segundos después de su hora de inicio. .lrc no tiene horas de fin: una línea dura hasta que empieza la siguiente, así que la última no tiene de dónde heredar un final. Dos segundos es el mismo ancho que este sitio usa para cualquier formato sin horas de fin, lo que significa que la exportación a .srt de este editor y la página de conversión de .lrc a SRT dan la misma línea de tiempo para las mismas marcas. Si la canción mantiene de verdad esa última línea ocho segundos, desplazarla o editar su duración después lo dice con honestidad; una suposición escondida dentro del exportador no lo hace.

¿Qué ocurre si desplazo la línea de tiempo hacia atrás más allá de la primera línea?

Esas líneas se detienen en cero y el editor indica cuántas se ajustaron. Un código de tiempo negativo no existe en .lrc ni en .srt: un reproductor al que se le da uno rechaza el archivo o trata la línea como si empezara al principio. Desplazar sirve para reparar un desfase, como notar que todo el archivo va un segundo tarde; cuando el desplazamiento pedido empujaría la primera línea antes del inicio de la pista, el resultado con sentido físico es cero, y el resto de las líneas conservan su separación relativa salvo las que también se hayan ajustado.

¿Puedo pegar un .lrc existente y corregir solo las líneas que están mal?

Sí, y por eso el editor lee las marcas de tiempo LRC al pegar. Las líneas que ya llevan una etiqueta [mm:ss.xx] conservan su hora; el texto posterior a la etiqueta es lo que editas; una línea sin etiqueta empieza sin marcar. Las líneas de metadatos como [ti:], [ar:] y [offset:] se ignoran al importar en lugar de tratarse como letra, porque no son líneas que cante nadie. Una línea con varias etiquetas toma la primera, ya que el modelo del editor es una hora de inicio por línea.

¿Se sube mi archivo de audio para que la página lea su duración o su forma de onda?

No, y tampoco hay forma de onda. El audio lo reproduce el elemento de audio integrado del navegador a partir de un archivo local; esta página nunca lee sus bytes, nunca lo descodifica y nunca envía una petición que lo contenga. Las marcas de tiempo vienen de la posición de reproducción actual del elemento de audio cuando pulsas la tecla, que es el mismo número que te daría una forma de onda. Descodificar una pista completa de un álbum para dibujar una forma de onda costaría memoria y tiempo sin mejorar la marca.

¿Por qué el .lrc exportado difiere del editor en unos milisegundos?

Porque .lrc registra centisegundos y el editor mantiene milisegundos enteros. Una marca en 12,346 segundos se escribe como [00:12.34], redondeando a la centésima más cercana, no truncando. Al volver a leer el archivo se obtienen 12,340 segundos, así que la diferencia es como máximo de cinco milisegundos por línea, muy por debajo de lo que puede mostrar un reproductor. Si necesitas la marca exacta, exporta .srt: lleva milisegundos, y el mismo modelo de bloques produce los dos archivos.

Herramientas relacionadas