Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

07 Midi-2022

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 17

MIDI

Qué es el MIDI
MIDI es el acrónimo de Musical Instrument Digital Interface (Interfaz Digital para
Instrumentos Musicales). Es un estándar técnico que describe un protocolo de
comunicación la interfaz digital y sus conexiones para permitir que una gran variedad de
instrumentos electrónicos, computadoras y otros dispositivos relacionados a la música o al
audio se conecten y se comuniquen entre sí.

La especi cación MIDI tomó forma en el año 1982 y se basó en la idea de Red Local de
computadoras. Hasta entonces se utilizaba un método no estandarizado llamado gate/
Control Voltage para interconectar instrumentos electrónicos. Este era un método primitivo
que no permitía la transferencia de datos muy complejos de un dispositivo a otro. Desde
su aparición, el MIDI ha impactado considerablemente el desarrollo de la música
electrónica que hasta hoy en día depende directamente del sistema MIDI para su
producción. La estandarización del MIDI permitió la interconexión de instrumentos en
estudios hogareños rápidamente ya que no requiere de mayores conocimientos técnicos
para comenzar a utilizarla (como sí lo hacían otros sistemas anteriores y más
complicados) y la gran mayoría de los instrumentos musicales electrónicos, computadoras
y otros dispositivos comenzaron a implementarlo incluyendo puertos MIDI listos para ser
utilizados. Los teclados y módulos de sintetizadores, samplers y workstations comenzaron
a utilizar MIDI como su implementación base. Los videojuegos utilizaron MIDI durante los
80s y 90s y hoy en día algunos siguen utilizándolo internamente. En los 2000s se aplicó
su implementación en celulares para lograr una mayor cantidad de canales y de timbres
antes de poder implementar audio PCM o comprimido. No solo se utiliza para aplicaciones
sonoras, muchos sistemas de iluminación para teatro utilizan MIDI.

Mensajes MIDI
La comunicación MIDI se compone de mensajes
que especi can notas, velocity (el volumen o fuerza
de cada nota), señales de control para cambiar
parámetros como amplitud, paneo, vibrato, ltros,
etcétera, cambios de programa o patch en los
instrumentos y la sincronización de tempo entre los
dispositivos.
Existen dos grandes categorías de mensajes: Los
mensajes de canal y los mensajes de sistema. 


fi
fi
fi
Mensajes de canal
Consideremos la más simple de las formas de conexión MIDI, un dispositivo maestro que
a través de su puerto de salida envía mensajes a un dispositivo esclavo en su puerto de
entrada. Cuando se realiza una acción en el dispositivo maestro, como tocar una nota,
mover un potenciómetro, la rueda de modulación o presionar un botón para cambiar de
programa, dicho dispositivo envía el mensaje correspondiente por su salida MIDI. Cada
mensaje MIDI contiene un número de canal asociado y el dispositivo esclavo debe estar
con gurado para escuchar los mensajes que contengan dicho número de canal. Por
defecto los dispositivos escuchan los mensajes de todos los canales a menos que
indiquemos lo contrario. Más adelante en la unidad veremos este tema en profundidad.
Por ahora vamos a asumir que el dispositivo esclavo está recibiendo correctamente los
mensajes que el dispositivo maestro envía.

Hay siete tipos de mensajes de canal que se pueden enviar: Note-On, Note-Off,
Polyphonic Key Pressure, Channel Pressure, Program Change, Pitch Bend Change y
Control Change.

Mensajes Note-On
Los mensajes Note-On se utilizan para indicar el comienzo de una nota MIDI. Se genera
cada vez que se ejecuta una nota en el dispositivo, es decir al tocar una tecla en un
controlador MIDI o golpear un pad en una batería electrónica, por ejemplo. Un mensaje
Note-On consiste de tres bytes de información:

•  Estado de Note-On y número de canal (0-15)

•  Número de nota MIDI (0-127)

•  Velocity (0-127)

El primer byte del mensaje especi ca que se trata de un evento de Note-On e indica el
canal asignado. El segundo byte especi ca cual de las posibles 128 notas (numeradas de
0 a 127) debe ejecutarse en el dispositivo esclavo. Por lo general a la nota MIDI número
60 se le asigna el Do central, mientras las notas de 21 a 108 corresponden a las 88 teclas
de un controlador extendido. El tercer y último byte se utiliza para indicar la velocity de la
nota, es decir, la velocidad a la que fue presionada la tecla.

