FORMATO DEI DATI MIDI
INTRODUZIONE.
Innanzi tutto vediamo cosa significa la sigla "MIDI". Essa è
l'acronimo di "Music Instrument Digital Interface", ovvero "interfaccia
digitale per strumenti musicali".
Con questa interfaccia e il relativo standard è possibile collegare tra
loro strumenti musicali elettronici dotati di interfaccia MIDI (ormai praticamenti
tutti), apparecchi musicali (come sequencer) e computer. Ciò permette
un'enorme flessibilità in tutte le fasi di composizione musicale.
HARDWARE.
L'interfaccia MIDI, dal punto di vista circuitale, non è altro che un'interfaccia
seriale asincrona con "data rate" di 31,250Kbps, ovvero 31250 "bit
per second". Data la sua natura asincrona, oltre al segnale di massa e
di alimentazione da collegare alla scheda remota tramite una resistenza da 220
Ohm, c'è la linea dai dati, che può essere di trasmissione o di
ricezione a seconda dei casi.
In genere gli strumenti e gli apparecchi musicali sono dotati di 3 connettori
di tipo DIN a 5 poli, chiamati: MIDI IN, MIDI THRU, MIDI OUT.
|
|
|
Ingresso MIDI dell'apparecchio in questione. |
|
Uscita ausiliaria MIDI. I dati che giungono al connettore MIDI IN vengono poi presentati a questo connettore per un collegamento in cascata di più apparecchi. Anche se teoricamente è possibile collegare in cascata un numero qualunque di apparecchi, dal punto di vista reale, è bene limitarsi a 3-5, per non introdurre ritardi. |
|
Ogni variazione prodotto sul dispositivo musicale viene codificato e presentato a questo connettore. Così, per esempio, quando viene premuto un tasto o quando si agisce sul pitch bender, da questo connettore escono tutta una serie di dati relativi ad essi. |
Dal punto di vista del formato dei bit, una
"parola" è formato da 10 bit, 1 si start, 8 bit di dati e 1
bit di stop. A riposo, le linee dati sono a livello logico alto, ovvero circa
5 Volt.
Infine la piedinatura del connettore e dello spinotto MIDI di tipo DIN a 5 poli
è la seguente:
|
|
|
|
|
|
|
|
|
|
|
|
SOFTWARE.
Invece il formato vero e proprio dei dati che viaggiano attraverso la linea
seriale MIDI è abbastanza complesso.
Intanto il formato MIDI, in modo nativo, supporta fino a 16 canali indipendenti,
quindi 16 voci.
Alcuni dati fanno riferimento ad un singolo canale e quindi è necessario
specificarlo, altri invece fanno riferimento al dispositivo vero e proprio e
sono i messaggi, cosiddetti, di sistema. I messaggi di sistema, a loro volta
possono essere standard, come per esempio la sincronizzazione, altri specifici
di ciascun apparecchio, sia esso un sintetizzatore oppure un sequancer.
A livello più basso, i dati si dividono in due gruppi, a seconda se il bit più significativo è uguale a "0" oppure a "1".
|
|
|
Il dato trasmesso è un valore di un parametro. |
|
Il dato trasmesso è un valore di controllo. |
Chi è esperto in elettronica,
può essere tentato a costruire qualche semplice dispositivo controllato
da microprocessore in gardo di interfacciarsi ad un sintetizzatore; per esempio
per disporre di qualche controllo in più.
Il problema è che può non essere semplice trovare
la tabella con i messaggi di base per lo standard MIDI, così ho pensato
possa essere utile fornire un po' di dati prcisi.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Entrando nei datagli della tabella riportata qui sopra, ci sono da dire un po' di cose.
|
|
|
Questo comando è relativo alla disattivazione
della nota attivata in precedenza. E' possibile disattivare una nota o sapere
quale nota è stata disattivata. Nel codice midi, il parametro "n" indica uno dei 16 canali. |
|
Questo comando è relativo all'attivazione di una
nota. E' possibile attivare una nota o sapere quale nota è stata
attivata. Vi è inoltre un dato aggiuntivo che indica il valore della forza con cui si preme o si vuol premere il tasto, il cosiddetto "initial touch". Nel codice midi, il parametro "n" indica uno dei 16 canali. |
|
Questo comando interviene con tutta una serie di controlli
e parametri del proprio sintetizzatore. E' necessario impostare o riconoscere
un numero di riferimento (0-120) sia per in sintetizzatore sia per il dispositivo
esterno. Segue poi il valore del parametro da modificare o da rilevare. In genere si ha: 7= Volume. 14= Modulation Wheel. 64= Sustain Switch. 65= Portamento Switch. Nel codice midi, il parametro "n" indica uno dei 16 canali. |
|
Questo comando agisce sul cambio di voce, o, più
volgarmente, strumento. E' possibile interagire sia con le voci interne sia con quelle su "card" esterna e con le voci di "performance", se esistono. Nel codice midi, il parametro "n" indica uno dei 16 canali. |
|
Questo comando permette di accedere al parametro del cosiddetto
"after touch". La maggior parte dei sintetizzatori è sensibile alla variazione di pressione del dito una volta che questo ha premuto un tasto: serve per creare degli effetti particolari. Nel codice midi, il parametro "n" indica uno dei 16 canali. |
|
Questo comando fa riferimento al controllo "Pitch
bender", ovvero a quella rotellina, in genere a sinistra della tastiera
che permette una variazione (sia verso l'alto che verso il basso) della
tonalità delle note. Dato che l'estensione di variazione è piuttosto ampia e superiore al valore massimo di un solo dato, viene spezzata in due parti, la parte più segnificativa seguita da quella meno significativa. Nel codice midi, il parametro "n" indica uno dei 16 canali. |
|
Questo comando chiamato "Active Sense" serve
per sincronizzare i dispositivi musicali. |
|
Questo comandoè molto importante, in quanto indica
un messaggio si sistema. Nel codice midi, la "x", generalmente
è uguale a "0". Con il comando "F0" si accede
a tutta una serie di parametri, molti dei quali propri del sintetizzatore
o dell'apparecchio musicale con cui si sta interagendo. Al comando "Fx",
spesso, seguono molti parametri, cui bisogna leggere le specifiche dell'apparecchio
in questione. |
INTERFACCIA MIDI
Se vi vuol collegare un qualunque strumento musicale MIDI ad un Personal Computer
è necessario disporre di una semplice inetrfaccia MIDI, che andrà
collegata alla porta Joystick.
In altre pagine è stata presentata una semplice ma funzionale interfaccia
MIDI con il relativo scehma elettrico e disegno del circuito stampato: vai
a vedere...