Sintetizadores

MIDI.org ofrece gratuitamente las especificaciones MIDI completas

26/05/2016 por Pablo Fernández-Cid

Cuando en febrero dimos la noticia de la creación de The MIDI Association y su portal MIDI.org, ya comentábamos que existía el compromiso de hacer públicas y sin coste hacia cualquier interesado las especificaciones MIDI completas actuales. Ha habido que esperar un poco, pero por fin están ya listas y descargables. Son varios los documentos técnicos que hoy definen el estándar en todas sus múltiples dimensiones, pero nacieron de sólo 14 páginas en 1983 aún plenamente vigentes.

MIDI en 1983 y sus sólo 14 páginas

[Índice]

Las buenas esencias en tarro pequeño, y con MIDI esas 14 páginas con letra grande y abundancia de espacios resultaron suficientes para precisar todos los aspectos de un nuevo sistema de comunicación pensado de partida para enlazar instrumentos musicales entre sí. Precisamente hace bien poco, este espacio de MIDI.org en Hispasonic nos ofrecía el relato sobre los orígenes de la norma de mano de uno de sus principales promotores, Jeff Rona.

Aquella primera edición sólo 14 páginas pero capaces de iniciar una revolución, sigue plenamente vigente. Ninguno de sus preceptos ha sido anulado. Tanto el interfaz eléctrico, como los mensajes y protocolo permanecen válidos. Sencillamente el estándar inicial ya tenía previstos mecanismos para su posterior expansión.

Recuerdo haber recibido esa primera especificación en unas fotocopias que aún guardo. En el año 1983, cuando se publica de forma oficial la primera especificación MIDI, tenía yo 16 años y ya estaba metido con música y sintes, incluyendo la programación con el basic del ordenador Spectrum de algunos programas para generar notas y ruidos. La llegada del MIDI terminó de definir mis intereses hacia la confluencia de música/acústica/electrónica/informática, en el momento de elegir qué estudios universitarios iba a realizar.

Los siguientes años vieron florecer algunos documentos complementarios que extendían la inicial descripción de MIDI. Tuvimos que enterarnos de cosas tales como el SDS (MIDI Sample Dump Standard), el estándar General MIDI, los ficheros MIDI, el MTC (MIDI Tome Code), el MSC (MIDI Show Control), o el MMC (MIDI Machine Control), a través principalmente de documentos independientes que completaban a aquellas 14 páginas extendiéndolas aprovechando las formas de crecer previstas (esencialmente el uso de mensajes SysEx).

Si es cierto que se han matizado algunas cuestiones relativas a la primerísima versión, principalmente estableciendo un significado concreto para parte de los números de controlador que inicialmente estaban libres, y ampliando la lista de códigos de fabricantes en el apartado de sysex. Como resultado creció con el tiempo algo más allá de las 14 páginas, pero siempre (todavía hoy) ha mantenido el ser la especificación 1.0 de MIDI, aunque en versiones sucesivas del documento. Por ejemplo existieron documentos tales como la versión 4.2 de las especificaciones MIDI 1.0 (en la que estaba inserto lo referente a MTC, por ejemplo). Curioso eso de la v 4.2 del documento, pero manteniendo la norma y la especificación como 1.0, como forma de destacar la total retrocompatibilidad.

¿Complete? MIDI de 1995/96

[Índice]

Recuerdo haber adquirido (previo pago) la Complete MIDI 1.0 Detailed Specification, mientras trabajaba en una universidad investigando en cuestiones de audio/música. Lo de ‘Complete’ se refería a una recopilación en una única entrega de esos documentos separados a los que me he referido antes. La primera edición de las ‘Complete’ se produjo en 1995, y siendo años bastante intensos en novedades y ampliaciones de funcionalidad en MIDI, hubo varias hasta llegar a la editada en noviembre de 1996, que posteriormente se ha preparado en formato PDF con algunas correcciones, aclaraciones y cambios de maquetación.

Esa versión PDF es la que se ofrece para descarga en MIDI.org y recopila los siguientes documentos (veréis que está incluido uno del 98):

  • “Detailed MIDI Specification Document Version 4.2"
  • "MIDI Show Control"
  • "MIDI Machine Control"
  • "Standard MIDI Files"
  • "General MIDI Level 1"
  • “GM1 Developer Guidelines (2nd rev., 1998)”

