El código de tiempo SMPTE ( /ˈsɪmptiː / o / ˈsɪmtiː / ) es un conjunto de estándares cooperativos para etiquetar fotogramas individuales de video o película con un código de tiempo . El sistema está definido por la Society of Motion Picture and Television Engineers en la especificación SMPTE 12M. SMPTE revisó el estándar en 2008, convirtiéndolo en un documento de dos partes: SMPTE 12M-1 y SMPTE 12M-2, que incluye nuevas explicaciones y aclaraciones.
Los códigos de tiempo se añaden a películas , vídeos o material de audio, y también se han adaptado para sincronizar la música y la producción teatral . Proporcionan una referencia temporal para la edición, la sincronización y la identificación. El código de tiempo es una forma de metadatos multimedia . La invención del código de tiempo hizo posible la edición moderna de cintas de vídeo y condujo finalmente a la creación de sistemas de edición no lineal .
El código de tiempo SMPTE se presenta en formato hora:minuto:segundo:fotograma y normalmente se representa en 32 bits mediante un sistema decimal codificado en binario . También hay indicadores de eliminación de fotogramas y de encuadre de color y tres bits de indicadores de grupo binario adicionales que se utilizan para definir el uso de los bits de usuario. Los formatos de otras variedades de código de tiempo SMPTE se derivan del del código de tiempo lineal . Los códigos de tiempo más complejos, como el código de tiempo de intervalo vertical, también pueden incluir información adicional en una variedad de codificaciones.
Los valores de tiempo de código de tiempo de subsegundos se expresan en términos de cuadros. Las frecuencias de cuadros admitidas más comunes incluyen:
En general, la información de la velocidad de cuadros del código de tiempo SMPTE es implícita y se conoce a partir de la velocidad de llegada del código de tiempo desde el medio. También puede especificarse en otros metadatos codificados en el medio. La interpretación de varios bits, incluidos los bits de encuadre de color y de omisión de cuadros , depende de la velocidad de datos subyacente. En particular, el bit de omisión de cuadros solo es válido para 29,97 y 30 cuadros por segundo.
Los códigos de tiempo se generan como un flujo continuo de valores de datos secuenciales. En algunas aplicaciones se utiliza el tiempo de reloj de pared , en otras el tiempo codificado es un tiempo teórico con una referencia más arbitraria. Después de realizar una serie de grabaciones, o después de una edición rudimentaria, los códigos de tiempo grabados pueden constar de segmentos discontinuos.
En general, no es posible conocer el código de tiempo lineal ( LTC ) del fotograma actual hasta que ya ha transcurrido el fotograma, momento en el que ya es demasiado tarde para realizar una edición. Los sistemas prácticos observan la secuencia ascendente del código de tiempo e infieren el tiempo del fotograma actual a partir de ahí.
Como los códigos de tiempo en sistemas analógicos son propensos a errores de bits y pérdidas de datos, la mayoría de los dispositivos de procesamiento de códigos de tiempo comprueban la coherencia interna de la secuencia de valores de códigos de tiempo y utilizan esquemas de corrección de errores simples para corregir ráfagas de errores breves. Por lo tanto, no se puede determinar con exactitud un límite entre rangos de códigos de tiempo discontinuos hasta que hayan pasado varios fotogramas posteriores.
El código de tiempo de caída de fotogramas se origina a partir de un compromiso introducido cuando se inventó el video NTSC en color. Los diseñadores de NTSC querían mantener la compatibilidad con los televisores monocromos existentes. Para minimizar la visibilidad de la subportadora en un receptor monocromo, fue necesario hacer que la subportadora de color fuera un múltiplo impar de la mitad de la frecuencia de escaneo de línea; el múltiplo elegido originalmente fue 495. Con una frecuencia de cuadros de 30 Hz, la frecuencia de escaneo de línea es (30 × 525) = 15750 Hz. Por lo tanto, la frecuencia de la subportadora habría sido 495/2× 15750 = 3,898125 MHz.
Esta fue la frecuencia de subportadora elegida originalmente, pero las pruebas mostraron que en algunos receptores monocromáticos se podía ver un patrón de interferencia causado por el batido entre la subportadora de color y la interportadora de sonido de 4,5 MHz. La visibilidad de este patrón se podía reducir en gran medida bajando el múltiplo de frecuencia de subportadora a 455 (aumentando así la frecuencia de batido de aproximadamente 600 kHz a aproximadamente 920 kHz) y haciendo que la frecuencia de batido también fuera igual a un múltiplo impar de la mitad de la frecuencia de barrido de línea. Este último cambio se podría haber logrado elevando la interportadora de sonido en un 0,1% a 4,5045 MHz, pero los diseñadores, preocupados de que esto pudiera causar problemas con algunos receptores existentes, decidieron en cambio reducir la frecuencia de subportadora de color, y por lo tanto tanto la frecuencia de barrido de línea como la velocidad de cuadros, en un 0,1%. Por lo tanto, la subportadora de color NTSC terminó siendo 3,579 54 MHz (315/88 MHz), la frecuencia de escaneo de línea como 15,734265 kHz ( 9/572 MHz) y la velocidad de cuadros 29,970029 Hz ( 30/1.001 Hz). [1]
La velocidad de cuadros modificada significó que una hora de código de tiempo a una velocidad de cuadros nominal de 29,97 cuadros/s era más larga que una hora de tiempo de reloj de pared por 3,6 segundos (para un código de tiempo sin caída de 29,97 de 01:00:00:00, el código de tiempo con caída de cuadros es 01:00:03;18 y para un código de tiempo sin caída de 00:59:56:12 es 01:00:00;00), lo que lleva a un error de casi un minuto y medio en un día. [2]
Para corregir esto, se inventó el código de tiempo SMPTE con omisión de fotogramas. A pesar de lo que implica el nombre, no se omiten ni se descartan fotogramas de vídeo cuando se utiliza el código de tiempo con omisión de fotogramas. En cambio, se omiten algunos de los códigos de tiempo . Para que una hora de código de tiempo coincida con una hora en el reloj, el código de tiempo con omisión de fotogramas omite los fotogramas 0 y 1 del primer segundo de cada minuto, excepto cuando el número de minutos es divisible por diez. [a] Esto hace que el código de tiempo omita 18 fotogramas cada diez minutos (18.000 fotogramas a 30 fotogramas/s) y compensa casi a la perfección la diferencia de velocidad (pero sigue acumulando 1 fotograma cada 9 horas y 15 minutos). [b] [3]
Por ejemplo, la secuencia cuando se descartan los recuentos de cuadros:
Por cada décimo minuto
Mientras que el código de tiempo sin pérdida se muestra con dos puntos que separan los pares de dígitos ("HH:MM:SS:FF"), el código de tiempo con pérdida de fotogramas se representa generalmente con un punto y coma (;) o un punto (.) como divisor entre todos los pares de dígitos ( HH;MM;SS;FF , HH.MM.SS.FF ) o solo entre los segundos y los fotogramas ( HH:MM:SS;FF o HH:MM:SS.FF ). [c] El código de tiempo con pérdida de fotogramas se abrevia normalmente como DF y el código de tiempo sin pérdida como NDF.
Un bit de encuadre de color se utiliza a menudo para indicar el campo 1 del marco de color de modo que el equipo de edición pueda asegurarse de editar solo en los límites de secuencia de marco de color adecuados para evitar la corrupción de la imagen.
En las operaciones de los estudios de televisión , el código de tiempo longitudinal es generado por el generador de sincronización maestro del estudio y distribuido desde un punto central. Los generadores de sincronización central suelen obtener su sincronización de un reloj atómico , utilizando la hora de la red o GPS . Los estudios suelen operar con varios relojes y cambian automáticamente si uno falla.
El código de tiempo longitudinal SMPTE se utiliza ampliamente para sincronizar música. En Estados Unidos, Japón y otros países que dependen de una frecuencia de red de 60 Hz y utilizan el estándar de televisión NTSC , se suele utilizar una frecuencia de 30 cuadros por segundo para el audio. La frecuencia de cuadros estándar de la Unión Europea de Radiodifusión de 25 cuadros por segundo se utiliza en toda Europa, Australia y dondequiera que la frecuencia de red sea de 50 Hz y se utilicen los estándares de televisión PAL o SECAM . [4]
El código de tiempo se puede adjuntar a un medio de grabación de diferentes maneras.
A finales de los años 60 se produjeron varias iteraciones del código de tiempo (EECO, DaVinci, Seimens, etc.). La versión adoptada por la SMPTE fue desarrollada por Leo O'Donnell mientras trabajaba para la National Film Board of Canada. La versión de Leo hacía referencia a la hora del día y utilizaba una palabra de 80 bits derivada de la telemetría de cohetes. Se concedieron varias patentes a la versión de Leo (la US3877799, por ejemplo). Desde entonces, la SMPTE ha realizado varios cambios para mantenerse al día con la tecnología.
Cuando se aplica la compensación de pérdida de fotogramas a un código de tiempo de televisión NTSC, la desviación total acumulada después de una hora se reduce a aproximadamente 3,6 ms. La desviación total acumulada durante un período de 24 horas es de aproximadamente 2,6 fotogramas (~86 ms).