Musical Instrument Digital Interface
LeMusical Instrument Digital InterfaceouMIDIest unprotocole de communicationet unformat de fichierdédiés à lamusique,et utilisés pour la communication entreinstruments électroniques,contrôleurs,séquenceurs,etlogiciels de musique. Ce protocole est né de la volonté de l'industrie de normaliser les échanges entre les instruments électroniques de musique au début desannées 1980et s'est rapidement imposé comme unstandardincontournable dans le matériel électronique de musique.
Histoire
[modifier|modifier le code]À la charnière des années 1970 et 1980 le développement de l'industrie dessynthétiseurset autres appareils associés pose le problème de l'interopérabilité des machines, notamment d'une marque à l'autre, chaque constructeur étant tenté de développer son propre protocole autour des technologies numériques émergentes. L'enjeu est de définir une norme commune qu'utiliseraient tous les constructeurs afin de pouvoir facilement commander plusieurs synthétiseurs, de marques différentes, à partir d'un même clavier ou d'un séquenceur numérique, par exemple. Les concepteurs de synthétiseursDave Smith(Sequential Circuits),Ikutarō Kakehashi(Roland), etTom Oberheim(Oberheim) se concertent lors duNAMMdeet réfléchissent à une standardisation des communications[1].
La collaboration entre les concurrents est fructueuse et la norme est mise au point en 1982. La première démonstration publique a lieu lors du NAMM de 1983, entre un Jupiter-6 (deRoland) et un Prophet-600 (deSequential Circuits), par leurs deux représentants et fondateurs, Ikutarō Kakehashi et Dave Smith. Ces deux instruments ainsi que le Yamaha DX9 sont les premiers synthétiseurs MIDI commercialisés.
Lancé en 1985, l'ordinateurAtari STpopularise la norme MIDI auprès des musiciens, notamment en raison de ses prises MIDI intégrées et de la qualité desséquenceurslogiciels, comme ceux développés parSteinberg[2].
Le standard est géré par une association,International MIDI Association(IMA), la position des constructeurs étant défendue par laMIDI Manufacturers Association(MMA)[1],[3].
En 1991, une déclinaison nomméeGeneral MIDIvoit le jour. En,la norme MPE est ajoutée. Cette norme (enanglais:MIDI Polyphonic Expression,expression polyphonique MIDI), permet de moduler les sons par note et non plus par canal[4].En,la normeTRSest ajoutée, permettant d'utiliser unjack2,5 ou 3,5mm,plus compact que leconnecteur DIN41524 du standard utilisé jusqu'alors[5].
Connexion physique
[modifier|modifier le code]Bus MIDI
[modifier|modifier le code]Les informations d'un bus MIDI sont codées de manièrenumérique,proche du signal sérieRS232dont, bien que différent, il reprend certains principes[Lesquels?].Les premiers modules MIDI utilisaient pour cette raison des pucesUARTde type 16550 ou 8250, tandis que de nos jours[évasif],ces fonctions intégrées au cœur des processeurs sont utilisées[6].La limite de longueur du câble est établie à 15 mètres. Il a les caractéristiques suivantes[7]:
- Les informations sont transmises parmodulation d'amplitude,avec l'état 1 à 0mAet l'état 0 à 5mA.
- Le signal est transmis à une vitesse de 31 250bauds.Chaqueoctettransmis est précédé d'unbitde start et est suivi d'un bit de stop, sansbit de parité,soit un total de 10 bits transmis. Aucunsignal d’établissement de liaisonn'est utilisé.
Connectique classique (DIN)
[modifier|modifier le code]La liaison classique définie par la norme est une connexionsériesymétriqueà 31,25kbit/s,transmise via desconnecteurs DIN41524, de type 5 broches, placés sur 180°. La liaison est unidirectionnelle, donc deux connectiques distinctes sont nécessaires pour l'entrée (notée MIDI IN) et la sortie (notée MIDI OUT). Les appareils connectés sontisoléspar unphotocoupleur[8].
Le protocole MIDI permet à un contrôleur maître de commander plusieurs instruments, qui doivent alors être branchés en réseau. Il existe pour cela des appareils d'interconnexion intermédiaires permettant desformes de réseauxvariées. Dans la pratique, les instruments sont souvent branchés en cascade (réseau linéaire typedaisy-chain), les appareils MIDI possédant généralement une sortie dupliquant ce qui a été reçu. Cette sortie peut être la prise MIDI OUT si elle duplique ce que l'appareil reçoit en MIDI IN, ou sinon une prise particulière, notée MIDI THRU[9],permettant de récupérer une copie directe du MIDI IN, sans modification nitemps de latenceinduite par les traitements internes. Le signal THRU est cependant déformé à travers unphotocoupleur,déformation qui peut devenir problématique dans le cas d'une chaîne comportant plusieurs copies MIDI THRU successives[8].
Autres connectiques
[modifier|modifier le code]Certains constructeurs utilisent des connecteurs de typejack(TRS de 2,5mmet 3,5mm) en fournissant des adaptateurs vers le DIN classique[10]profitant ainsi d'un encombrement moindre[5].Depuis lele câblage de cette connectique est standardisé par le MMA[5]qui préconise de privilégier le 2,5mmpour éviter les confusions avec les connectiques audio classiques[10].
Diverses interfaces permettent d'échanger des messages MIDI à travers de nombreuses technologies (USB,Firewire,Ethernet,Bluetooth,etc.)[11].
Les anciennescartes sonpossédant un connecteurDB15femelle (interface «joystick» analogique) peuvent gérer les signaux MIDI grâce à la normeMPU-401.
Depuis les années 2000, l'USBse généralise sur les ordinateurs, et les appareils dédiés à laMAOse voient munis de port USB Type-B. L'ordinateur et l'appareil MIDI peuvent alors échanger des messages MIDI de manière native si l'appareil respecte le standardClass Compliant[11].
Il existe également des connexions purement logicielles (par exempleJACK Audio Connection Kit) pour relier desinstruments virtuels.
Messages MIDI
[modifier|modifier le code]Le protocole MIDI ne transmet pas de signal audio, mais uniquement des messages de commandes.
La plupart des messages contiennent un identifiant de canal, cela donne la possibilité demultiplexer16 canaux pour commander plusieurs instruments distinctement à travers un même câble.
Notes de musique
[modifier|modifier le code]Le protocole définit les messagesnote-onetnote-offpour déclencher et arrêter chaquenote.Unevélocitéest associée à chaque note déclenchée. La vélocité correspond à la vitesse d'enfoncement de la touche du clavier et peut sur certains instruments contrôler plusieurs paramètres. Les destinations les plus courantes sont le volume de la note (plus ou moins fort) et son niveau du filtrage (timbre plus ou moins riche). Au message d'extinction de la note (note off) est également associée une vélocité de relâchement, mais les instruments qui reconnaissent cette vélocité particulière et en permettent l'usage sont très rares.
Les notes de l'échelle chromatiquesont représentées par un nombre entier codé sur 7 bits[12],ce qui permet de couvrir plus de 10 octaves: du C-1[N 1](note 0) au G9[N 2](note 127) par pas d'un demi-ton. Leshauteursintermédiairesentre les notes peuvent être atteintes au moyen du messagepitch-bend.
Le MIDI peut être utilisé pour jouer des gammesnon tempérées.Aucune standardisation n’existe; cependant certains constructeurs d’instruments MIDI proposent des fonctionsmicrotonalesplus ou moins développées à l’aide de messages propriétaires que l’on peut enregistrer et transmettre avec les messagessystème exclusif(SysEx).
Commandes de modulation
[modifier|modifier le code]La modulation de lahauteur(du typebend) se commande grâce à un message dédié appelépitch-bend.
Grâce au messagecontrol change(CC), le protocole permet de commander 128 paramètres de jeu (comme levolume,l'intensité du souffle, le réglage d'effets,etc.)[13]avec une résolution de 0 à 127.
La norme recommande une correspondance entre plusieurs paramètres courants et une partie des 128 numéros decontrol change[14].Dans les faits, même si la correspondance varie suivant le matériel[N 3],les paramètres les plus importants sont respectés[15],notamment:
- levolume(#7);
- lepanoramique(#10);
- la position de lapédale de maintien(#64).
Certainscontrol changesont destinés à des commandes plus techniques. Par exemple:
- La sélection de banque de son (#0 et #32);
- L'arrêt de toute note (#123);
- L'accès à des paramètres supplémentaires RPN et NRPN (#98 à #101).
L'ajout de la norme MPE (MIDI Polyphonic Expression) assigne un canal à chaque note, permettant d'appliquer ces modulations à chaque note[2].
Changement de programme
[modifier|modifier le code]Le messageprogram change(changement de programme) permet de sélectionner unesonorité pré-programméedans une banque de sons.
Le standard MIDI définit de base 128program change(numérotés de 0 à 127) qui correspondent à autant d'emplacements mémoire sur les instruments. Les sonorités, qu'elles soient fournies d'usine par le constructeur ou programmées par l'utilisateur sont normalement indépendantes de l'emplacement où elles sont mémorisées (numéro de programme).
Cas particulier du General MIDI
[modifier|modifier le code]Cependant, avec le nombre croissant d'instruments MIDI grand public contenant de larges banques de sons d'usine non modifiables (preset) et directement utilisables, le besoin de normalisation s'est fait sentir dans ce cas, afin par exemple qu'un son de « clavecin » sur telle machine ait le même numéro de programme que le son de « clavecin » équivalent proposé sur telle autre machine. C'est ainsi qu'est née une extension du protocole appeléeGeneral MIDIqui normalise la correspondance duprogram changeavec le type de sonorité. Ce protocole permet lors de la lecture d'un fichier MIDI écrit au standard General Midi d'obtenir à peu près le même résultat sur n'importe quel instrument respectant la norme GM. En informatique, la norme a un certain succès, mais en musique proprement dite sa portée est plus limitée.MS Windowsversion 3était livré avec une applicationMIDI mapperpermettant de changer à la volée des numéros de canaux afin d’harmoniser des instruments n’étant pas au standardGeneral Midi.LeGeneral MIDIconnaîtra à son tour deux extensions: leGSdeRolandet leXGdeYamaha.Ces deux extensions sont la propriété de leur fabricant et permettent d’ajouter des effets supplémentaires aux séquences MIDI ou de choisir des sons alternatifs à ceux proposés de base enGeneral MIDI.Les appareils estampillés GS ou XG sont compatiblesGeneral MIDI.En1999,laversion 2duGeneral MIDIest officiellement lancée, augmentant le nombre de sons et de contrôles. Ellereste compatibleavec laversion 1.
Synchronisation
[modifier|modifier le code]Le protocole permet de synchroniser letempodes appareils, dit esclaves, à une horloge maître. Pour cela le maître envoie sur le bus MIDI un messageMIDI clockrégulièrement au rythme de 24 messages parnoire[9].
Les appareils esclaves écoutent ces tops de synchronisation pour adapter leur vitesse. Ceci permet, d'exécuter plus ou moins rapidement une séquence mémorisée par exemple sur un séquenceur matériel en changeant la valeur de l'horloge dans le maître.
Il faut configurer physiquement chaque instrument midi qui gère le temps de sorte à n'avoir sur un bus MIDI, qu'un seul maître émettant les tops d'horloge. Si cette règle n'est pas respectée, les instruments répondront soit de manière chaotique soit resteront bloqués.
Des messages de navigation (Start,Stop,Continue,etSong Position Pointer) permettent aux différents appareils d'arrêter puis reprendre une séquence ensemble[12].
Contrôleur MIDI
[modifier|modifier le code]Un contrôleur MIDI est un appareil que le musicien manipule pour générer des signaux MIDI. Ce n'est pas un périphérique de synthèse ni de traitement du son, mais uniquement uneinterface physiqueproduisant des données MIDI.
Leurs formes peuvent être très variées, du simpleclavierà laharpe laser.Ils sont appréciés pour leur utilisation intuitive.
Les événements sortant par un port MIDI OUT peuvent commander un instrument, ou être enregistrés dans unséquenceurou un logiciel d'écriture de partition.
Clavier maître
[modifier|modifier le code]Leclaviermaître, généralement semblable à celui d'unpiano,permet de générer des notes et messages MIDI qui sont alors reçus et interprétés par l'instrument « esclave », ce dernier pouvant d'ailleurs être doté lui-même d'un clavier (synthétiseur) ou non (expandeur). Le clavier maître en tant que tel n'émet donc pas de son et pilote simplement un autre instrument à distance. Un clavier de synthétiseur peut cependant très bien faire office de clavier maître, en désactivant le générateur interne (local control) ou en le conservant pour obtenir un empilage de sonorités (maître plus esclave).
Les caractéristiques des claviers sont variables d'un modèle à l'autre et peuvent répondre aux besoins spécifiques de l'utilisateur: le nombre d'octaves, la qualité du touché qui peut être « léger » ou au contraire « lourd » (pour s'approcher de celui d'un piano), la réponse à lavélocitéou la sensibilité à lapression(after-touch). La division du clavier en plusieurs portions ou zones (split) pouvant envoyer chacune les commandes MIDI sur des canaux différents est également une option sur les modèles les plus dotés.
Sur un clavier maître, on trouve en standard le plus souvent deux molettes côte à côte, une pour jouer lepitch bendet l'autre pour doser une modulation.
Surface de contrôle
[modifier|modifier le code]Les surfaces de contrôles sont des appareils munis de nombreux boutons de réglages de formes variées (faders,potentiomètres,encodeurs,interrupteurs,etc.) et servent à commander divers paramètres.
Ces contrôleurs peuvent être munis depads,c'est-à-dire de surfaces carrées, parfois lumineuses, sensible à la frappe. Cespadspeuvent être capable de mesurer lavélocitéet lapression.Unpadest typiquement utilisé dans le domaine musical pour déclencher dessamplesou desboucles.
La forme simule parfois l'aspect de matériel audio réel. La surface de contrôleBehringerBCF2000 par exemple, munie de faders motorisés, a l'aspect d'unetable de mixage.
Pédalier MIDI
[modifier|modifier le code]Les pédaliers MIDI (à ne pas confondre avec lespédales d'effets) permettent de moduler le son d’un instrument MIDI avec le pied. Ces contrôleurs sont utilisés:
- commepédale d’expressionpour contrôler le son rendu avec un clavier MIDI (pédale de volume,sustain);
- pour sélectionner différentspatchslors d’une représentationlive.
Convertisseur MIDI
[modifier|modifier le code]On trouve aussi des convertisseurs MIDI pour beaucoup d'instruments de musique (trompette, accordéon, guitare,etc.). Cela permet, par exemple, de jouer un son de piano à l'aide d'une guitare, ou encore du synthétiseur avec une trompette.
Ils sont constitués de capteurs physiques adaptés à l'instrument utilisé et d'une logique électronique qui transforme les notes jouées par le musicien (événements) en une séquence de messages Midi récupérables via le port Midi OUT de l'instrument (câble, connecteur...).
Format de fichier MIDI
[modifier|modifier le code]Le format de fichier SMF (pourStandard MIDI File) a été défini en1987[9],pour stocker les commandes MIDI surdisquettesen y ajoutant des informations temporelles.
Il se reconnait à l’extension.mid
ou.midi
.
Il existe 3 formats SMF différents de fichiers MIDI:
- 0: une seule piste contenant tous les messages des 16 canaux;
- 1: plusieurs pistes, jouées simultanément;
- 2: plusieurs pistes, mais jouées séquentiellement (rarement utilisé).
Le type « 1 » (pistes séparées) est le format le plus courant et le plus pratique, mais certains appareils ne supportent que le format 0 (pistes rassemblées en une seule).
Les différents logiciels MIDI (stations audio-numériques) ont généralement un format de fichier propriétaire pour gérer les séquences MIDI mais sont tous capables d'importer et d'exporter les fichiers.mid
,ce qui facilite les échanges entre plateformes.
Utilisation
[modifier|modifier le code]On peut créer les fichiers au sein d’unlogiciel séquenceur,soit en utilisant un contrôleur MIDI connecté à l’ordinateur, soit en utilisant le clavier et la souris de l'ordinateur pour entrer et modifier les données, comme dans n'importe quelle autre application. On peut aussi générer un fichier MIDI par la méthode d'écriture de partitionavec un logiciel que le permet.
Il existe de nombreux logiciels de lecture simple (libres ou propriétaires) de séquences MIDI (Timidity++,Rosegarden,QuickTime,Alsa,Jack,etc.) permettant d'obtenir un résultat audible en s'appuyant sur une banqueGeneral MIDIen général intégrée ausystème d’exploitation.Ces fichiers, qui n'intègrent pas de données audio, sont très compacts.
Les fichiers MIDI-KARAOKE portent l’extension.kar
au lieu de.mid
,mais ce sont de véritables fichiers MIDI avec une pistekaraokécontenant des paroles que certains matériels/logiciels sont capables d’afficher de manière défilante et synchronisée avec la musique. Ils sont reconnus par leslogiciels propriétairesQuickTimed’AppleetvanBasco's Karaoke Player,ou par leslogiciels libresKmidetPyKaraokepar exemple.
Limitations et alternatives
[modifier|modifier le code]Il existe une norme spécifiquement développée pour piloter les orgues à tuyaux et les orgues numériques en tenant compte des spécificités de l’orgue (jeux multiples sur le même canal), c’est la norme POMI pourPipe Organ Midi Interface.
Open Sound Controlest parfois utilisé comme alternative au standard MIDI lorsque ce dernier parait trop limitant[évasif].
Voir aussi
[modifier|modifier le code]Articles connexes
[modifier|modifier le code]- Digital Control Bus,précurseur du MIDI
- DMX (éclairage)protocole dédié au contrôle des effets de lumière enspectacle vivant
- General MIDI
- MIDI Tuning Standard(ou MTS), standard MIDI supportant lesmicro-intervalles.
- Show control
- MIDI Show Control
- Messages MIDI:
- Animusic:visualisation
Liens externes
[modifier|modifier le code](en)Site officiel
Notes et références
[modifier|modifier le code]Notes
[modifier|modifier le code]- Le C-1 est situé 5 octaves en dessous du C4 situé sous la partition en clé de sol, soit 8,175Hz.
- Le G9 correspond au sol 5 octaves au-dessus du sol moyen soit 12 557Hz.
- Le constructeur fournit alors un tableau de correspondance (souvent appelé «MIDIimplementation chart»en anglais).
Références
[modifier|modifier le code]- (en)Joseph Rothstein,MIDI: A Comprehensive Introduction,A-R Editions, Inc.,,263p.(lire en ligne),A brief history of MIDI
- (en)«25 Products That Changed Recording», sursoundonsound,(consulté le)
- (en)MMA,«About the MMA», surmidi.org(consulté le)
- «MIDI Manufacturers Association (MMA) Adopts New MIDI Polyphonic Expression (MPE) Enhancement to the MIDI Specification site=midi.org»
- (en)Rounik Sethi, «MIDI Manufacturers Association (MMA) Releases TRS Adapter Specification for MIDI Devices», surAsk Audio,
- (en)J Byron, «MIDI Tutorial», surLearn.Sparkfun l
- (en)«The MIDI Physical Layer», surpersonal.kent.edu
- (en)«MIDI DIN Electrical Specification», surmidi.org(consulté le)
- Dictionnaire encyclopédique du son,Dunod,,576p.(ISBN978-2-10-053674-0,lire en ligne)
- (en-US)«It's official: minijack connections are now kosher for MIDI», surCDM Create Digital Music,(consulté le)
- (en)«Basics of USB-MIDI», surmidi.org(consulté le)
- (en)«Table 1 - Summary of MIDI Messages», surmidi.org(consulté le)
- «Le MIDI: les Midi control change», surAudiofanzine(consulté le)
- (en)«Table 3 - Control Change Messages (Data Bytes)», surmidi.org(consulté le)
- (en)«MIDI continuous controllers», surNorton Music(consulté le)