General MIDI
# General MIDI

General MIDI o GM es una especificación para sintetizadores la cual exige una serie de requisitos que van más allá del MIDI estándar.
Mientras MIDI asegura ser un protocolo que asegura la interoperabilidad entre distintos instrumentos musicales, GM va más allá: por un lado exige que todos los instrumentos compatibles con GM tienen que cumplir unas características, así por ejemplo que sean capaces de tocar al menos 24 notas simultáneamente, por otro lado, conlleva ciertas interpretaciones de muchos parámetros y mensajes de control que en MIDI no se especificaban, así por ejemplo es el caso de que hay que definir los sonidos de instrumentos para cada uno de los 128 sonidos posibles. Es decir, GM define realmente qué sonidos se pueden crear en el ordenador y cómo van a ser esos enviados al procesador para que emita los sonidos, por tanto es la especificación GM la que define el formato MIDI en una tarjeta de sonido.
Sin embargo, aunque GM especifique que instrumento corresponde con cada número de programa, no específica la sintetización que se debe llevar a cabo para cada instrumento. Como consecuencia las técnicas usadas para generar dicho instrumento pueden ser tan distintas que el sonido final generado por un mismo instrumento puede variar de un sintetizador a otro.

# General MIDI
## Evolución

La primera estandarización de General MIDI fue en 1991. A lo largo de todo este tiempo el General MIDI se ha ido extendiendo hasta tal punto que ciertas empresas han creado sus propias extensiones como es el caso de Roland GS extensions y Yamaha’s XG. La última revisión del GM llegó con GM level2 en 1999.

# General MIDI
## Evolución
### GM Level1

Los requisitos que General MIDI Level 1 exige con respecto a los instrumentos compatibles con él son:
* Trabajar con 24 voces simultáneamente.
* Respuesta al matiz de la nota (note velocity).
* Soportar 16 canales de sonido simultáneamente (reservando el canal 10 para percusión).
* Soportar polifonía en cada canal.
Otras características a destacar en el GM de nivel 1 son; el RPN y el SysEx. RPN consiste en determinar el número de parámetros que se requieren en el envío de paquetes; dos mensajes de control usando números de control para seleccionar el parámetro, seguido de un número cualquiera de datos de uno o dos bytes y finalmente un mensaje de finalización de RPN. Un ejemplo de secuencia de control para sintonizar A440 sería: (parm 2, value 64):101:0, 100:2, 6:64, 101:127, 100:127
Tanto GM como MIDI estándar disponen de varios tipos de mensajes especiales para alterar la manera en la que los sintetizadores generan la melodía: SCM o mensajes comunes de sistema, SRTM o mensajes de sistema en tiempo real(utilizados para propósitos de sincronización) y SysEx.o mensajes exclusivos del sistema,
siendo este último tipo de mensajes el más especial. SysEx define sólo dos tipos de mensajes: uno para habilitar y otro para deshabilitar la compatibilidad de General MIDI permitiendo que cada sintetizador se comporte de manera especial y distinta para el mismo mensaje.

# General MIDI
## Evolución
### GM Level2