Para evitar confusión aclaremos que los controladores MIDI no miden la fuerza con la que
presionamos una tecla para asignar la velocity, sino que miden cuánto tiempo tarda en
bajar la tecla desde su estado de reposo hasta el tope. Es decir, miden la velocidad a la
que hacemos bajar las teclas, de ahí el nombre velocity para hacer referencia a este
parámetro. La fuerza que ejercemos al momento del ataque es proporcional a la velocidad
a la que bajamos la tecla.

Si el dispositivo maestro no soporta la detección de velocity, el mensaje será enviado con


una velocity de valor 64 por defecto. De la misma manera, si el dispositivo esclavo no
soporta la reproducción de sonidos con velocity les asignará un valor de 64.
fi
fi
fi
Por último, un mensaje de Note-On con un valor de velocity de 0 generalmente es
equivalente a un mensaje de Note-Off. Esta implementación le dice al dispositivo que
silencie una nota si se encontraba sonando reproduciéndola con una velocity de valor 0.
Otras implementaciones obvian por completo los mensajes de Note-On que posean
velocity 0.

Mensajes Note-Off
Los mensajes Note-Off se utilizan para ordenar que se detenga la reproducción de una
nota MIDI especí ca. Cada mensaje Note-On continuará la reproducción de la nota
asignada hasta que un mensaje de Note-Off con la misma nota asignada sea recibido. De
esta forma se puede pensar en una composición musical básica como una serie de
mensajes Note-On y Note-Off. Debemos señalar que un mensaje Note-Off no cortará el
sonido de la nota asignada, simplemente se indicará que deje de ser reproducida. Esto
signi ca que el dispositivo esclavo saltará al punto de relajación (release) de las
envolventes del sonido que esté reproduciendo.

Al igual que los mensajes Note-On, los mensajes Note-Off se componen de tres bytes de
información:

•  Estado de Note-Off y número de canal (0-15)

• Número de nota MIDI (0-127)

• Velocity (0-127)


En contraste con el valor de velocity en los mensajes Note-On, en este caso se indica la
velocidad a la que la tecla fue soltada. Un valor bajo signi ca que la tecla se soltó muy
lentamente, mientras que un valor alto indica que la tecla se soltó rápidamente. No todos
los instrumentos soportan la detección o respuesta a la velocity para los mensajes Note-
Off, pero los que son compatibles con esta función permiten variar, por ejemplo, el tiempo
de relajación de las envolventes.


Polyphonic key pressure (Presión de tecla en polifónico)
Los mensajes de presión, a veces llamados Aftertouch suelen ocurrir cuando, luego de
presionar una tecla, decidimos ejercer más presión sobre la misma. No todos los
dispositivos pueden responder a esta acción, pero los que lo hacen pueden enviar
mensajes MIDI de presión o Aftertouch. 

Los mensajes de presión se pueden asignar al parámetro del sonido deseado como
vibrato, nivel (volumen), timbre, pitch o corte de un ltro. 

Un mensaje de presión de tecla en polifónico consiste de tres bytes de información:

• Estado de Polyphonic Key Pressure y número de canal (0-15)

• Número de nota MIDI (0-127)

• Valor de presión (0-127) 



fi
fi
fi
fi
Channel pressure (Presión de canal)
Si deseamos variar un parámetro de manera global dependiendo de la presión ejercida en
una tecla se pueden utilizar los mensajes de Presión de canal. Estos mensajes consisten
de los mismos bytes de información pero el primer byte indicará el estado de Channel
pressure.

Program change (Cambio de programa)


Los mensajes Program change se utilizan para cambiar el número de programa, patch o
preset del instrumento MIDI esclavo. Con este mensaje se pueden seleccionar hasta 128
programas diferentes de varias formas:

• Se puede transmitir un mensaje program change para cambiar de forma remota el


programa en un sintetizador, sampler, workstation o instrumento VST.

• Se puede programar un mensaje program change al comienzo de una secuencia


para que se programen los canales en los respectivos programas de sonido en
cada instrumento MIDI antes de comenzar la reproducción.

• Se puede utilizar un mensaje program change para cambiar el preset de un efecto


como una reverberación, compresor, chorus, etcétera de forma remota ya sea un
plugin o un rack de efectos.

• La lista continúa... Los mensajes program change constan de dos bytes de


información:

