Note, Control Change, Program Change, Pitch Bend, pression, système ou SysEx.
14 · ADVANCED MIDI
MIDI
avancé
Passer du message isolé au système complet : transport, ports, résolution, temps, expression et routage.
TRANSPORT · PORT · CHANNEL · MESSAGE
Quatre niveaux souvent confondus
« Le MIDI ne marche pas » peut désigner un câble, un port logiciel, un canal filtré ou un message que l’instrument ne sait pas interpréter. Nommer la couche évite de modifier toute la configuration au hasard.
Un message de canal adresse l’un des 16 canaux MIDI 1.0 d’un port.
Un périphérique USB peut exposer plusieurs ports logiques, chacun avec ses propres canaux.
DIN, USB, TRS ou Bluetooth transportent le protocole avec des contraintes différentes.
LABORATOIRE · SERIAL LINK
Une liaison DIN transmet les octets l’un après l’autre
Le MIDI DIN classique fonctionne à 31,25 kbit/s. Avec un bit de départ et un bit d’arrêt, chaque octet occupe 320 µs sur la liaison. Un accord simultané dans la DAW devient donc une courte file série.
Intention simultanée, sortie échelonnée
Marge confortable. Une seule note et aucun flux continu ne créent de file d’attente notable.
Un Note On prend normalement 0,96 ms
Trois octets × 320 µs. Plusieurs notes arrivées au même instant sont sérialisées.
Le statut peut être omis
Si des messages de canal successifs gardent le même statut, les suivants peuvent ne transmettre que leurs données.
Clock peut s’intercaler
Les messages système temps réel font un octet et ne remplacent pas le statut de canal mémorisé.
RESOLUTION & PER-NOTE EXPRESSION
La précision dépend du message et du récepteur
Valeurs usuelles
La plupart des données MIDI 1.0 vont de 0 à 127 : vélocité, pression ou Control Change simple.
Valeur plus fine
Pitch Bend utilise deux octets de données. Certains CC associent un MSB et un LSB si l’émetteur et le récepteur le prennent en charge.
NRPN
Sélection puis valeur
Des suites de CC choisissent un paramètre enregistré ou propre au fabricant, puis envoient sa valeur par Data Entry.
Le bend agit sur tout le canal
Sur un canal MIDI 1.0 ordinaire, Pitch Bend et Channel Pressure concernent toutes les notes actives de ce canal.
Une note par canal membre
MPE répartit temporairement les notes sur des canaux membres pour permettre des gestes indépendants, avec un canal manager pour la zone.
PARTS, PATCHES & MULTIPLE OUTPUTS
Plusieurs sons dans une instance, plusieurs sorties si nécessaire
Le canal MIDI choisit généralement une partie ou un patch. La sortie audio choisit ensuite le chemin de ce son vers le mixeur. Ces deux décisions sont indépendantes.
Plusieurs notes
Un même timbre peut jouer plusieurs notes simultanément sans devenir multitimbral.
Plusieurs parties
Une même machine ou instance contient plusieurs patches actifs, souvent adressés par des canaux différents.
Plusieurs retours audio
Les sons peuvent rejoindre des sorties séparées pour recevoir des faders et traitements distincts dans la DAW.
Plusieurs notes, un kit
Kick, caisse claire et charley peuvent être choisis par les notes d’un seul canal et appartenir au même patch.
Suivre d’abord le MIDI, puis l’audio
Instrument monotimbral simple. Une partie reçoit les notes et produit une sortie stéréo principale.
Une piste MIDI peut suffire
Sur le canal 10, C1 peut déclencher le kick et D1 la caisse claire dans un même clip. Les sorties séparées interviennent seulement après la production audio ; créer plusieurs pistes MIDI reste un choix d’organisation, pas une nécessité technique.
Le canal choisit la partie
Canal 1 vers le piano, canal 2 vers la basse, canal 3 vers les cordes… Chaque partie charge son patch, puis peut rejoindre une sortie audio dédiée.
Une instance, le MIDI nécessaire, puis les retours audio
- 1Insérer une seule instance
Charger l’instrument ou le sampler multitimbral sur sa piste hôte.
- 2Charger et adresser les parties
Un patch par partie, avec un canal de réception distinct lorsque c’est nécessaire.
- 3Créer les pistes MIDI utiles
Une seule peut piloter tout un drumset. Pour plusieurs patches, les pistes sont dirigées vers les canaux correspondant aux parties.
- 4Assigner les sorties internes
Dans le plugin, envoyer chaque partie ou élément vers Main, Out 3/4, Out 5/6, etc.
- 5Activer les retours dans la DAW
Afficher les sorties du plugin comme auxiliaires ou canaux audio du mixeur.
- 6Tester une partie à la fois
Nommer les pistes et vérifier canal MIDI, patch, sortie interne et retour audio.
CLOCK · POSITION · TIMECODE
Tempo, position musicale et temps absolu ne sont pas la même information
Plusieurs horloges peuvent coexister dans une installation. Avant de synchroniser, il faut décider qui est maître et ce que les autres appareils doivent suivre.
24 impulsions par noire
La fréquence des impulsions décrit le tempo. Start, Continue et Stop commandent le transport ; Song Position Pointer peut aider à retrouver une position musicale.
Résolution de la grille interne
Les ticks du séquenceur placent les événements dans le projet. Leur résolution peut être bien supérieure à 24 PPQ et ne fixe pas la cadence de MIDI Clock.
Une adresse temporelle
MTC représente une position en heures, minutes, secondes et images. Il sert à suivre une timeline absolue, pas à décrire directement un tempo musical.
Voir le MTC en détail ↓︎Échantillons ou ticks : quel repère l’item doit-il suivre ?
Au départ, l’item commence en mesure 3 et dure une mesure à 120 BPM. Change le tempo : l’item peut rester au même instant, déplacer seulement son début avec la grille, ou adapter son début et sa durée à la grille.
Rien ne bouge encore. À 120 BPM, les trois modes donnent le même placement. Change le tempo pour faire apparaître leur différence.
Un instant fixe
À 48 kHz, 4 secondes correspondent à l’échantillon 192 000. Si le tempo change, ce point reste à 4 secondes : il peut ne plus tomber sur la mesure 3.
Une position musicale
Avec une résolution pédagogique de 960 PPQ, le début de la mesure 3 vaut ici 7 680 ticks. L’instant correspondant en secondes dépend du tempo.
Le tick n’est pas MIDI Clock
Le tick est une division de la grille ou de la source MIDI. Les 24 impulsions par noire de MIDI Clock sont un flux de synchronisation externe.
Le réglage le plus local est prioritaire
Définit la base temporelle des items, enveloppes et marqueurs. Les versions récentes permettent aussi de choisir si ce réglage affecte les items MIDI.
La piste peut reprendre le réglage du projet ou appliquer sa propre base temporelle.
L’item peut garder « Track/project default » ou constituer une exception locale.
Le début et la durée restent liés au temps absolu, indépendamment du tempo.
Le début suit la grille musicale, mais le contenu et sa durée en secondes ne sont pas adaptés au nouveau tempo.
Le début et la longueur suivent les temps. Pour l’audio, la vitesse de lecture est ajustée.
Pour un enregistrement déjà calé, REAPER peut employer des marqueurs d’étirement afin que l’audio épouse les changements de tempo à l’intérieur de l’item.
MIDI TIME CODE · MTC
Suivre une adresse temporelle, image par image
MIDI Clock dit à quelle vitesse avancer. Le MTC dit où l’on est : il transporte sur une liaison MIDI le timecode SMPTE, c’est-à-dire une adresse en heures, minutes, secondes et images. Une DAW qui le reçoit se place à la même adresse que l’appareil maître, puis le suit.
À quoi il sert
Caler la musique sur un film
Le lecteur vidéo ou le logiciel de montage est maître. Une porte qui claque à 01:00:48:00 tombe à 01:00:48:00 dans la DAW aussi.
Deux ordinateurs, un enregistreur
Une seconde DAW, un enregistreur multipiste ou une console numérique démarrent et se repositionnent avec le maître.
Lumières et vidéo de scène
Un système de lumière déclenche ses effets à des adresses précises en suivant la bande-son.
Un arpégiateur ou une boîte à rythmes
Ils ont besoin du tempo, pas d’une adresse : c’est le rôle de MIDI Clock.
MIDI Clock ou MTC
| MIDI CLOCK | MIDI TIME CODE | |
|---|---|---|
| Ce qui circule | 24 impulsions par noire, plus Start, Stop et Continue | Une adresse hh:mm:ss:ff, découpée en 4 messages par image |
| Démarrer au milieu | Il faut en plus un Song Position Pointer, précis à la double-croche | Directement : l’adresse est dans le flux |
| Changement de tempo | Suivi tout seul : les impulsions accélèrent | Rien n’est transmis : l’esclave doit avoir la même carte de tempo |
| Unité | La noire, donc le temps musical | L’image, donc le temps réel (1/25 s à 25 i/s) |
| Usage typique | Synthés, séquenceurs, arpégiateurs, effets synchronisés | Image, enregistreurs, deuxième ordinateur, spectacle |
Comment l’adresse voyage : huit quarts d’image
Une adresse complète ne tient pas dans un message court. Le maître la découpe en huit morceaux de 4 bits, envoyés dans des messages quarter frame : l’octet F1, puis un octet qui dit quel morceau il porte et sa valeur. Il en envoie quatre par image : il faut donc deux images pour transmettre une adresse entière, et l’esclave ajoute ces deux images pour savoir où en est le maître. Le dernier morceau indique aussi la cadence d’images. À l’arrêt, quand on se déplace, le maître envoie plutôt un seul message Full Frame (un SysEx) qui contient toute l’adresse.
Essaie : place le maître 4 secondes avant le début, lance la lecture et observe le temps de calage. Arrête le maître, puis mets le projet de la DAW à 24 i/s et relance.
Cadences d’images
La cadence du film. Une vidéo à 23,976 i/s, fréquente sur les plateformes, est annoncée comme du 24 par le MTC.
La vidéo et la télévision en France. C’est souvent le bon choix pour un projet européen.
La vidéo tourne un peu moins vite que 30 i/s. Pour que l’affichage reste à l’heure, la numérotation saute les numéros 00 et 01 au début de chaque minute, sauf toutes les dix minutes. Aucune image n’est supprimée. On l’écrit souvent avec un point-virgule : 01:00:00;00.
Surtout en audio seul. Piège : une vidéo à 29,97 i/s numérotée sans saut (non drop) est transmise comme du 30, et prend 3,6 secondes de retard par heure sur l’horloge.
En pratique
- Choisir le maître. En général, la machine qui lit l’image ou la conduite du spectacle. Dans la DAW, active la synchronisation externe (souvent appelée sync ou chase) et choisis le port MIDI qui reçoit le MTC.
- Accorder la cadence. Le projet de la DAW doit avoir exactement la cadence d’images de la vidéo. Sinon, chaque adresse est lue avec la mauvaise durée d’image.
- Placer le début du projet. On associe un timecode au début du projet, souvent 01:00:00:00 en postproduction pour garder de la place avant. Si le maître commence ailleurs, un décalage (offset) compense la différence.
- Démarrer avant. L’esclave a besoin de quelques images pour se caler. Lance la lecture quelques secondes avant le passage utile : c’est le même principe que le pré-roll.
- Donner la même carte de tempo. Le MTC ne transmet aucun tempo. Si le morceau ralentit, la carte de tempo de la DAW doit le prévoir pour que les mesures tombent au bon endroit.
ROUTING, THRU & LOCAL CONTROL
Suivre le message jusqu’à sa destination
Recopier une entrée
Le THRU matériel ou logiciel retransmet les messages reçus. Un OUT peut, lui, émettre les événements générés par l’appareil.
Réunir plusieurs flux
La fusion doit conserver les messages complets, gérer le running status et arbitrer les événements simultanés.
Séparer clavier et moteur
Local Off évite qu’un clavier joue directement son propre moteur lorsque la DAW lui renvoie déjà les notes monitorées.
Surveiller le retour
Si une sortie revient vers l’entrée et est renvoyée à nouveau, une boucle peut multiplier notes, CC et horloge.
SYSTEM, SYSEX, MPE & MIDI 2.0
Au-delà des messages de canal courants
Ces mécanismes étendent l’écosystème MIDI, mais leur présence ne signifie pas que tous les appareils se comprennent automatiquement.
Données propres à un fabricant
Un message SysEx peut transférer un programme, une banque ou une configuration. Son contenu dépend du modèle et sa taille est variable.
F0 · identifiant · données · F7Des événements avec leur temps
Un fichier MIDI contient événements, delta-times et méta-événements comme le tempo. Il ne contient toujours pas le son de l’instrument.
.MID · TYPE 0 / TYPE 1Découvrir et négocier
Capability Inquiry permet à des appareils compatibles d’échanger des informations sur leurs profils, propriétés et capacités.
PROFILES · PROPERTY EXCHANGEPaquets universels et expression étendue
UMP peut transporter des messages MIDI 1.0 et MIDI 2.0. Le protocole MIDI 2.0 ajoute notamment une résolution supérieure et davantage de contrôles par note.
COMPATIBILITÉ À VÉRIFIEROPEN SOUND CONTROL · OSC
Au-delà du MIDI : l’OSC
L’OSC est un autre langage de commande, né à la fin des années 1990 à l’université de Berkeley. Au lieu de numéros de canal et de contrôleur, il envoie des messages nommés en toutes lettres, avec des valeurs précises, le plus souvent par le réseau (Wi-Fi ou Ethernet).
Un message OSC
f nombre décimal, i entier, s texte…Plusieurs messages peuvent voyager ensemble dans un bundle, avec une étiquette de temps qui demande de les exécuter au même instant.
Un geste, deux messages
Déplace le fader : à gauche, ce qu’enverrait un contrôleur MIDI ; à droite, le message OSC équivalent, avec ses octets réels. Active ensuite la loupe : sur une petite course, le MIDI avance par marches, l’OSC suit le geste.
MIDI ou OSC
| MIDI 1.0 | OSC | |
|---|---|---|
| Nommage | Des numéros : canal 3, contrôleur 7 | Des adresses en toutes lettres : /mixer/voix/volume |
| Précision | Le plus souvent 128 valeurs (7 bits), parfois 14 bits | Nombres décimaux ou entiers sur 32 bits, texte |
| Transport | Câble DIN, USB, parfois réseau | Réseau IP, le plus souvent en UDP : Wi-Fi, Ethernet |
| Compatibilité | Des messages normalisés : tout synthé comprend une note | Aucune liste commune : chaque logiciel publie ses propres adresses |
| Usage typique | Instruments, claviers, contrôleurs, synchronisation | Tablettes de contrôle, Max, Pure Data, SuperCollider, lumière, vidéo, installations |
Pour être précis, MIDI 2.0 augmente lui aussi la résolution. Mais l’OSC garde sa liberté de nommage : c’est à la fois sa force et sa faiblesse.
Relier une tablette à la DAW
En OSC, chaque appareil a une adresse IP sur le réseau et écoute sur un port, un numéro qui désigne la bonne application. Il faut donc régler les deux sens : la tablette envoie vers l’IP et le port d’écoute de l’ordinateur, et l’ordinateur renvoie l’état des réglages vers l’IP et le port de la tablette. Corrige les réglages de la tablette ci-dessous jusqu’à ce que les deux flèches passent au vert.
Pourquoi deux sens ?
Sans retour, les faders de la tablette ne bougent pas quand l’automation ou la souris change un réglage dans la DAW. La tablette affiche alors une valeur fausse.
Une adresse qui peut changer
La box attribue souvent les adresses automatiquement : au prochain démarrage, l’ordinateur peut changer d’IP. Pour un usage régulier, on lui réserve une adresse fixe dans la box.
Rapide, sans accusé de réception
Un message perdu n’est pas renvoyé. Pour un fader, ce n’est pas grave : la valeur suivante corrige. Pour un bouton unique, c’est plus gênant, d’où l’intérêt du retour pour vérifier l’état.
TROUBLESHOOTING
Diagnostiquer dans l’ordre du trajet
Un test simple envoyé sur un chemin minimal donne plus d’informations que dix paramètres modifiés simultanément.
Le message entre-t-il ?
Indicateur d’entrée, port choisi, canal filtré, piste armée ou monitorée, puis instrument chargé.
Le Note Off arrive-t-il ?
Vérifier filtres, boucles, pertes de connexion et transformations. Panic / All Notes Off libère, mais ne corrige pas la cause.
Qui reçoit Program Change ?
Contrôler port, canal, banque, numérotation 0–127 ou 1–128 et éventuels changements enregistrés au début du clip.
Le contrôle est-il compatible ?
Numéro de CC, plage de Pitch Bend, aftertouch, mapping, résolution et configuration de zone MPE.
La file est-elle chargée ?
Désactiver temporairement CC denses, boucles, clock redondante et chaînages, puis comparer une liaison directe.
Existe-t-il deux chemins ?
Comparer Local Control, monitoring logiciel, MIDI Thru et éventuel retour de la sortie vers l’entrée.