La sincronización precisa de los subtítulos es un factor crítico en la producción y distribución de contenidos audiovisuales. Cuando el audio y el texto no coinciden, la experiencia del espectador se deteriora rápidamente. La Herramienta para desplazar subtítulos permite ajustar de manera uniforme el tiempo de todas las entradas de un archivo de subtítulos, ya sea retrasando su aparición o adelantándola para que encaje perfectamente con el metraje de vídeo.
Este proceso se realiza respetando la integridad del archivo original, asegurando que los metadatos, estilos y la estructura interna no sufran alteraciones indeseadas durante el desplazamiento temporal.
Funcionamiento del desplazamiento temporal
El ajuste de tiempos se basa en aplicar una operación aritmética simple a cada una de las marcas de tiempo de inicio y fin de todas las entradas del archivo. El usuario define una cantidad de desplazamiento (offset), la cual puede ser positiva o negativa:
- Valores positivos: Retrasan la aparición de los subtítulos. Cada entrada se desplaza hacia adelante en la línea de tiempo, mostrándose más tarde en el reproductor de vídeo.
- Valores negativos: Adelantan la aparición de los subtítulos. Cada entrada se desplaza hacia atrás en la línea de tiempo, mostrándose más temprano.
La herramienta admite dos formatos para definir este desplazamiento:
- Segundos: Valores numéricos decimales (por ejemplo,
2.5o-0.75). - Código de tiempo: Formato estructurado
H:MM:SS.mmm(por ejemplo,-00:00:02.500), donde se especifican horas, minutos, segundos y milisegundos.
Formatos compatibles y estructura de archivos
La herramienta está diseñada para trabajar con los dos formatos de subtítulos más extendidos en la industria digital:
SubRip (SRT)
Los archivos SRT deben estar codificados en UTF-8 y presentar una estructura de bloques numerados secuencialmente. Cada bloque consta de un número de índice, la línea de tiempo con el formato HH:MM:SS,mmm --> HH:MM:SS,mmm y el texto del subtítulo.
WebVTT (VTT)
Los archivos WebVTT deben comenzar obligatoriamente con la cadena de caracteres WEBVTT en su primera línea. Este formato, ampliamente utilizado en reproductores HTML5, admite metadatos adicionales, notas y configuraciones de posicionamiento.
Durante el procesamiento, la herramienta conserva intactos los identificadores de entrada, los ajustes de posición, las notas, los estilos, las regiones, los finales de línea y el texto de los subtítulos. Solo se modifican los valores numéricos de las marcas de tiempo afectadas por el desplazamiento.
Reglas de validación y gestión de errores
Para garantizar que el archivo resultante sea totalmente compatible con los reproductores de vídeo, la herramienta aplica un estricto proceso de validación estructural y cronológica. Si el archivo de entrada no cumple con las especificaciones, se detiene el proceso y se muestra el error correspondiente:
- Límite de tamaño: El archivo de subtítulos subido no debe superar los 2 MB. Si se excede este límite, se muestra el mensaje: "Elige un archivo de subtítulos que no supere
‹max›.". Si el texto pegado es demasiado largo, aparecerá: "El texto de los subtítulos es demasiado grande para procesarlo aquí. Limítalo a menos de‹max›caracteres.". - Codificación de texto: El archivo debe ser texto plano UTF-8. De lo contrario, se genera el error: "Este archivo no contiene texto UTF-8 válido. Guárdalo como UTF-8 y vuelve a intentarlo.".
- Consistencia cronológica: Cada entrada individual debe tener un tiempo de finalización posterior al de inicio. Si no se cumple, se muestra: "La entrada
‹number›debe terminar después de empezar.". - Orden secuencial: Las entradas deben estar ordenadas cronológicamente. Si una entrada empieza antes que la anterior, el sistema devuelve: "La entrada
‹number›empieza antes que la entrada anterior.". - Marcas de tiempo internas: En archivos WebVTT, si existen marcas de tiempo internas (inline) desordenadas o fuera de los límites de la entrada, se muestra: "La entrada
‹number›tiene una marca de tiempo VTT interna fuera de sus límites o desordenada.".
El límite del tiempo cero
Una regla crítica de control es que ninguna entrada puede ser desplazada a un punto anterior al inicio del vídeo (tiempo cero). Si un desplazamiento negativo provoca que una marca de tiempo sea menor que 00:00:00.000, el proceso se interrumpe para evitar la pérdida de datos o la corrupción del archivo. En este caso, la herramienta muestra el mensaje: "Este desplazamiento llevaría la entrada ‹number› por debajo de cero. Usa ‹minimum› o un desplazamiento posterior.".
Limitaciones del desplazamiento fijo en desincronizaciones progresivas
Es importante distinguir entre un desfase constante y una desincronización progresiva (efecto de deriva o drift).
Un desplazamiento fijo es idóneo cuando todo el archivo de subtítulos tiene exactamente el mismo retraso o adelanto respecto al audio, algo común cuando se añade una cortinilla de introducción o se cambia el logotipo de la distribuidora al inicio del vídeo.
Sin embargo, si los subtítulos se van desincronizando de manera gradual a lo largo de la reproducción (por ejemplo, si empiezan bien pero terminan con varios segundos de diferencia), un desplazamiento fijo no resolverá el problema. Este fenómeno suele deberse a una diferencia en la tasa de fotogramas por segundo (FPS) entre el vídeo original para el que se crearon los subtítulos y la versión actual del vídeo. Para solucionar la deriva progresiva, se requiere una conversión de la velocidad de reproducción de los tiempos o una edición manual de los puntos de anclaje.
Privacidad y procesamiento local
El procesamiento de los archivos se realiza de manera local. El texto y los archivos de subtítulos permanecen en tu navegador. BroBroGo no sube ni guarda nada en servidores externos, lo que garantiza que el contenido de los subtítulos no se comparta ni se almacene fuera del dispositivo del usuario.
Preguntas frecuentes
¿Qué archivos SRT y VTT son compatibles?
Usa archivos SRT en UTF-8 con bloques numerados o archivos WebVTT que empiecen por WEBVTT. Se conservan tal como están los identificadores, ajustes, notas, estilos, regiones, finales de línea y el texto de los subtítulos.
¿Qué ocurre si un desplazamiento negativo lleva el tiempo por debajo de cero?
El desplazamiento se detiene en lugar de recortar o eliminar entradas. Así se mantienen exactos tanto la duración de cada entrada como el desplazamiento solicitado; introduce un adelanto menor y vuelve a intentarlo.
¿Puede un desplazamiento fijo corregir unos subtítulos que se desincronizan cada vez más?
No. Un desplazamiento fijo corrige el mismo retraso o adelanto en todo el archivo. Si la diferencia aumenta durante la reproducción, hay que modificar la velocidad de sincronización o editar entradas concretas de otra forma.