• Estado de Program Change y número de canal (0-15)

Numero de identi cación del programa (0-127) 





Pitch bend 


La rueda o joystick de pitch bend nos permite aumentar o disminuir el pitch de las notas
que se están reproduciendo. Como el oído puede ser muy sensible a los cambios en
altura tonal, este parámetro se codi ca usando dos bytes de datos además del byte de
estado produciendo un total de 16.284 pasos de precisión. El rango de valores de pitch
bend va entonces de -8.192 a +8.191 correspondiendo el valor 0 a el pitch original sin
alteración. Aunque la especi cación MIDI recomienda un rango máximo de 2 semitonos
hacia arriba y hacia abajo para el pitch bend para evitar la percepción de escalonamientos
en la altura tonal, pero muchos instrumentos MIDI nos permiten cambiar este rango. 


Control change (Cambio de control)


Los mensajes control change (Abreviados CC) se
utilizan para transmitir información relacionada con el
cambio de controles en tiempo real. Se pueden
transmitir tres tipos de mensajes control change:
fi
fi
fi
• Control continuo: Para controles que poseen un rango de valores. Estos controles
tienen 128 pasos de resolución, es decir que el rango va de 0 a 127, sin embargo
se pueden combinar dos mensajes de control continuo para obtener una mayor
resolución.

• Control de switch: Son controles que poseen solo un estado “encendido” y un


estado “apagado” sin valores intermedios.

• Mensajes de modo: Se utilizan para ciertas acciones especiales como resetear un


instrumento, encender o apagar el control MIDI local, apagar todas las notas, entre
otras opciones. 

Un mensaje CC consiste de tres bytes de información:

• Estado de Control Change y número de canal (0-15)

• Número identi cador (ID) del control (0-127)

Valor del control (0-127) 





Como podemos observar, el segundo byte de un mensaje CC se utiliza para enviar el
número de ID del control. Este valor es el que especi ca qué parámetro es el que se va a
modi car.

Valor de los controles


Antes de ver en detalle los diferentes IDs para los controles, veamos rápidamente cómo
funcionan los valores.

El tercer byte de un mensaje CC envía el valor correspondiente y, dependiendo de la


función nal del mensaje, estos valores van a representar diferentes parámetros. Veamos
algunos ejemplos:

• En el caso de un control variable que no requiere mucha precisión, un control


continuo de 7 bits permite valores de 0 a 127.

• El rango de valores par un control de paneo caerá entre 0 (izquierda total), 127
(derecha total) correspondiendo 64 a la posición central.

• El valor de un control de switch generalmente es 0 para apagado y 127 para


encendido, pero es normal que una función de switch responda a mensajes de
control continuo reconociendo los valores de 0 a 63 como “apagado” y los valores
de 64 a 127 como “encendido”. 


En algunos casos una precisión de 128 pasos puede no ser su ciente, para mitigar este
problema la especi cación midi permite aumentar la resolución de algunos de los
parámetros utilizando un CC extra como control “ no” multiplicando la precisión por 128,
lo que nos entrega una precisión de 16.384 pasos. Esto funciona concatenando ambos
controles para que el control no nos agregue 128 pasos dentro de cada unidad del
control original.
fi
fi
fi
fi
fi
fi
fi
fi

Números de identi cación de CC
Cada CC está asignado a una función determinada según la especi cación MIDI. Puede
que algunos instrumentos no soporten algunas de estas asignaciones, pero por lo general
si enviamos un cambio en un control determinado, el parámetro especi cado será
alterado en el instrumento. De la misma manera estos controles suelen estar asignados
por defecto en los controladores MIDI. Por ejemplo, si conectamos un controlador MIDI a
un instrumento VST en la PC que posee como modulación un vibrato, al mover la rueda
de modulación en controlador se enviarán los mensajes control change con número de ID
1 y los valores correspondientes. El instrumento recibirá los mensajes y modi cará el
vibrato ya que el CC 1 está asignado a la rueda de modulación por defecto.


Existe un rango de IDs de control change que no vienen asignados a ningún parámetro
por defecto, éstos son los CC que van de 14 a 31. Los instrumentos MIDI, los DAWs y los
plugins por lo general nos permiten asignar controles a cualquier parámetro deseado que
no venga asignado por defecto. Asimismo los controladores MIDI suelen traer una
cantidad de botones, faders y potenciómetros asignados a este rango de IDs de control
change para que podamos asignarlos a cualquier parámetro deseado.


