General MIDI

General MIDI atau GM adalah spesifikasi standar untuk alat musik elektronik yang merespon terhadap pesan MIDI. GM dikembangkan oleh MIDI Manufacturers Association (MMA) dari Amerika Serikat dan Japan MIDI Standards Commitee (JMSC) dan pertama kali diterbitkan pada tahun 1991. Spesifikasi resminya tersedia dalam bahasa Inggris dari MMA, dibundel bersama dengan spesifikasi MIDI 1.0, dan dalam bahasa Jepang dari Association of Musical Electronics Industry (AMEI).

GM memberlakukan beberapa persyaratan di luar spesifikasi MIDI 1.0 yang lebih abstrak. Sementara MIDI 1.0 dengan sendirinya menyediakan protokol komunikasi yang memastikan bahwa instrumen yang berbeda dapat beroperasi pada tingkat dasar (misalnya, menekan tombol pada kibor MIDI akan menyebabkan modul suara MIDI yang terpasang memainkan not musik), GM pergi lebih jauh dalam dua cara: GM membutuhkan bahwa semua instrumen yang kompatibel dengan GM memenuhi fitur, seperti mampu memainkan setidaknya 24 not secara bersamaan (polifoni), dan itu menempelkan interpretasi tertentu untuk banyak parameter dan pesan-pesan kontrol yang dibiarkan tidak ditentukan dalam spesifikasi MIDI 1.0, seperti mendefinisikan suara instrumen untuk masing-masing 128 nomor program yang mungkin.

Instrumen GM diperlukan untuk dapat:
 Memungkinkan 24 suara untuk menjadi aktif secara bersamaan (termasuk setidaknya 16 suara melodi dan 8 suara perkusi)
 Menanggapi percepatan not
 Mendukung semua 16 saluran secara bersamaan (dengan saluran 10 dicadangkan untuk perkusi)
 Dukungan polifoni (beberapa not simultan) pada masing-masing saluran

Interpretasi parameter 
Instrumen GM juga harus mematuhi konvensi berikut untuk peristiwa program dan pengendali:

Peristiwa Program Change 
Dalam MIDI, suara instrumen atau "program" untuk masing-masing dari 16 saluran MIDI yang mungkin dipilih dengan pesan Program Change, yang memiliki parameter Nomor Program. Tabel berikut menunjukkan suara instrumen yang sesuai untuk masing-masing 128 Nomor Program yang mungkin untuk GM saja. Ada 128 nomor program. Nomor-nomor dapat ditampilkan sebagai nilai 1 sampai 128, atau 0 sampai 127. Penomoran 0-127 biasanya hanya digunakan secara internal oleh penyintesis; sebagian besar perangkat MIDI, digital audio workstation dan MIDI sequencer menampilkan Nomor Program seperti yang ditunjukkan pada tabel (1-128).

Perkusi 

Dalam berkas MIDI standar GM, saluran 10 dicadangkan untuk instrumen perkusi saja. Not yang direkam pada saluran 10 selalu menghasilkan suara perkusi ketika dikirim ke kibor atau modul synth yang menggunakan standar GM. Masing-masing 128 nomor not yang berbeda berkorelasi dengan instrumen perkusi yang unik, tapi tekanan suara tidak relatif terhadap nomor not.

Jika berkas MIDI diprogram untuk protokol General MIDI, maka hasil yang dapat diprediksi, tapi kejernihan suara dapat bervariasi tergantung pada kualitas penyintesis GM:

 35 Bass Drum 2
 36 Bass Drum 1
 37 Side Stick/Rimshot
 38 Snare Drum 1
 39 Hand Clap
 40 Snare Drum 2
 41 Low Tom 2
 42 Closed Hi-hat
 43 Low Tom 1
 44 Pedal Hi-hat
 45 Mid Tom 2
 46 Open Hi-hat
 47 Mid Tom 1
 48 High Tom 2
 49 Crash Cymbal 1
 50 High Tom 1
 51 Ride Cymbal 1
 52 Chinese Cymbal
 53 Ride Bell
 54 Tambourine
 55 Splash Cymbal
 56 Cowbell
 57 Crash Cymbal 2
 58 Vibra Slap
 59 Ride Cymbal 2
 60 High Bongo
 61 Low Bongo
 62 Mute High Conga
 63 Open High Conga
 64 Low Conga
 65 High Timbale
 66 Low Timbale
 67 High Agogô
 68 Low Agogô
 69 Cabasa
 70 Marakas
 71 Short Whistle
 72 Long Whistle
 73 Short Güiro
 74 Long Güiro
 75 Claves
 76 High Wood Block
 77 Low Wood Block
 78 Mute Cuíca
 79 Open Cuíca
 80 Mute Triangle
 81 Open Triangle

Peristiwa Controller 
Dalam MIDI, parameter yang dapat disesuaikan untuk masing-masing dari 16 saluran MIDI dapat diatur dengan pesan Control Change, yang memiliki parameter Nomor Kontrol dan Nilai Kontrol. GM juga menentukan operasi yang harus dilakukan oleh beberapa Nomor Kontrol:

