De nombreux logiciels, cartes sons et synthétiseurs affichent désormais une compatibilité avec l'une des trois normes GM, GS, ou XG. Si l'utilité du General MIDI n'est plus à prouver, la cohabitation de plusieurs standards mérite quelques éclaircissements.
Pour l’utilisateur souhaitant simplement écouter une musique, ou pour le concepteur multimédia désireux d’ajouter un fond sonore à son application, le format Midifile fut une aubaine. Il assurait en effet que, quelle que soit sa configuration matérielle et logicielle, on pourrait aisément rejouer une séquence composée par un autre. Mais seules les notes et la gestuelle du musicien étaient codées, ne garantissant en rien une similitude sonore entre deux environnements. En effet, les sons de chaque carte, de chaque synthétiseur, étaient différents, à la fois par leur timbre mais aussi par leur organisation. Le patch numéro 15 pouvait être un piano sur un synthétiseur X, et une trompette sur un synthétiseur Y. Une connaissance du MIDI, ainsi qu’une patience sans limite étaient donc requises afin de faire les réglages nécessaires pour écouter le morceau d’un musicien travaillant sur une autre plateforme.
La MMA (Midi Manufacturers Association) remédia à ce problème en créant en 1991 le standard GM (General MIDI), dont le but est justement d’unifier le comportement des générateurs de sons face à une séquence Midifile. Pour prétendre afficher le logo tant convoité, un instrument doit être multitimbral et polyphonique sur au moins 24 voies, et inclure un minimum de 16 familles de timbres (pianos, guitares, cordes…), regroupant chacune 8 variations (par exemple, pour les cordes : violon, violoncelle, contrebasse, etc… Pour plus d’informations, voyez la seconde partie de ce dossier « Référence GM »).
Le principal avantage de cette unification est qu’à chaque numéro de patch correspond désormais un instrument du même type quelle que soit la machine. Ainsi l’instrument n°71 sera toujours un basson et le n°12 un vibraphone. Le générateur doit également contenir un kit de batterie, dont le mapping (emplacement des percussions sur le clavier) est lui aussi normalisé. Enfin, les contrôleurs MIDI continus les plus courants doivent être reconnus.
Extensions de la norme : GS, XG
Certains ont trouvé que le standard GM n’était pas très précis : décrire une sonorité uniquement par un nom d’instrument demeure assez évasif… C’est pourquoi la MMA planche actuellement sur deux autres niveaux de standardisation.
D’autres ont remarqué que le GM était trop sommaire, comme le constructeur Roland, qui présenta à peu près en même temps un système similaire : le GS ou General Standard. Bien que compatible avec le GM, il n’est pas normalisé et ne concerne que les instruments de la marque Roland. Par contre, il va beaucoup plus loin, proposant d’accueillir jusqu’à 16384 sonorités (128 banques de 128 sons), les instruments absents étant automatiquement remplacés par leur plus proche voisin (du point de vue sonore). Plusieurs kits de batterie sont également disponibles et il est possible, par l’intermédiaire des messages NRPN, de régler les paramètres des sons : résonance d’un filtre, vitesse d’un LFO etc… Le GS fut mis à contribution dans les premières machines Roland qui suivèrent la création de la norme, tel le Sound Canvas. Bien que les messages exclusifs ne soient pas standardisés dans le GS, il sont les mêmes pour toutes les machines s’y référant.
Plus récemment, un autre géant nippon, Yamaha, proposa sa propre version, allant encore plus loin dans la précision des possibilités décrites par la norme. Il s’agit du XG, pour, vous l’aurez compris, eXtended General MIDI. Celui-ci, également compatible avec le GM, autorise en particulier une édition plus poussée des paramètres du son et une normalisation des messages exclusifs. Les premiers synthétiseurs utilisant la norme XG étaient les QS300 et CS-1x, ainsi que les MU50, MU80 et autres cartes DB50XG.
Les fichiers MIDIFile
A l’image du MIDI – une normalisation exemplaire de la communication entre instruments électroniques – le format Midifile est devenu le standard universel de stockage des séquences. Aucun séquenceur digne de ce nom, aussi complexe soit-il, ne saurait en ignorer l’importation ou l’exportation de fichiers MIDIfile.
Si chaque séquenceur propose bien évidemment son propre format, le Midifile s’est imposé comme un véritable standard de fait, une passerelle incontournable entre des logiciels et des plateformes différentes. Le fichier, ayant pour extension .mid ou .smf, est organisé sous forme d’une succession de « chunks ». Un chunk est une sorte de paragraphe, à l’intérieur duquel on développe une idée. Un chunk dispose toujours d’une entête, indiquant son nom et la taille des données qu’il contient. La principale particularité de ce type de format de fichier est de pouvoir subir des modifications et des ajouts en restant compatible. En effet, grâce aux entêtes, il devient particulièrement facile pour un logiciel de « sauter » un chunk qu’il ne connaît pas.
Un Midifile est composé d’un chunk « Header » (entête) suivi d’un ou plusieurs chunks « Track » (piste). Si le fichier peut avoir trois formats, seuls les deux premiers sont réellement exploités. Un Midifile au format 0 contient une seule piste correspondant à l’ensemble des informations relatives aux canaux MIDI. C’est généralement le format privilégié des programmes de relecture (les « players ») qui n’offrent pas de possibilités d’édition évoluées. Un Midifile de format 1, au contraire, contient une ou plusieurs pistes (à jouer simultanément), chacune renfermant des informations propres à un canal. Les Midifiles de format 2, quant à eux, n’ont pas une structure linéaire : ils contiennent différentes pistes représentant des patterns indépendants.
Le chunk « Header » contient l’entête du fichier Midifile. Celle-ci a une longueur fixe. Elle spécifie l’organisation générale du fichier, à savoir le type du Midifile, le nombre de pistes qu’il contient, ainsi que sa résolution temporelle (par rapport au ticks du séquenceur, ou en code SMPTE ou encore en MIDI Time Code).
Viennent ensuite un ou plusieurs chunks « Track », c’est à dire une ou plusieurs pistes. Une piste est une succession d’événements, chacun précédé par un « delta-time ». Un « delta-time » est une référence temporelle relative, c’est à dire qu’il marque le temps écoulé depuis le delta-time précédent. Au nombre des événements, on trouve des messages MIDI conventionnels (Note On, changement de patch, contrôleur continu etc…), des messages exclusifs, et des méta-événements. Certains de ces méta-événements accueillent des données textuelles (Copyright, nom de la séquence, d’une piste ou d’un instruments, paroles d’une chanson ou commentaires etc…). D’autres plus indispensables, règlent le tempo, la signature ou la clef d’une composition (les valeurs par défaut sont le 4/4 à120 BPM). Enfin, à l’image des messages exclusifs, un code spécial est réservé à des méta-événements spécifiques au séquenceur utilisé.
Les Midifiles sont relativement économes en stockage, complets, et assez évolutifs pour ne pas se démoder trop rapidement, ce qui est d’ailleurs maintenant prouvé puisqu’ils existent depuis 1987 et sont encore l’une des denrées les plus convoitées sur Internet avec les MP3. L’assurance de pouvoir migrer d’un logiciel à l’autre, voire d’une plateforme à l’autre, sans pour autant perdre ses données ou les voir altérer par une quelconque conversion hasardeuse leur assure encore un bel avenir.
Références GM
Cette partie du dossier se veut surtout être une une page offrant des données de référence lors de l’utilisation d’instruments MIDI. Elle rassemble les données détaillées sur les points suivants :
- Familles d’instruments GM
- Noms des instruments GM
- Composition du kit de batterie GM
Les familles d’instruments GM
Chaque banque GM est constituée de familles d’instruments spécifiées par la MMA (MIDI Manufacturers Association).
Sons 1 à 6 | Pianos |
Sons 7 à 9 | Autres Claviers Acoustiques |
Sons 10 à 15 | Percussions Metals |
Son 16 | Dulcimer |
Sons 17 à 21 | Orgues |
Sons 22 à 24 | Accordeon / Harmonica |
Sons 25 à 32 | Guitares |
Sons 33 à 40 | Basses |
Sons 41 à 52 | Cordes (sauf 48 : Timbale) |
Sons 53 à 55 | Voix |
Son 56 | Peche Orchestrale |
Sons 57 à 64 | Cuivres |
Sons 65 à 68 | Saxos |
Sons 69 à 80 | Instruments à Vent |
Sons 81 à 88 | Sons Mono |
Sons 89 à 96 | Nappes |
Sons 97 à 104 | Effets |
Sons 105 à 112 | Instruments Inhabituels |
Sons 113 à 120 | Percussions Inhabituelles |
Sons 121 à 128 | Bruits |
Détail des instruments GM
Il existe 128 instruments définis par la norme General MIDI :
N° |
Instrument |
N° |
Instrument |
|
1 | Acoustic Grand Piano | 65 | Soprano Sax | |
2 | Bright Acoustic Piano | 66 | Alto Sax | |
3 | Electric Grand Piano | 67 | Tenor Sax | |
4 | Honky-Tonk Piano | 68 | Baritone Sax | |
5 | Electric Piano 1 | 69 | OBOE | |
6 | Electric Piano 2 | 70 | English Horn | |
7 | Harpsichord | 71 | Bassoon | |
8 | Clavi | 72 | Clarinet | |
9 | Celesta | 73 | Piccolo | |
10 | Glockenspiel | 74 | Flûte | |
11 | Music Box | 75 | Recorder | |
12 | Vibraphone | 76 | Pan Flute | |
13 | Marimba | 77 | Blown Bottle | |
14 | Xylophone | 78 | Shakuhachi | |
15 | Tubular Bells | 79 | Whistle | |
16 | Dulcimer | 80 | Ocarina | |
17 | Drawbar Organ | 81 | Lead 1 (Square) | |
18 | Percussive Organ | 82 | Lead 2 (Sawtooth) | |
19 | Rock Organ | 83 | Lead 3 Calliope | |
20 | Church Organ | 84 | Lead 4 (Chiff) | |
21 | Reed Organ | 85 | Lead 5 (Charang) | |
22 | Accordion | 86 | Lead 6 (Voice) | |
23 | Harmonica | 87 | Lead 7 (Fifths) | |
24 | Tango Accordion | 88 | Lead 8 (Bass + Lead) | |
25 | Acoustic Guitar (Nylon) | 89 | Pad 1 (New Age) | |
26 | Acoustic Guitar (Steel) | 90 | Pad 2 (warm) | |
27 | Electric Guitar (Jazz) | 91 | Pad 3 (Polysynth) | |
28 | Electric Guitar (Clean) | 92 | Pad 4 (Choir) | |
29 | Electric Guitar (Muted) | 93 | Pad 5 (bowed) | |
30 | Overdriven Guitar | 94 | Pad 6 (metallic) | |
31 | Distorsion Guitar | 95 | Pad 7 (halo) | |
32 | Guitar Harmonics | 96 | Pad 8 (sweep) | |
33 | Acoustic Bass | 97 | Fx 1 (rain) | |
34 | Electric Bass (Finger) | 98 | Fx 2 (Soundtrack) | |
35 | Electric Bass (pick) | 99 | FX 3 (Crystal) | |
36 | Fretless Bass | 100 | FX 4 (atmosphÞre) | |
37 | SLAP BASS 1 | 101 | FX 5 (brightness) | |
38 | Slap Bass 2 | 102 | FX 6 (Goblins) | |
39 | Synth Bass 1 | 103 | Fx 7 (echoes) | |
40 | Synth Bass 2 | 104 | Fx 8 (sci-fi) | |
41 | Violin | 105 | Sitar | |
42 | Viola | 106 | Banjo | |
43 | Cello | 107 | Shamisen | |
44 | Contrabass | 108 | Koto | |
45 | Tremolo Strings | 109 | Kalimba | |
46 | Pizzicato Strings | 110 | Bagpipe | |
47 | Orchestral Harp | 111 | Fiddle | |
48 | Timpani | 112 | Shanai | |
49 | String Ensemble 1 | 113 | Tinkle Bell | |
50 | String Ensemble 2 | 114 | Agogo | |
51 | Synth Strings 1 | 115 | Steel Drums | |
52 | Synth Strings 2 | 116 | Woodblock | |
53 | Choir Aahs | 117 | Taiko Drum | |
54 | Voice Oohs | 118 | Melodic Tm | |
55 | Synth Voice | 119 | Synth Drum | |
56 | Orchestra Hit | 120 | Reverse Cymbal | |
57 | Trumpet | 121 | Guitar Fret Noise | |
58 | Trombone | 122 | Breath Noise | |
59 | Tuba | 123 | Seashore | |
60 | Muted Trumpet | 124 | Bird Tweet | |
61 | French Horn | 125 | Telephone Ring | |
62 | Brass Section | 126 | Helicopter | |
63 | Synth Brass 1 | 127 | Applause | |
64 | Synth Brass 2 | 128 | Gunshot |
Le kit de batterie GM
Le kit de batterie General MIDI, lui aussi, suit une définition précisée par la MMA :
Note | N° | Instrument |
Ebo | 27 | Balais |
Eo | 28 | Roulement De Balais |
Fo | 29 | Roulement De Caisse Claire |
Gbo | 30 | Castagnettes |
Go | 31 | Caisse Claire 0 |
Abo | 32 | Coup De Baguette |
Ao | 33 | Grosse Caisse 0 |
Bbo | 34 | Caisse Claire Avec Rimshot |
Bo | 35 | Grosse Caisse Médium |
C1 | 36 | Grosse Caisse Haute |
Db1 | 37 | Coup De Métronome |
D1 | 38 | Caisse Claire 1 |
Eb1 | 39 | Claquement De Main |
E1 | 40 | Caisse Claire 2 |
F1 | 41 | Tom Basse Grave |
Gb1 | 42 | Charley Frappé |
G1 | 43 | Tom Basse Aigu |
Ab1 | 44 | Charley Au Pied |
A1 | 45 | Tom Médium 4 |
Bb1 | 46 | Charley Ouvert |
B1 | 47 | Tom Médium 3 |
C2 | 48 | Tom Médium 2 |
Db2 | 49 | Cymbale Crash |
D2 | 50 | Tom Aigu |
Eb2 | 51 | Ride |
E2 | 52 | Cymbale China |
F2 | 53 | Cymbale Ride/Cup |
Gb2 | 54 | Tambourin |
G2 | 55 | Cymbale Splash |
Ab2 | 56 | Cow |
A2 | 57 | Crash 2 |
Bb2 | 58 | Vibraslap |
B2 | 59 | Cymbale Ride Aigue |
C3 | 60 | Bongo Aigu |
Db3 | 61 | Bongo Grave |
D3 | 62 | Congas Aigu Sourd |
Eb3 | 63 | Congas Aigu Ouvert |
E3 | 64 | Congas Grave |
F4 | 65 | Timbales Aigu |
Gb4 | 66 | Timbales Grave |
G4 | 67 | Cloche Agogo Aigue |
Ab4 | 68 | Cloche Agogo Grave |
A4 | 69 | Cabasa |
Bb4 | 70 | Maracas |
B4 | 71 | Sifflet Aigu |
C5 | 72 | Sifflet Grave |
Db5 | 73 | Guiro Court |
D5 | 74 | Guiro Long |
Eb5 | 75 | Claves |
Un grand merci au forum des arts pour leur aimable autorisation de publication du présent article.
Cet article est tiré de celui initalement publié à l’adresse suivante : http://perso.wanadoo.fr/cidetec/midi.html.