Los CC que van desde 32 hasta 63 se utilizan en conjunto con los primeros 32 como
controles nos para multiplicar por 128 la precisión de los controles en caso de que haga
falta y en caso de que los instrumentos MIDI en cuestión lo soporten. Los CC de 64 a 69
son switches, solo poseen dos posibles seteos.

Los últimos, de 120 hasta 127, son CCs reservados para los modos de canal. Todos estos
mensajes (excepto el CC 122 que funciona como switch) funcionan tan solo al ser
enviados y no necesitan que se les asigne un valor.

Veamos algunos de los controles más importantes:

• Bank select (Selección de banco): CC 0 y 32. Hoy en día los instrumentos suelen
tener más de 128 presets o programas. Como los mensajes Program Change (que
ya hemos visto) solo permite cambiar entre 128 con guraciones, el control de
selección de banco puede ser utilizado para cambiar entre varios grupos de 128
presets.

• MOD wheel (Rueda de modulación): CC 1 y 33. Como hemos visto antes la rueda
de modulación envía sus valores en un mensaje MIDI de control change de ID 1. Si
se requiere más precisión en este parámetro se puede utilizar el CC 34 como
control no. Aunque la mayoría de los controladores e instrumentos no hacen uso
de este CC extra y solo envían y reciben información para la rueda de modulación
por el CC 1.

• Channel volume (Volumen de canal): CC 7 y 39. Este parámetro afecta el volumen


de salida del instrumento en cuestión. En el caso de un instrumento multitímbrico,
afectará solo al programa o preset asignado al canal indicado en el mensaje CC.
Este volumen es independiente de la velocity de los mensajes Note-On.

• Hold pedal (Pedal de sustain): CC 66. Este control se utiliza para transmitir cuando
se presiona o se suelta el pedal de sustain. Los instrumentos MIDI que reciben un
fi
fi
fi
fi
fi
fi
fi
mensaje CC indicando que el pedal ha sido presionado mantendrán en espera
todos mensajes de Note-Off que se reciban a partir de ese momento. Las notas
que se toquen entonces continuarán sonando inde nidamente. Cuando se recibe el
mensaje CC indicando que el pedal de sustain ha sido soltado se ejecutarán todos
los Note- Off que se tenían en espera.

• Reset all controllers (Resetear todos los controladores): CC 121. Al recibir este
mensaje, un instrumento MIDI volverá a sus valores por defecto todos los CCs.
Esto puede ser útil para reinicializar el instrumento antes de comenzar a tocar una
canción o una secuencia y asegurarse de que todos los controles están en sus
valores por defecto si se que se habían modi cado controles con anterioridad.

• All notes off (Apagar todas las notas): CC 123. En raras ocasiones una nota MIDI
se puede quedar pegada. Esto puede suceder por una mala comunicación entre
los dispositivos, un mensaje de Note- Off corrupto o una desconexión, cuando el
dispositivo esclavo recibe un mensaje de Note-On pero luego no recibe el Note-Off
para la nota en cuestión. Como resultado el dispositivo continuará tocando dicha
nota inde nidamente. Si descubrimos cuál es la nota y volvemos a tocarla
enviaremos nuevos mensajes Note-On y Note-Off apagándola de una vez, pero
generalmente en esos momentos de pánico es muy difícil encontrar la nota que se
quedó pegada. Para estos casos existe un botón de pánico en algunos
dispositivos, controladores midi e incluso plugins. Al presionar el botón de pánico el
dispositivo envía mensajes de Note-Off para todas las notas mitigando el problema
instantáneamente. De la misma manera la mayoría de los DAWs envían mensajes
de Note-Off a todas las notas y a todos los canales de todos los dispositivos
cargados cuando hacemos clic en Stop en la barra de transporte, incluso si no se
está reproduciendo el proyecto.

• Omni mode on/off (Modo omni encendido/apagado): CC 124 y 125. Al enviar uno
de estos dos mensajes el dispositivo encenderá o apagará el modo omni. Cuando
un instrumento MIDI está en modo omni hace escucha de todos los canales MIDI,
es decir que hará caso a todos los mensajes que le lleguen cualquiera sea el canal
asignado. Con el modo omni apagado el instrumento solo escucha los mensajes
cuyo canal le corresponde.

A continuación la lista con todos los CC existentes en la especi cación MIDI:

N° Nombre del control Valor


Controles de 14 bits MSB
0 Bank Select 0–127
1 Modulation Wheel or Lever 0–127
2 Breath Controller 0–127
3 Unde ned 0–127
4 Foot Controller 0–127
5 Portamento Time 0–127
6 Data Entry MSB 0–127
7 Channel Volume (formerly Main Volume) 0–127
fi
fi
fi
fi
fi
8 Balance 0–127
9 Unde ned 0–127
10 Pan 0–127
11 Expression Controller 0–127
12 Effect Control 1 0–127
13 Effect Control 2 0–127
14 Unde ned 0–127
15 Unde ned 0–127
16–19 General Purpose Controllers 1–4 0–127
20–31 Unde ned 0–127
Controles nos de 14 bits LSB
32 LSB for Control 0 (Bank Select) 0–127
33 LSB for Control 1 (Modulation Wheel or Lever) 0–127
34 LSB for Control 2 (Breath Controller) 0–127
35 LSB for Control 3 (Unde ned) 0–127
36 LSB for Control 4 (Foot Controller) 0–127
37 LSB for Control 5 (Portamento Time) 0–127
38 LSB for Control 6 (Data Entry) 0–127
39 LSB for Control 7 (Channel Volume) 0–127
40 LSB for Control 8 (Balance) 0–127
41 LSB for Control 9 (Unde ned) 0–127
42 LSB for Control 10 (Pan) 0–127
43 LSB for Control 11 (Expression Controller) 0–127
44 LSB for Control 12 (Effect Control 1) 0–127
45 LSB for Control 13 (Effect Control 2) 0–127
46–47 LSB for Control 14–15 (Unde ned) 0–127
48–51 LSB for Control 16–19 (General Purpose 0–127
52–63 Controllers 1–4) 20–31 (Unde ned)
LSB for Control 0–127
Controles de 14 bits
64 Damper Pedal On/Off (Sustain) 0-63 off, 64-127 on
65 Portamento On/Off 0-63 off, 64-127 on
66 Sostenuto On/Off 0-63 off, 64-127 on
67 Soft Pedal On/Off 0-63 off, 64-127 on
68 Legato Footswitch 0-63 off, 64-127 on
69 Hold 2 0-63 off, 64-127 on
fi
fi
fi
fi
fi
fi
fi
fi
fi
70 Sound Controller 1 (default: Sound Variation) 0–127 LSB
71 Sound Controller 2 (default: Timbre/Harmonic 0–127 LSB
72 Intens.)
Sound Controller 3 (default: Release Time) 0–127 LSB
73 Sound Controller 4 (default: Attack Time) 0–127 LSB
74 Sound Controller 5 (default: Brightness) 0–127 LSB
75 Sound Controller 6 (default: Decay Time) 0–127 LSB
76 Sound Controller 7 (default: Vibrato Rate) 0–127 LSB
77 Sound Controller 8 (default: Vibrato Depth) 0–127 LSB
78 Sound Controller 9 (default: Vibrato Delay) 0–127 LSB
79 Sound Controller 10 (default unde ned) 0–127 LSB
80–83 General Purpose Controller 5–8 0–127 LSB
84 Portamento Control 0–127 LSB
85–90 Unde ned —
91 Effects 1 Depth (default: Reverb Send Level) 0–127 LSB
92 Effects 2 Depth (default: Tremolo Level) 0–127 LSB
93 Effects 3 Depth (default: Chorus Send Level) 0–127 LSB
94 Effects 4 Depth (default: Detune Depth) 0–127 LSB
95 Effects 5 Depth (default: Phaser Depth) 0–127 LSB
Controladores
96 Data Increment (Data Entry +1) —
97 Data Decrement (Data Entry –1) —
98 Non-Registered Parameter Number (NRPN) 0–127 LSB
99 Non-Registered Parameter Number (NRPN) 0–127 LSB
100 Registered Parameter Number (RPN) 0–127 LSB
101 Registered Parameter Number (RPN) 0–127 LSB
102–119 Unde ned —
Reservado para mensajes de modo de canal
120 All Sound Off -
121 Reset All Controllers -
122 Local Control On/Off (0 off, 127 on)
123 All Notes Off -
124 Omni Mode Off -
125 Omni Mode On -
126 Poly Mode Off -
127 Poly Mode On -
fi
fi
fi
MSB y LSB son las siglas de Most Signi cant Byte y Least Signi cant Byte, el byte más
signi cativo y el byte menos signi cativo. Esto hace referencia a los controles gruesos y
nos de los que estuvimos hablando. Cuando se utilizan dos CC para controlar un
parámetro con una precisión de 16.384 pasos se transmitirán dos mensajes control
change, uno con el MSB y el otro con el LSB. La relación entre el MSB y el LSB es la
misma que la relación entre decenas y unidades.

