Che cos'è il formato di file MID?
I file .mid sono strettamente correlati al formato .midi - entrambi sono sequenze Standard MIDI File (SMF).
I file .mid memorizzano eventi di esecuzione musicale organizzati con una temporizzazione precisa. Questi eventi possono descrivere:
- altezza della nota, velocity (intensità) e durata della riproduzione,
- volume, espressione e altri valori dei controller,
- cambi di strumento (program) su un massimo di 16 canali.
Va notato che i file .mid non contengono dati audio, ma solo le istruzioni degli eventi necessarie per una corretta riproduzione da parte di un sintetizzatore o di un motore soundfont. Poiché non vengono memorizzati campioni audio, lo stesso file .mid può suonare in modo sensibilmente diverso a seconda del dispositivo.
I file con estensione .mid possono essere utilizzati da applicazioni software di editing musicale, nonché da dispositivi hardware MIDI e sintetizzatori. I file .mid fungono da modo universale per condividere composizioni musicali tra programmi - workstation audio digitali (DAW), editor di notazione e sequencer supportano tutti il formato. Sui dispositivi hardware, i file .mid possono essere utilizzati per attivare strumenti, modificare parametri di uscita audio come l'intonazione o la durata e pilotare esecuzioni automatizzate.
Internamente, un file .mid utilizza una struttura binaria basata su blocchi (chunk): un blocco di intestazione MThd stabilisce il tipo di formato (0, 1 o 2), il numero di tracce e la risoluzione temporale, seguito da uno o più blocchi di traccia MTrk che memorizzano eventi con timestamp delta-time. La variante .rmi racchiude lo stesso contenuto in un contenitore RIFF, mentre il formato .kar estende il .mid con testi karaoke incorporati.
Sicurezza e incolumità
RISCHIO: LOWUno Standard MIDI File è un insieme di dati di eventi passivi senza codice o macro incorporati, quindi il formato stesso è a basso rischio. Preoccupazione storica: nel 2012 un difetto di analisi MIDI di Windows (CVE-2012-0003) consentiva l'esecuzione di codice tramite un MIDI appositamente creato in Windows Media Player - risolto da tempo, quindi mantieni aggiornati il sistema operativo e i lettori. Per il resto, il rischio principale è la delusione: un MIDI potrebbe suonare povero o errato perché la riproduzione dipende dal soundfont del dispositivo, non dal file.
Dettagli del formato
in sintesi- Karaoke MIDI (.kar) - Stessa struttura Standard MIDI File con meta-eventi di testo incorporati per il karaoke; spesso salvato anche con estensione .mid.
- RMID (RIFF MIDI) - Una sequenza MIDI racchiusa in un contenitore RIFF, talvolta con un soundbank DLS incorporato; utilizza .rmi ma occasionalmente .mid.
Programmi che aprono file MID
Dettagli tecnici
specifiche approfondite| Codifica del file | Binario, ordine dei byte big-endian |
| Firma del file (magic bytes) | `4D 54 68 64` - ASCII `MThd` all'offset di byte 0, seguito da una lunghezza del blocco di 4 byte (`00 00 00 06`) |
| Struttura del contenitore | Basata su blocchi: blocco di intestazione `MThd` seguito da uno o più blocchi di traccia `MTrk` |
| Tipi di formato | Formato 0 - traccia singola multicanale; Formato 1 - tracce multiple sincrone; Formato 2 - sequenze di pattern indipendenti |
| Capacità canali MIDI | Fino a 16 canali simultanei per file, ciascuno assegnabile a uno strumento o voce differente |
| Risoluzione temporale | Impostata dal campo `division` in `MThd`; espressa come tick per semiminima (es. 480 PPQ) o frame di timecode SMPTE |
| Codifica delta-time degli eventi | Variable-length quantity (VLQ) - codifica gli intervalli temporali tra gli eventi utilizzando 7 bit per byte con un flag di continuazione MSB |
| Tipo MIME | `audio/midi`; riconosciuto anche come `audio/x-midi` e `audio/sp-midi` |
| Dimensione tipica del file | 1 KB - 100 KB; alcuni minuti di musica sono solitamente ben al di sotto dei 50 KB perché non vengono memorizzati campioni audio |
| Compressione | Nessuna; gli eventi sono intrinsecamente compatti grazie agli opcode binari e alla codifica delta-time VLQ |
| Meta eventi | Metadati non sonori incorporati nelle tracce: tempo (microsecondi per battito), segnatura ritmica, tonalità, nome della traccia, testi, copyright e marcatori di fine traccia |
| Sviluppatore / manutentore | MIDI Manufacturers Association (MMA) e AMEI (Association of Musical Electronics Industry) |
| Compatibilità MIDI 2.0 | `.mid` codifica messaggi MIDI 1.0; il protocollo MIDI 2.0 (2020) utilizza formati contenitore diversi - i file `.mid` rimangono in uso attivo diffuso |
| Rilasciato | Standard MIDI File 1.0 published 1988 (MIDI protocol 1983) |
| Ultima versione | SMF 1.0 (stable since 1988); MIDI 2.0 protocol 2020 uses .midi2/clips, not .mid |
| Standard aperto | Sì · royalty-free |
| Specifica | midi.org |
Conversioni MID
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file MID.