Siendo esencialmente una descripción de MIDI acorde a 1996, el propio documento PDF incluye un índice de las reformas posteriores (que también pueden descargarse una a una de MIDI.org), y en el que vemos toda una variada sucesión de precisiones y ampliaciones sobre lo que esas ‘Complete Specifications’ contemplaban [me permito poner la lista sin traducir]:

  • Version 2 MIDI Implementation Chart
  • ​Response to Reset All Controllers
  • Response to Data Increment/Decrement Controller
  • Sound Controller Defaults (Revised)
  • Renaming of CC91 and CC93
  • File Reference SysEx Message
  • Sample Dump Size/Rate/Name Extensions
  • MIDI Tuning (Updated Specification)
  • Controller Destination SysEx Message
  • Key-based Instrument Controller SysEx Message
  • Global Parameter Control SysEx Message
  • Master Fine/Course Tuning SysEx Message
  • Redefinition of RPN01 and RPN02 (Channel Fine/Course Tuning)
  • RPN05 Modulation Depth Range
  • Extension 00-01 to File Ref SysEx Message
  • Default Pan Formula
  • High Resolution Velocity Prefix
  • Three Dimensional Sound Controllers
  • Electrical Specification Update [2014]

Por comentar como ejemplo sólo alguna de ellas, las de “Response to Reset All Controllers” y “Response to Data Increment/Decrement Controller” son unas explicaciones sobre cómo deben interpretarse esos mensajes (no todos los fabricantes los interpretaban igual y eran necesarias aclaraciones que evitaran cualquier ambigüedad). La de “Key-based Instrument Controller SysEx Message” es la base sobre la que instrumentos tales como los teclados y controladores multidimensionales (como los ROLI y semejantes) pueden reflejar vía MIDI el control individual de cada nota. El “High Resolution Velocity Prefix” es una forma estandarizada para poder especificar valor de velocidad con más de 7 bits. O la “Electrical Specification Update [2014]” contiene información útil para quienes diseñan interfaces MIDI dado que algunos de los circuitos recomendados en el año 1983 ya son de difícil localización o están superados en soluciones más recientes.

MIDI más allá de las ‘Complete Specification’

[Índice]

Además de todos esos documentos, hay otros cuantos más que hay que considerar para tener una descripción al 100% de lo que es MIDI a día de hoy. Afortunadamente, también descargables en MIDI.org.

Hay varios cambios relativos al formato de ficheros MIDI posteriores al estado (1996) que refleja el contenido de las ‘Complete Specification’, relacionados con cuestiones como Karaoke (la inclusión de las letras dentro de los ficheros MIDI, o la disponibilidad de varios idiomas de las mismas).

  • SMF Lyric Events Definition
  • SMF Device/Program Name Meta-events
  • SMF Language and Display Extensions
  • XMF Patch Prefix Meta Event

Está también toda la cuestión de las revisiones posteriores a 1996 respecto a la cuestión General MIDI. Así, se creó una especificación GM de nivel 2 más exigente que la 1 (obliga para poder mostrar el logo GM2 a mayores prestaciones en los sintes, con más polifonía, más sonidos, etc…), pero también ha surgido en movimiento contrario un General MIDI "Lite" destinado a los móviles y todo el mercado de tonos de llamada.

Hay otros muchos documentos que crean nuevas especificaciones o aclaran mejor las ya existentes, y referidas a esa especie de ‘soundfonts’ en MIDI que son los DLS, o al uso de los nuevos tipo s de interfaces (IEEE:1394, Bluetooth,…), la cuestión de formatos XML, etc.

  • Downloadable Sounds (DLS) (en las variants DLS, DLS2, and Mobile DLS)
  • Specification for MIDI over IEEE-1394
  • eXtensible Music Format (XMF) (includes XMF, mobile XMF, and related RPs)
  • Scalable Polyphony MIDI (SP-MIDI)
  • MIDI XML Names DTDs
  • Mobile Phone Control
  • Mobile Musical Instrument
  • MIDI Visual Control
  • Specification for MIDI over BLE

Cómo hacerse con los documentos

[Índice]

Basta registrarse en la página de MIDI.org y entonces estarán disponibles los enlaces de acceso, que tenéis recopilados en la sección de especificaciones.

Te puede interesar