Mensajes de sistema
Los mensajes de sistema son transmitidos globalmente a todos los dispositivos MIDI en la
cadena. Esto sucede porque los mensajes de sistema no llevan indicado un canal MIDI,
por eso cualquier instrumento en la cadena recibirá e implementará lo establecido en el
mensaje cualquiera sea su canal de escucha.

Mensajes comunes de sistema


Los mensajes comunes de sistema suelen ir destinados a secuenciadores, pudiendo ser
enviados desde otro secuenciador u otro dispositivo que posea esa capacidad (cajas de
ritmo, grabadoras multipistas, workstations, etc.). Permiten posicionar automáticamente
un secuenciador en un determinado fragmento de la línea de tiempo en una canción o
secuencia desde el dispositivo de control. El más importante es el MIDI Time Code (MTC)
que se utiliza para sincronizar secuenciadores con DAWs, por ejemplo.

Mensajes de sistema de tiempo real


Los mensajes de sistema de tiempo real, se utilizan para coordinar y sincronizar
dispositivos MIDI que normalmente funcionarían de forma independiente, como dos
secuenciadores. En este caso, uno funciona como maestro y el otro como esclavo.
Aunque los secuenciadores trabajan por defecto con un reloj interno (maestros), siempre
es posible con gurarlos para que dependan de un reloj externo (esclavos). En este caso,
estos mensajes de sincronía deben ser enviados a intervalos regulares (24 veces por
negra).

Mensajes de sistema exclusivo (SysEx)


Todo dispositivo MIDI posee algunas características particulares condicionadas por su
hardware y software interno y que son difíciles de incluir en el estándar MIDI. Por eso los
fabricantes acordaron dejar un grupo de mensajes de formato libre para uso particular de
cada dispositivo.

Para lograr esta exibilidad, los mensajes de sistema exclusivo (SysEx) incluyen un byte
con un código que indica el fabricante (Roland, Yamaha, etc.) y otro especí co del
modelo. A continuación el mensaje puede tener cualquier longitud, por lo que para indicar
fi
fi
fi
fl
fi
fi
fi
fi
el n del mensaje se incluye el byte de n de mensaje exclusivo o EOX (End Of
Exclusive). El mensaje en sí puede ser un tren de bits del largo deseado y con cualquier
información, por lo tanto se pueden transmitir desde órdenes especí cas a un dispositivo
(que no existen entre los mensajes estándar de la especi cación MIDI) hasta programas
completos o con guraciones del dispositivo.

Como los mensajes de sistema exclusivos solo son compatibles con los sistemas para los
que fueron creados, los dispositivos leen los bytes que indican la marca y modelo del
instrumento al que va destinado el mensaje, si no se corresponden con sus propios
registros hacen caso omiso de todo el mensaje hasta que llegue el byte de n de mensaje
exclusivo.

General MIDI

Uno de los problemas que enfrenta el protocolo MIDI es la compatibilidad entre
dispositivos al ser estos tan

diferentes uno del otro. Sí creamos un archivo MIDI en un dispositivo y lo trasladamos a


otro puede que los presets o patches asignados en cada canal no posean un programa
que corresponda con el sonido deseado. Por ejemplo, el programa número 51 en un
dispositivo puede ser una guitarra eléctrica y en otro dispositivo un xilofón.

Para mitigar este problema se creó el estándar General MIDI (GM) que asigna un número
de programa a cada instrumento. Cada dispositivo MIDI puede tener su propio set de
instrumentos, es decir el Grand Piano de un teclado Roland no sonará igual al de un Korg,
pero este estándar garantiza que al menos se trate de un piano.

Los instrumentos MIDI generalmente poseen dos grandes bancos de sonidos, uno es
personalizable y el otro posee los programas General MIDI, cuando se reproduce una
secuencia MIDI se utilizarán los sonidos de este último banco a menos que se con gure lo
contrario.

