El código de tiempo MIDI ( MTC ), anteriormente conocido como MSMPTE, [ 1 ] fue adoptado por la Asociación de Fabricantes MIDI en 1986, modificado y revalidado en febrero de 1987. [ 2 ] La asociación MIDI otorgó a Chris Meyer un premio a la trayectoria profesional en 2025, en reconocimiento a su trabajo en este y otros estándares MIDI ( MMC , control de escenas MIDI). [ 3 ]
MTC incorpora la misma información de temporización que el código de tiempo SMPTE estándar como una serie de pequeños mensajes MIDI de "cuarto de cuadro" . No hay provisión para los bits de usuario en los mensajes de código de tiempo MIDI estándar, y en su lugar se utilizan mensajes SysEx para transportar esta información. Los mensajes de cuarto de cuadro se transmiten en una secuencia de ocho mensajes; por lo tanto, se especifica un valor de código de tiempo completo cada dos cuadros. Si el flujo de datos MIDI está funcionando cerca de su capacidad, los datos MTC pueden llegar con un ligero retraso, lo que tiene el efecto de introducir una pequeña cantidad de fluctuación (jitter). Para evitar esto, es ideal utilizar un puerto MIDI completamente separado para los datos MTC. [ 4 ] Los mensajes de cuadro completo más grandes, que encapsulan un cuadro de código de tiempo en un solo mensaje, se utilizan para ubicar en un tiempo cuando el código de tiempo no está en funcionamiento. [ 5 ]
A diferencia del código de tiempo SMPTE estándar, los mensajes de cuarto de fotograma y de fotograma completo del código de tiempo MIDI llevan un valor de indicador de dos bits que identifica la velocidad del código de tiempo, especificándola como:
- 24 fotogramas/s (velocidad estándar para trabajos cinematográficos )
- 25 fotogramas/s (velocidad estándar para vídeo PAL )
- 29,97 fotogramas/s (código de tiempo con pérdida de fotogramas para vídeo NTSC )
- 30 fotogramas/s (código de tiempo sin pérdida para vídeo NTSC) [ 6 ]
MTC distingue entre velocidad de película y velocidad de vídeo únicamente por la velocidad a la que avanza el código de tiempo, no por la información contenida en los mensajes del código de tiempo; por lo tanto, un dropframe de 29,97 fotogramas/s se representa como un dropframe de 30 fotogramas/s con un pulldown del 0,1 %. [ 7 ]
MTC permite la sincronización de un secuenciador o DAW con otros dispositivos compatibles con MTC, o bien, que estos dispositivos se sincronicen con una grabadora de cinta con señal SMPTE. Para ello, es necesario utilizar un convertidor de SMPTE a MTC. Una grabadora de cinta puede sincronizarse con una señal MTC (convertida a SMPTE) si puede sincronizarse con el código de tiempo entrante mediante control motor, una función poco común.
Formato de código de tiempo
El código de tiempo MIDI tiene una longitud de 32 bits, de los cuales se utilizan 24, mientras que 8 bits quedan sin usar y siempre son cero. Dado que los mensajes de código de tiempo completo requieren que los bits más significativos de cada byte sean cero (bytes de datos MIDI válidos), en realidad solo hay 28 bits disponibles y 4 bits de reserva.
Al igual que la mayoría de los códigos de tiempo audiovisuales, como el código de tiempo SMPTE , codifica únicamente la hora del día, repitiéndose cada 24 horas. El tiempo se expresa en horas, minutos, segundos y fotogramas . Puede haber 24, 25 o 30 fotogramas por segundo.
A diferencia de la mayoría de los demás códigos de tiempo, los componentes están codificados en binario directo, no en decimal codificado en binario .
A cada componente se le asigna un byte:
- Byte 0
0rrhhhhh: Tasa (0–3) y hora (0–23).rr = 00: 24 fotogramas/srr = 01: 25 fotogramas/srr = 10: 29,97 fotogramas/s ( código de tiempo SMPTE con pérdida de fotogramas )rr = 11: 30 fotogramas/s
- Byte 1
00mmmmmm: Minuto (0–59)- Byte 2
00ssssss: Segundo (0–59)- Byte 3
000fffff: Fotograma (0–29, o menos a velocidades de fotogramas más bajas )
Código de tiempo completo
Cuando se produce un salto en el código de tiempo, se envía un único código de tiempo completo para sincronizar los equipos conectados. Esto se realiza mediante un mensaje exclusivo del sistema global especial:
F0 7F 7F 01 01 hh mm ss ff F7
El ID del fabricante 7Findica un mensaje universal en tiempo real; el canal 7Findica una transmisión global. El ID siguiente 01identifica que se trata de un mensaje de código de tiempo, y el segundo 01indica que es un mensaje de código de tiempo completo. A continuación, se muestran los 4 bytes del código de tiempo. Aunque MIDI suele ser little-endian, los 4 bytes del código de tiempo se muestran en orden big-endian, seguidos de un F7byte de "fin de exclusivo".
Tras un salto, el cronómetro se detiene hasta que se recibe el primer mensaje de cuarto de cuadro siguiente.
Mensajes de cuarto de cuadro
Cuando el tiempo transcurre de forma continua, el código de tiempo de 32 bits se divide en 8 fragmentos de 4 bits, y se transmite un fragmento cada cuarto de trama. Es decir, entre 96 y 120 veces por segundo, dependiendo de la velocidad de trama. Dado que se necesitan ocho cuartos de trama para un mensaje de código de tiempo completo, la hora SMPTE completa se actualiza cada dos tramas. Un mensaje de cuarto de trama consta de un byte de estado 0xF1, seguido de un único valor de datos de 7 bits: 3 bits para identificar el fragmento y 4 bits de código de tiempo parcial. Cuando el tiempo avanza, los números de los fragmentos se incrementan de 0 a 7; el momento en que se transmite el fragmento 0 es el instante codificado, y los fragmentos restantes se transmiten posteriormente.
Si se está rebobinando el flujo de datos MIDI, los números de las piezas se cuentan hacia atrás. De nuevo, la pieza 0 se transmite en el momento codificado.
El código de tiempo se divide en formato little-endian de la siguiente manera:
Véase también
Referencias
- ↑ Meyer, Chris (1986-07-01). "The Unholy Marriage (EMM Jul 1986)" . Electronics & Music Maker (Jul 1986): 62– 64.
- ↑ Meyer, Chris (1987-07-01). "Código de tiempo MIDI" . Music Technology . 1 (9): 64– 66 – vía Music Magazine Archive.
- ↑ "Chris Meyer-Nuevos vectores en el sonido" . MIDI.org . 3 de enero de 2025. Consultado el 28 de diciembre de 2025 .
- ↑ Lehrman, Paul D. (enero de 1990). "Mi vida con el código de tiempo MIDI (SOS enero de 1990)" . Sound on Sound (enero de 1990): 64–72 .
- ↑ "SMPTE y MTC (código de tiempo MIDI)" . www.soundonsound.com . Consultado el 29/11/2024 .
- ↑ "Código de tiempo MIDI y reloj MIDI explicados" . Dummies . Consultado el 29/11/2024 .
- ^ Schütte, Benjamín; Bachmann, Cristina. "Estándares de código de tiempo" . archivo.steinberg.help . Consultado el 29 de noviembre de 2024 .
Enlaces externos
- Información del código de tiempo MIDI
- Especificación del código de tiempo MIDI , 12 de febrero de 1987
- Guía de la especificación del software MIDI
- estándares MIDI
- Códigos de tiempo
- Estándares SMPTE