Como ya hemos dicho anteriormente GM Level 1 tiene una actualización que es Level 2, la cual exige otros requisitos a los instrumentos compatibles: Número de notas, mínimo de 32 notas simultáneamente.
* Hasta 2 kits de percusión simultáneos (Canales 10/11).
* Nuevos sonidos melódicos, ahora hay un total de 256.
* 9 kits de batería GS.
* Mensajes adicionales de cambio de control.
** Filter Resonance (Timbre/Harmonic Intensity)
** Decay Time (cc#75)
** Vibrato Rate (cc#76)
** Vibrato Depth (cc#77)
** Vibrato Delay (cc#78)
* Registered Parameter Numbers (RPNs)
* Número de parámetros registrado, con respecto a la modulación en profundidad.
** Modulation Depth Range (Vibrato Depth Range)
* Mensajes basados en la estructura SysEx Universal.
** Master Volume, Fine Tuning, Coarse Tuning
** Reverb Type, Time
** Chorus Type, Mod Rate, Mod Depth, Feedback, Send to Reverb
** Controller Destination Setting
** Scale/Octave Tuning Adjust
** Key-Based Instrument Controllers
** GM2 System On

# General MIDI
## Parámetros

Los instrumentos deben obedecer las siguientes convenciones para eventos de programa y controlador.

# General MIDI
## Parámetros
### Cambio de programa

En MIDI, el sonido de instrumento o "programa" para cada uno de los 16 canales MIDI posibles se selecciona con el mensaje de cambio de programa o program change, que sigue un parámetro de números. A continuación se muestra qué sonido de instrumento corresponde a cada uno de los 128 números de programa posibles para GM exclusivamente. También se muestran sonidos exclusivos de GM2, que se seleccionan con los mensajes de número de banco o bank number MSB=121 y LSB del 1 al 9.

# General MIDI
## Parámetros
### Cambio de programa
#### Pianos

* 1 Gran piano acústico
** 1 Gran piano acústico (amplio)
** 2 Gran piano acústico (oscuro)
* 2 Piano brillante acústico
** 1 Piano brillante acústico (amplio)
* 3 Gran piano eléctrico
** 1 Gran piano eléctrico (amplio)
* 4 Piano de cantina
** 1 Piano de cantina (amplio)
* 5 Piano Rhodes (Piano eléctrico 1)
** 1 Piano eléctrico desafinado 1
** 2 Piano eléctrico 1 (velocidad)
** 3 Piano eléctrico de los 60
* 6 Piano eléctrico 2 (Chorus)
** 1 Piano eléctrico desafinado 2
** 2 Piano eléctrico 2 (velocidad)
** 3 Piano eléctrico leyenda
** 4 Piano eléctrico fase
* 7 Clavicordio
** 1 Clavicordio (octavas)
** 2 Clavicordio (amplio)
** 3 Clavicordio (soltar)
* 8 Clavecín
** 1 Clavecín pulso

# General MIDI
## Parámetros
### Cambio de programa
#### Percusión cromática

* 9 Celesta
* 10 Carrillón
* 11 Caja de música
* 12 Vibráfono
** 1 Vibráfono (amplio)
* 13 Marimba
** 1 Marimba (amplio)
* 14 Xilófono
* 15 Campanas tubulares
** 1 Campanas de iglesia
** 2 Carillón
* 16 Salterio

# General MIDI
## Parámetros
### Cambio de programa
#### Órganos

* 17 Órgano Hammond
** 1 Órgano Hammond desafinado
** 2 Órgano italiano de los 60
** 3 Órgano Hammond 2
* 18 Órgano percusivo
** 1 Órgano percusivo desafinado
** 2 Órgano percusivo 2
* 19 Órgano rock
* 20 Órgano de iglesia
** 1 Órgano de iglesia (octavas)
** 2 Órgano de iglesia desafinado
* 21 Armonio
** 1 Órgano soplado
* 22 Acordeón
** 1 Acordeón 2
* 23 Armónica
* 24 Bandoneón/Tango Acordeón

# General MIDI
## Parámetros
### Cambio de programa
#### Guitarras

* 25 Guitarra acústica (Nylon)
** 1 Ukelele
** 2 Guitarra acústica (Nylon + soltar)
** 3 Guitarra acústica (Nylon 2)
* 26 Guitarra acústica (Acero/Metal)
** 1 Guitarra de 12 cuerdas
** 2 Mandolina
** 3 Guitarra con sonido de caja
* 27 Gt. de jazz
** 1 Gt. eléctrica (acero con pedal)
* 28 Gt. eléctrica (limpia)
** 1 Gt. eléctrica (limpia desafinada)
** 2 Guitarra de tono medio
* 29 Gt. eléctrica (sorda)
** 1 Gt. eléctrica (corte funky)
** 2 Gt. eléctrica (sorda con cambio de velocidad)
** 3 Hombre de Jazz
* 30 Gt. saturada
** 1 Pellizco de guitarra
* 31 Gt. distorsion
** 1 Gt. distorsion (con retroalimentación)
** 2 Guitarra rítmica distorsionada
* 32 Gt. armónicos
** 1 Gt. retroalimentación

# General MIDI
## Parámetros
### Cambio de programa
#### Bajos

* 33 Bajo acústico
* 34 Bajo digitado
** 1 Bajo digitado slap
* 35 Bajo con púa
* 36 Sin trastes
* 37 Bajo slap 1
* 38 Bajo slap 2
* 39 Sinte bajo 1
** 1 Sinte bajo (cálido)
** 2 Sinte bajo 3 (resonancia)
** 3 Bajo clavecín
** 4 Bajo percutor
* 40 Sinte bajo 2
** 1 Sinte bajo 4 (ataque)
** 2 Sinte bajo (goma)
** 3 Pulso ataque

# General MIDI
## Parámetros
### Cambio de programa
#### Cuerdas / orquesta

* 41 Violín
** 1 Violín (ataque lento)
* 42 Viola
* 43 Violonchelo
* 44 Contrabajo
* 45 Tremolo cuerdas
* 46 Pizzicato cuerdas
* 47 Arpa sinfónica
** 1 Yangqin
* 48 Timbales cromáticos

# General MIDI
## Parámetros
### Cambio de programa
#### Ensemble

* 49 Cuerdas 1
** 1 Cuerdas y metales
** 2 Cuerdas de los 60
* 50 Cuerdas 2
* 51 Cuerdas sinte 1
** 1 Cuerdas sinte 3
* 52 Cuerdas sinte 2
* 53 Coro "Aah"
** 1 Coro "Aah" 2
* 54 Voz "Uuh"
** 1 Zumbador
* 55 Voz sintetizada
** 1 Voz análoga
* 56 Tutti de orquesta
** 1 Tutti bajo
** 2 Tutti sextas
** 3 Tutti euro

# General MIDI
## Parámetros
### Cambio de programa
#### Metales

* 57 Trompeta
** 1 Trompeta oscura suave
* 58 Trombón
** 1 Trombón 2
** 2 Trombón brillante
* 59 Tuba
* 60 Trompeta sorda
** 1 Trompeta sorda 2
* 61 Trompa
** 1 Trompa 2 (cálido)
* 62 Latón
** 1 Latón 2 (octavas)
* 63 Latón sinte 1
** 1 Latón sinte 3
** 2 Latón sinte análogo 1
** 3 Latón salto
* 64 Latón sinte 2
** 1 Latón sinte 4
** 2 Latón sinte análogo 2

# General MIDI
## Parámetros
### Cambio de programa
#### Maderas (cañas)

* 65 Saxofón soprano
* 66 Saxofón alto
* 67 Saxofón tenor
* 68 Saxofón barítono
* 69 Oboe
* 70 Corno inglés
* 71 Fagot
* 72 Clarinete

# General MIDI
## Parámetros
### Cambio de programa
#### Maderas (sopladas)

* 73 Piccolo
* 74 Flauta
* 75 Flauta dulce
* 76 Flauta de pan
* 77 Botella soplada
* 78 Shakuhachi
* 79 Silbido
* 80 Ocarina

# General MIDI
## Parámetros
### Cambio de programa
#### Sintetizador (solo)

* 81 Solo 1 (onda cuadrada)
** 1 Solo 1a (onda cuadrada 2)
** 2 Solo 1b (sinusoide)
* 82 Solo 2 (diente de sierra)
** 1 Solo 2a (diente de sierra 2)
** 2 Solo 2b (diente de sierra + pulso)
** 3 Solo 2c (diente de sierra doble)
** 4 Solo 2d (análogo secuenciado)
* 83 Solo 3 (órgano portátil)
* 84 Solo 4 (órgano solista)
* 85 Solo 5 (charanga)
** 1 Solo 5a (alambre)
* 86 Solo 6 (voz sintetizada)
* 87 Solo 7 (quintas)
* 88 Solo 8 (bajo + melodía)
** 1 Solo 8a (remolino suave)

# General MIDI
## Parámetros
### Cambio de programa
#### Sintetizador (fondos)

* 89 Fondo 1 (new age)
* 90 Fondo 2 (cálido)
** 1 Fondo 2a (fondo sinusoide)
* 91 Fondo 3 (polysynth)
* 92 Fondo 4 (coral)
** 1 Fondo 4a (itopia)
* 93 Fondo 5 (arcos)
* 94 Fondo 6 (metálico)
* 95 Fondo 7 (celestial)
* 96 Fondo 8 (barrido armónicos)

# General MIDI
## Parámetros
### Cambio de programa
#### Sintetizador (efectos)

* 97 FX 1 (lluvia)
* 98 FX 2 (banda sonora)
* 99 FX 3 (cristalino)
** 1 FX 3a (sinte mazo)
* 100 FX 4 (atmósfera)
* 101 FX 5 (brillante)
* 102 FX 6 (duendes)
* 103 FX 7 (ecos)
** 1 FX 7a (campana de eco)
** 2 FX 7b (eco panorámico)
* 104 FX 8 (ciencia ficción)

# General MIDI
## Parámetros
### Cambio de programa
#### Étnicos

* 105 Sitar
** 1 Sitar 2 (doblado)
* 106 Banjo
* 107 Shamisen
* 108 Koto
** 1 Taishōgoto
* 109 Kalimba
* 110 Gaita
* 111 Violín tradicional
* 112 Shannai

# General MIDI
## Parámetros
### Cambio de programa
#### Percusión

* 113 Campanillas
* 114 Agogô
* 115 Tambór metálico
* 116 Caja china
** 1 Castañuelas
* 117 Taiko
** 1 Bombo de concierto
* 118 Tom melódico
** 1 Tom melódico 2 (potente)
* 119 Tambór sinte
** 1 Tambór de caja de ritmo
** 2 Tambór eléctrico
* 120 Plato invertido

# General MIDI
## Parámetros
### Cambio de programa
#### Efectos especiales

* 121 Guitarra trastes
** 1 Corte de guitarra
** 2 Golpe de cuerda de bajo acústico
* 122 Respiración
** 1 Clic de flauta
* 123 Costa de mar
** 1 Lluvia
** 2 Relámpago
** 3 Viento
** 4 Río
** 5 Burbuja
* 124 Pájaros
** 1 Perro
** 2 Galopeo
** 3 Pájaro solitario
* 125 Teléfono
** 1 Teléfono 2
** 2 Ruido de puerta
** 3 Golpe de puerta
** 4 Movimiento de vinilo
** 5 Campanillas de viento
* 126 Helicóptero
** 1 Motor de automóvil
** 2 Parada de automóvil
** 3 Paso de automóvil
** 4 Choque de automóvil
** 5 Sirena
** 6 Ferrocarril
** 7 Jet
** 8 Nave estelar
** 9 Ruido de ráfaga
* 127 Aplauso
** 1 Risa
** 2 Grito
** 3 Puñetazo
** 4 Latido de corazón
** 5 Pasos
* 128 Disparo
** 1 Ametralladora
** 2 Láser
** 3 Explosión