Las placas de sonido, los celulares y los drivers con bancos MIDI virtuales, por ejemplo,
utilizan este estándar para reproducir archivos MIDI.

A continuación la tabla de instrumentos General MIDI con su respectivo número de


programa:
fi
fi
fi
fi
fi
fi
fi
Esta lista no posee el set de percusión. En el estándar General MIDI se especi ca que la
percusión siempre se envíe por el canal 10. Al enviar una secuencia de notas por este
canal el programa seleccionado siempre será el set de percusión y cada nota pertenece a
un instrumento del set.

A continuación vemos la tabla con el número de nota asignado a cada instrumento del set
de percusión:
fi
Conectando dispositivos MIDI
El protocolo MIDI fue creado originalmente para
interconectar instrumentos MIDI físicamente
independientes. Esto se logró al comienzo y hasta
hace muy poco con cables MIDI. Estos cables
poseen dos conectores DIM de 5 pines. Los pines
4 y 5 transmiten datos MIDI, el pin 2 es una
conexión de tierra para evitar interferencias y los
pines 1 y 3 generalmente no se utilizan aunque
ciertos dispositivos pueden enviar Phantom Power
que permiten alimentar otros dispositivos (al igual
que en los preampli cadores para micrófonos de
condensador).

La tecnología de Wireless MIDI (MIDI sin cables)


fue introducida luego, permitiendo transferir los
datos MIDI por el aire lo cual fue muy útil para las
performances en vivo ya que permitía mover por el
escenario los controladores MIDI sin el peligro de
interferencias y desconexiones que implican los
cables MIDI de gran longitud.

En los tiempos actuales raramente se utilizan cables


MIDI tradicionales (aunque los dispositivos siguen incluyendo los puertos con conectores
DIM) ya que el protocolo MIDI es un sistema digital y puede ser procesado, enviado y
recibido por software, puede transmitirse a través de redes locales, por Wi-Fi o cables
USB.
fi
Los dispositivos MIDI actuales funcionan con USB ya que tiene varias ventajas. Además
de la universalidad de este tipo de cables y puertos, se pueden enviar y recibir mensajes
midi por un solo cable cuando los cables MIDI tradicionales tienen una sola dirección.

De todas formas veremos la manera clásica en la que se conectan instrumentos MIDI ya


que todos los sistemas MIDI actuales emulan digitalmente la misma forma de conexión.

Puertos y canales MIDI


Existen tres tipos de conectores MIDI: In, Out y Thru. A través de ellos podemos
interconectar una gran cantidad de dispositivos MIDI. De la misma forma podemos tener
una gran cantidad de instrumentos VST en un DAW que reciben MIDI de un controlador o
de una secuencia escrita o grabada. Una vez que tenemos conformada una cadena MIDI
de instrumentos los mensajes enviados desde el controlador pasarán por toda la cadena y
llegarán a todos los dispositivos. La forma de seleccionar qué dispositivo controlar en
cada momento es utilizando los 16 canales que ofrece el estándar MIDI.

Cada dispositivo esclavo debe estar con gurado para escuchar un canal MIDI especí co.
Cuando enviamos un mensaje con un canal asignado, este mensaje llegará a todos los
instrumentos pero solo será ejecutado por el dispositivo que esté escuchando el canal
asignado.

Por supuesto que el dispositivo maestro puede enviar mensajes para todos los canales si
lo deseamos, así como también un dispositivo esclavo puede estar en modo omni para
escuchar los mensajes de todos los canales.

MIDI In (Entrada)
Este conector nos permite recibir mensajes de otro dispositivo y comunica todas las notas
ejecutadas y parámetros manipulados al procesador interno del dispositivo. Esto permite
al dispositivo ser controlado remotamente. Algunos dispositivos pueden tener más de un
puerto de entrada. En estos casos el instrumento puede con gurarse para escuchar
mensajes de determinado puerto, además de especi car el o los canales de cada puerto.
Esto permite tener más de 16 canales de entrada. Otros dispositivos pueden no tener
conectores de entrada, por ejemplo los controladores MIDI.

MIDI Out (Salida)


El conector de salida es utilizado para transmitir mensajes MIDI a otro dispositivo para
controlarlo remotamente. Algunos dispositivos pueden tener más de un puerto de salida
permitiendo seleccionar hacia qué puerto enviar los mensajes. Al igual que con los
puertos de entrada, esto permite de 16 canales de salida por puerto.
fi
fi
fi
fi
MIDI Thru
El conector MIDI Thru retransmite una copia exacta de los mensajes que se reciben a
través del conector de entrada del instrumento. Esto proceso es importante porque
permite que los datos pasen a través de un dispositivo y sigan hacia el siguiente
dispositivo en la cadena MIDI.

