Musical Instrument Digital Interface

{{#ifeq:||Un article de Ziki, l'encyclopédie libre.|Une page de Ziki, l'encyclopédie libre.}}

Modèle:Titre en italique Modèle:Redirect

Fichier:Ented, Nokturn a-moll - Jesienny.ogg
Exemple de musique créée à partir de commandes MIDI.

Le Modèle:Langue ou MIDI est un protocole de communication et un format de fichier dédiés à la musique, et utilisés pour la communication entre instruments électroniques, contrôleurs, séquenceurs, et logiciels de musique.

Apparu dans les années 1980, issu d'une volonté de l'industrie de normaliser les échanges entre les différents instruments, ce protocole est devenu aujourd'hui un standard très répandu dans le matériel électronique de musique.

Histoire

Fichier:Beethoven Op. 33 no. 1.mid
Une des Sept bagatelles pour piano de Beethoven (Op. 33 Modèle:N° 1), au format MIDI.

À la démocratisation des synthétiseurs numériques, l'interopérabilité devient un enjeu important, notamment dans l'idée de pouvoir commander plusieurs synthétiseurs à partir d'un même clavier. Dans ce contexte, les concepteurs de synthétiseurs Dave Smith (Sequential Circuits), Ikutarō Kakehashi (Roland), et Tom Oberheim (Oberheim) se rencontrent lors du NAMM de Modèle:Date- et réfléchissent à une standardisation des communications<ref name=":4">Modèle:Ouvrage</ref>.

La première démonstration publique a lieu lors du NAMM de 1983, entre un Jupiter-6 (de Roland) et un Prophet-600 (de Modèle:Langue), par leurs deux représentants et fondateurs, Ikutarō Kakehashi et Dave Smith.

Lancé en 1985, l'ordinateur Atari ST est considéré comme la machine ayant popularisé la norme MIDI auprès du grand public, et plus particulièrement des musiciens, notamment en raison de ses prises MIDI intégrées et de la qualité de ses séquenceurs<ref name="MPE">Modèle:Lien web</ref>.

Depuis, le standard est géré par l'International MIDI Association (IMA), la position des constructeurs étant défendue par la MIDI Manufacturers Association (MMA)<ref name=":4" />,<ref>Modèle:Lien web</ref>.

En Modèle:Date-, la norme MPE (Modèle:Lang-en, expression polyphonique MIDI), permettant de moduler les sons par note et non plus par canal est ajoutée<ref>Modèle:Lien web</ref>.

En Modèle:Date-, la norme TRS est ajoutée, permettant d'utiliser un jack 2,5 ou Modèle:Unité, plus compact que le connecteur DIN 41524 du standard utilisé jusqu'alors<ref name="AskRTS" />.

Connexion physique

Bus MIDI

Les informations d'un bus MIDI sont codées de manière numérique, proche du signal série RS232 dont, bien que différent, il reprend certains principesModèle:Lesquels. Les premiers modules MIDI utilisaient pour cette raison des puces UART de type 16550 ou 8250, tandis que de nos joursModèle:Imprécis, ces fonctions intégrées au cœur des processeurs sont utilisées<ref>Modèle:Lien web</ref>. La limite de longueur du câble est établie à Modèle:Unité. Il a les caractéristiques suivantes<ref>Modèle:Lien web</ref> :

Connectique classique (DIN)

Fichier:Midi ports and cable.jpg
Triplet classique de ports MIDI IN, OUT et THRU au format DIN Modèle:Nombre.

La liaison classique définie par la norme est une connexion série symétrique à 31,25 kbit/s, transmise via des connecteurs DIN 41524, de type Modèle:Nombre, 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 sont isolés par un photocoupleur<ref name=":2">Modèle:Lien web</ref>.

Fichier:MIDI IN OUT schematic.svg

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 des formes de réseaux variées. Dans la pratique, les instruments sont souvent branchés en cascade (réseau linéaire type Modèle:Langue), 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<ref name=":0">Modèle:Ouvrage</ref>, permettant de récupérer une copie directe du MIDI IN, sans modification ni temps de latence induite par les traitements internes. Le signal THRU est cependant déformé à travers un photocoupleur, déformation qui peut devenir problématique dans le cas d'une chaîne comportant plusieurs copies MIDI THRU successives<ref name=":2" />.

TRS

Certains constructeurs utilisent des connecteurs de type jack (TRS de Modèle:Unité et Modèle:Unité) en fournissant des adaptateurs vers le DIN classique<ref name=":5">Modèle:Lien web</ref> profitant ainsi d'un encombrement moindre<ref name="AskRTS">Modèle:Lien web</ref>. Depuis le Modèle:Date- le câblage de cette connectique est standardisé par le MMA<ref name="AskRTS" /> qui préconise de privilégier le Modèle:Unité pour éviter les confusions avec les connectiques audio classiques<ref name=":5" />.

Autres connectiques

Diverses interfaces permettent d'échanger des messages MIDI à travers de nombreuses technologies (USB, Firewire, Ethernet, BluetoothModèle:Etc.)<ref name=":3">Modèle:Lien web</ref>.

Les anciennes cartes son possédant un connecteur DB15 femelle (interface « joystick » analogique) peuvent gérer les signaux MIDI grâce à la norme MPU-401.

Depuis les années 2000, l'USB se généralise sur les ordinateurs, et les appareils dédiés à la MAO se 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 standard Class Compliant<ref name=":3" />.

Il existe également des connexions purement logicielles (par exemple JACK Audio Connection Kit) pour relier des instruments virtuels.

Messages MIDI

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é de multiplexer Modèle:Nombre pour commander plusieurs instruments distinctement à travers un même câble.

Notes de musique

Fichier:NoteNamesFrequenciesAndMidiNumbers V3.svg
Correspondance entre les notes et le code MIDI associés.

Le protocole définit les messages Modèle:Langue et Modèle:Langue pour déclencher et arrêter chaque note. Une vélocité est associée à chaque note, permettant d'indiquer si la note est jouée plus ou moins fort.

Les notes de l'échelle chromatique sont représentées par un nombre entier codé sur 7 bits<ref name=":1">Modèle:Lien web</ref>, permettant de coder plus de 10 octaves : du C-1<ref group="N">Le C-1 est situé Modèle:Nombre en dessous du C4 situé sous la partition en clé de sol, soit Modèle:Nombre.</ref> (Modèle:Nobr) au G9<ref group="N">Le G9 correspond au sol Modèle:Nombre au-dessus du sol moyen soit Modèle:Nombre.</ref> (Modèle:Nobr) avec une résolution d’un demi-ton. Les hauteurs de notes intermédiaires peuvent être atteintes au moyen du message Modèle:Langue.

Le MIDI peut être utilisé pour jouer des gammes non tempérées. Aucune standardisation n’existe pour l’instant ; cependant certains constructeurs d’instruments MIDI proposent des fonctions microtonales plus ou moins développées à l’aide de messages propriétaires que l’on peut enregistrer et transmettre avec les messages système exclusif (SysEx).

Commandes de modulation

La modulation de la hauteur (du type bend) se commande grâce à un message dédié appelé Modèle:Langue.

Grâce au message Modèle:Langue, le protocole permet de commander 128 paramètres de jeu (comme le volume, l'intensité du souffle, le réglage d'effetsModèle:Etc.)<ref>Modèle:Lien web</ref> avec une résolution de 0 à 127.

La norme recommande une correspondance entre plusieurs paramètres courants et une partie des 128 numéros de Modèle:Langue<ref>Modèle:Lien web</ref>. Dans les faits, même si la correspondance varie suivant le matériel<ref group="N">Le constructeur fournit alors un tableau de correspondance (souvent appelé « MIDI Modèle:Langue » en anglais).</ref>, les paramètres les plus importants sont respectés<ref>Modèle:Lien web</ref>, notamment :

Certains Modèle:Langue sont 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 (Modèle:Langue) assigne un canal à chaque note, permettant d'appliquer ces modulations à chaque note<ref name="MPE" />.

Changement de programme

Le message Modèle:Langue permet de sélectionner une sonorité pré-programmée dans une banque de sons.

Le standard MIDI ne spécifiant pas quel numéro de Modèle:Langue (de 0 à 127) correspond à quelle sonorité d’instrument, une extension du protocole appelée Modèle:Langue propose une correspondance normalisée. En informatique, elle a un certain succès, mais pas tellement en musique proprement dite.

MS Windows version 3 était livré avec une application Modèle:Langue permettant de changer à la volée des numéros de canaux afin d’harmoniser des instruments n’étant pas au standard Modèle:Langue.

Le Modèle:Langue connaîtra à son tour deux extensions : le GS de Roland et le XG de Yamaha. 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 en Modèle:Langue. Les appareils estampillés GS ou XG sont compatibles Modèle:Langue.

En 1999, la Modèle:Nobr du Modèle:Langue est officiellement lancée, augmentant le nombre de sons et de contrôles. Elle reste compatible avec la Modèle:Nobr.

Synchronisation

Le protocole permet de synchroniser le tempo des appareils, dit esclaves, à une horloge maître. Pour cela le maître envoie sur le bus MIDI un message MIDI clock régulièrement au rythme de 24 messages par noire<ref name=":0" />.

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, et Song Position Pointer) permettent aux différents appareils d'arrêter puis reprendre une séquence ensemble<ref name=":1" />.

Contrôleur MIDI

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 une interface physique produisant des données MIDI.

Leurs formes peuvent être très variées, du simple clavier à la harpe 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 un séquenceur ou un logiciel d'écriture de partition.

Clavier maître

Fichier:Masterkeyboard.png
Clavier maître.

Le clavier maître permet de générer une séquence de notes MIDI en jouant sur un clavier semblable à celui d'un piano. Il n'émet donc pas de son tout seul, mais sert à commander un expandeur ou un synthétiseur.

Différentes caractéristiques correspondent à des utilisations spécifiques : le nombre d'octaves, un toucher lourd (pour s'approcher du toucher d'un piano), ou posséder les fonctions de vélocité et de sensibilité à la pression (Modèle:Langue). Il peut également permettre la division du clavier en plusieurs portions (Modèle:Langue) pouvant envoyer chacune les commandes MIDI sur des canaux différents.

Deux molettes sont souvent présentes sur un clavier maître, une pour jouer le Modèle:Langue et l'autre pour doser une modulation.

Surface de contrôle

Modèle:Article détaillé

Fichier:M-Audio Trigger Finger (painted off-white).jpg
Surface de contrôle disposant de 16 pads, 8 potentiomètres et 4 faders.

Les surfaces de contrôles sont des appareils munis de nombreux boutons de réglages de formes variées (faders, potentiomètres, encodeurs, interrupteursModèle:Etc.) et servent à commander divers paramètres.

Ces contrôleurs peuvent être munis de Modèle:Langue, c'est-à-dire de surfaces carrées, parfois lumineuses, sensible à la frappe. Ces Modèle:Langue peuvent être capable de mesurer la vélocité et la pression. Un Modèle:Langue est typiquement utilisé dans le domaine musical pour déclencher des samples ou des boucles.

La forme simule parfois l'aspect de matériel audio réel. La surface de contrôle Behringer BCF2000 par exemple, munie de faders motorisés, a l'aspect d'une table de mixage.

Pédalier MIDI

Les pédaliers MIDI (à ne pas confondre avec les pédales d'effets) permettent de moduler le son d’un instrument MIDI avec le pied. Ces contrôleurs sont utilisés :

Convertisseur MIDI

On trouve aussi des convertisseurs MIDI pour beaucoup d'instruments de musique (trompette, accordéon, guitareModèle: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

Le format de fichier SMF (pour Modèle:Langue) a été défini en 1987<ref name=":0" />, pour stocker les commandes MIDI sur disquettes en y ajoutant des informations temporelles.

Il se reconnait à l’extension .mid ou .midi.

Il y a Modèle:Nombre différents de fichiers MIDI :

  • 0 : une seule piste contenant les messages des Modèle:Nombre ;
  • 1 : plusieurs pistes jouées simultanément ;
  • 2 : plusieurs pistes jouées séquentiellement (rarement utilisé).

Les fichiers sont le plus souvent de type « 1 », car il est plus pratique de séparer les pistes, mais certains synthétiseurs ne supportent que le format 0.

Utilisation

On peut créer les fichiers soit en connectant un contrôleur MIDI à l’ordinateur, soit à l’aide d’un logiciel séquenceur ou d'écriture de partition.

De nombreux logiciels de lecture (libres ou propriétaires) des séquences MIDI (Timidity++, Rosegarden, QuickTime, Alsa, Jack, etc.), s'appuyant sur une banque General MIDI en général intégrée au système d’exploitation. Ne contenant pas de donnée audio, ces fichiers ont l'avantage d'être 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 piste karaoké 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 les logiciels propriétaires QuickTime d’Apple et vanBasco's Karaoke Player, ou par les logiciels libres Kmid et PyKaraoke par exemple.

Limitations et alternatives

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 pour Modèle:Langue.

Open Sound Control est parfois utilisé comme alternative au standard MIDI lorsque ce dernier parait trop limitantModèle:Imprécis.

Voir aussi

Modèle:Autres projets

Articles connexes

Liens externes

Modèle:Site officiel

Notes et références

Notes

Modèle:Références

Références

Modèle:Références

Modèle:Palette Modèle:Portail