Qu'est-ce que le format de fichier MID ?
Les fichiers .mid sont étroitement liés au format .midi - tous deux sont des séquences de fichiers MIDI standards (SMF).
Les fichiers .mid stockent des événements de performance musicale organisés avec un minutage précis. Ces événements peuvent décrire :
- la hauteur de la note, la vélocité et la durée de lecture,
- le volume, l'expression et d'autres valeurs de contrôleur,
- les changements d'instrument (programme) sur un maximum de 16 canaux.
Il convient de noter que les fichiers .mid ne contiennent pas de données audio, mais seulement les instructions d'événements nécessaires à une lecture correcte par un synthétiseur ou un moteur de banque de sons. Comme aucun échantillon audio n'est stocké, le même fichier .mid peut sonner de manière sensiblement différente d'un appareil à l'autre.
Les fichiers avec l'extension .mid peuvent être utilisés par des logiciels d'édition musicale ainsi que par des périphériques matériels MIDI et des synthétiseurs. Les fichiers .mid servent de moyen universel pour partager des compositions musicales entre programmes - les stations de travail audio numériques (DAW), les éditeurs de notation et les séquenceurs prennent tous en charge le format. Sur les périphériques matériels, les fichiers .mid peuvent être utilisés pour déclencher des instruments, modifier des paramètres de sortie audio tels que la hauteur ou la durée, et piloter des performances automatisées.
En interne, un fichier .mid utilise une structure binaire basée sur des blocs (chunks) : un bloc d'en-tête MThd établit le type de format (0, 1 ou 2), le nombre de pistes et la résolution temporelle, suivi d'un ou plusieurs blocs de piste MTrk stockant des événements horodatés par delta-time. La variante .rmi enveloppe le même contenu dans un conteneur RIFF, tandis que le format .kar étend le .mid avec des paroles de karaoké intégrées.
Sécurité et sûreté
RISQUE : LOWUn fichier MIDI standard contient des données d'événements passives sans code ni macros intégrés, le format lui-même présente donc un risque faible. Préoccupation historique : en 2012, une faille d'analyse MIDI dans Windows (CVE-2012-0003) permettait l'exécution de code via un MIDI malveillant dans Windows Media Player - corrigée depuis longtemps, maintenez donc votre système et vos lecteurs à jour. Sinon, le principal « risque » est la déception : un MIDI peut sonner pauvrement ou mal car la lecture dépend de la banque de sons de l'appareil, pas du fichier.
Détails du format
en bref- Karaoke MIDI (.kar) - Même structure de fichier MIDI standard avec des méta-événements de paroles intégrés pour le karaoké ; souvent enregistré aussi avec une extension .mid.
- RMID (RIFF MIDI) - Une séquence MIDI enveloppée dans un conteneur RIFF, parfois avec une banque de sons DLS intégrée ; utilise .rmi mais occasionnellement .mid.
Programmes qui ouvrent les fichiers MID
Détails techniques
spécifications approfondies| Encodage du fichier | Binaire, ordre des octets gros-boutiste (big-endian) |
| Signature du fichier (octets magiques) | `4D 54 68 64` - ASCII `MThd` à l'offset d'octet 0, suivi d'une longueur de bloc de 4 octets (`00 00 00 06`) |
| Structure du conteneur | Basée sur des blocs : bloc d'en-tête `MThd` suivi d'un ou plusieurs blocs de piste `MTrk` |
| Types de format | Format 0 - piste unique multicanal ; Format 1 - pistes synchrones multiples ; Format 2 - séquences de motifs indépendantes |
| Capacité de canaux MIDI | Jusqu'à 16 canaux simultanés par fichier, chacun pouvant être assigné à un instrument ou une voix différente |
| Résolution temporelle | Définie par le champ `division` dans `MThd` ; exprimée en ticks par noire (ex: 480 PPQ) ou en trames de code temporel SMPTE |
| Encodage delta-time des événements | Quantité de longueur variable (VLQ) - encode les intervalles de temps entre événements en utilisant 7 bits par octet avec un indicateur de continuation MSB |
| Type MIME | `audio/midi` ; également reconnu comme `audio/x-midi` et `audio/sp-midi` |
| Taille de fichier typique | 1 Ko - 100 Ko ; quelques minutes de musique pèsent généralement bien moins de 50 Ko car aucun échantillon audio n'est stocké |
| Compression | Aucune ; les événements sont intrinsèquement compacts grâce aux opcodes binaires et à l'encodage delta-time VLQ |
| Méta-événements | Métadonnées non sonores intégrées dans les pistes : tempo (microsecondes par temps), signature rythmique, armure, nom de la piste, paroles, copyright et marqueurs de fin de piste |
| Développeur / mainteneur | MIDI Manufacturers Association (MMA) et AMEI (Association of Musical Electronics Industry) |
| Compatibilité MIDI 2.0 | `.mid` encode les messages MIDI 1.0 ; le protocole MIDI 2.0 (2020) utilise des formats de conteneur différents - les fichiers `.mid` restent largement utilisés |
| Publié | Standard MIDI File 1.0 published 1988 (MIDI protocol 1983) |
| Dernière version | SMF 1.0 (stable since 1988); MIDI 2.0 protocol 2020 uses .midi2/clips, not .mid |
| Standard ouvert | Oui · libre de droits |
| Spécification | midi.org |
Conversions MID
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers MID.