Es importante notar la diferencia de este puerto con el de salida. El dispositivo en cuestión


nunca envía mensajes propios por el puerto MIDI Thru, solo reenvía lo que recibe por el
puerto MIDI In.

MIDI Echo (Eco)


Algunos dispositivos midi poseen un conector llamado Echo, este es una mezcla de Out y
Thru, ya que puede funcionar como cualquiera de los dos e incluso como ambos a la vez.
Es decir, puede reenviar los mensajes recibidos, enviar los mensajes propios u hacer
ambas cosas a la vez.

MIDI USB
Cuando utilizamos un cable USB para conectar un dispositivo MIDI a nuestra PC lo que
estamos haciendo es equivalente a conectar dos cables MIDI obteniendo envío y
recepción de mensajes desde y hacia ambos dispositivos.

Conexión de instrumentos MIDI


La forma más fácil de conectar más un dispositivo MIDI esclavo a un dispositivo maestro
es en serie utilizando el puerto MIDI Thru. El dispositivo maestro va conectado por su
puerto de salida al puerto de entrada del primer esclavo. Este último está conectado
desde su puerto MIDI Thru al puerto de entrada del siguiente esclavo. A continuación
podemos seguir la cadena cuanto queramos siempre saliendo de puerto Thru y entrando
en el puerto In del dispositivo siguiente. Esto asegura que cualquier mensaje que salga
del dispositivo maestro será recibido y replicado por cada uno de los dispositivos hasta el
nal de la cadena.
fi
Si tenemos un instrumento MIDI y queremos utilizar las capacidades de secuenciación de
otro dispositivo, como un secuenciador o un DAW en una computadora, podemos utilizar
los puertos de entrada y salida conectando dos cables para crear una conexión de dos
vías. Entonces podemos ejecutar el instrumento y que las notas lleguen al secuenciador
para ser grabadas. Luego podemos reproducir las notas grabas y que estas lleguen al
dispositivo de nuevo para ser reproducidas.

El instrumento maestro además puede llevar una cadena de dispositivos MIDI conectada
a su puerto Thru. De esta forma podemos controlar otros dispositivos desde el maestro y
si grabamos en la computadora una secuencia esta también podrá ser reproducida por los
otros dispositivos a través de la cadena.

También podemos realizar una conexión de múltiples dispositivos utilizando diferentes


puertos en lugar de conectarlos en serie. En este caso el dispositivo maestro no solo debe
especi car un canal en los mensajes, sino que también debe enviar los mensajes a través
del puerto correcto.

Cuando conectamos varios instrumentos MIDI por USB a una computadora conectamos
cada dispositivo a la entrada y la salida de puertos diferentes. Los DAWs nos permiten
elegir el puerto de salida, que gracias al sistema operativo no solo es un número sino que
posee el nombre del dispositivo.
fi
Otras tecnologías
Además de el protocolo MIDI existen otras tecnologías más modernas que sirven a la
intercomunicación entre dispositivos de audio.

OSC
OSC (Open Sound Control) es un protocolo de comunicación entre computadoras,
instrumentos y otros

dispositivos multimedia. Está optimizado para las tecnologías modernas de redes. Es un


sistema muy potente que soporta una gran cantidad de plataformas, posee mucha
precisión en sus controles y es muy exible.

Permite enviar mensajes de control desde y hacia plataformas como DAWs, aplicaciones
para celulares, páginas web y muchos sistemas de programación.

MIDI HD
Actualmente se encuentra en desarrollo una mejora para el protocolo MIDI. Esta nueva
versión llamada MIDI HD promete muchas mejoras y será compatible con los dispositivos
que utilizan el protocolo MIDI actual.

Algunos de los bene cios de esta actualización son:

• Conectividad Plug & Play a través de redes por USB y Ethernet

• Cientos de canales MIDI

• Una inmensa cantidad de controles de alta precisión (ya no solo de 128 pasos)

• Mensajes con timestamp (marcas de tiempo) para mayor precisión en tiempo

• Mayor compatibilidad con futuros cambios 



fi
fl

También podría gustarte