1 Roda modulasi
7 Volume
10 Pan
11 Ekspresi
64 Sustain pedal
100 RPN LSB
101 RPN MSB
121 Semua pengendali off
123 Semua not off

RPN 
GM mendefinisikan beberapa Parameter Terdaftar (Registered Parameters), yang bertindak seperti Controller tapi ditangani dengan cara yang berbeda. Dalam MIDI, setiap Parameter Terdaftar diberikan Nomor Parameter Terdaftar atau RPN. Parameter yang terdaftar biasanya disebut RPN untuk jangka pendek.

Pengaturan Parameter yang Terdaftar memerlukan pengiriman (angka desimal):
 dua pesan Control Change menggunakan Nomor Kontrol 101 dan 100 untuk memilih parameter, diikuti oleh
 sejumlah pesan Data Entry yang terdiri dari satu atau dua bita (MSB = Controller #6, LSB = Controller #38), dan akhirnya
 pesan "Akhir RPN"
Nomor Parameter Terdaftar (RPNs) berikut ini adalah standar  (parameter ditentukan oleh pasangan RPN LSB/MSB dan nilai ditetapkan oleh pasangan Entri Data LSB/MSB):

0,0 kisaran Pitch bend
1,0 Channel Fine tuning
2,0 Channel Coarse tuning

Misalnya: Urutan kontrol RPN untuk mengatur tuning kasar untuk A440 (parm 2, nilai 64):
101:0, 100:2, 6:64, 101:127, 100:127

Pesan Sistem Eksklusif 
Dua pesan GM Sistem Eksklusif ("SysEx") yang didefinisikan: satu untuk mengaktifkan dan menonaktifkan modus General MIDI (untuk penyintesis yang juga memiliki modus non-GM); dan yang lain untuk mengatur volume induk penyintesis.

Ekstensi GS 
Superset dari standar General MIDI yang menambahkan beberapa ekstensi eksklusif. Penambahan paling menonjol adalah kemampuan untuk mengalamatkan beberapa bank program (suara instrumen) dengan menggunakan sepasang tambahan dari kontroler Bank Select untuk menentukan hingga 16384 "variasi" suara (cc#0 adalah Bank Select MSB, dan cc#32 adalah Bank Select LSB). Fitur-fitur lain yang paling penting adalah 9 Drum kit dengan tambahan 14 suara drum masing-masing, Kit Perkusi simultan - sampai dengan 2 (Saluran 10/11), pesan Control Change untuk mengendalikan tingkat pengiriman blok efek suara (cc#91-94), memasukkan parameter tambahan (cc#98-101), portamento, sostenuto, pedal lunak (cc no. 65-67), dan pesan SysEx khusus untuk menetapkan berbagai parameter mesin synth.

GS diperkenalkan pada tahun 1991 dengan lini Roland Sound Canvas, yang juga modul penyintesis pertama dari Roland yang mendukung General MIDI.

General MIDI Level 2 
Pada tahun 1999, standar resmi GM telah diperbarui untuk menyertakan pengontrol, patch, RPNs dan pesan SysEx yang lebih banyak, dalam upaya untuk merekonsiliasi ekstensi Roland GS dan Yamaha XG yang tidak kompatibel dan berhak milk. Berikut adalah gambaran singkat dari perubahan GM2 dalam perbandingan untuk GM/GS:
 Jumlah not - minimal 32 not simultan
 Kit perkusi - sampai dengan 2 (Saluran 10/11)
 Hingga 16384 bank variasi diperbolehkan, masing-masing berisi suatu versi dari 128 Suara Melodi (penggunaan yang tepat dari bank-bank tersebut adalah tergantung produsen.)
 9 Drum kit dari GS yang disertakan
 Tambahan pesan Control Change
 Filter Resonansi (Intensitas Timbre/Harmonik) (cc#71)
 Release Time (cc#72)
 Waktu Serangan (cc#73)
 Frekuensi Kecerahan/Cutoff (cc#74)
 Waktu Pembusukan (cc#75)
 Vibrato Rate (cc#76)
 Vibrato Depth (cc#77)
 Vibrato Delay (cc#78)
 Nomor Parameter Terdaftar (RPNs)
 Jangkauan Kedalaman Modulasi (Vibrato Depth Range)
 Pesan SysEx Universal
 Master Volume, Fine Tuning, Coarse Tuning
 Jenis, Waktu Reverb
 Jenis Chorus, Nilai Mod, Kedalaman Mod, umpan Balik, Kirim ke Reverb
 Pengaturan Tujuan Controller
 Sesuaikan Tuning Skala/Oktaf
 Pengendali instrumen berbasis tuts
 GM2 System On
Tambahan instrumen melodi dapat diakses dengan mengatur CC#0 ke 121 dan kemudian menggunakan CC#32 untuk memilih bank sebelum Program Change.

Referensi

Organisasi Resmi Standar MIDI 
 MIDI Manufacturers Association  (MMA) - Sumber untuk spesifikasi MIDI berbahasa Inggris
 Association of Musical Electronics Industry  (AMEI) - Sumber untuk spesifikasi MIDI berbahasa Jepang

Musik
Alat musik