10.2.4 MIDI

[da completare ...]

MIDI (Musical Instrument Digital Interface) è un protocollo standard (hardware e software) per la comunicazione tra strumenti musicali elettronici. Si basa su quelli che sono detti MIDI message che costituiscono la quantità minima di informazione scambiabile con questo protocollo.

[da completare ...]

Il flusso di dati MIDI è asincrono con velocità di 31,25 kbit/s, nel quale ogni byte viene trasmesso su 10 bit (1 start bit, 8 bit di dati ed 1 stop bit). Generalmente il flusso MIDI viene generato da un controller MIDI (ad esempio una tastiera elettronica) o un sequencer e viene inviato ad un generatore di suoni MIDI (sound source o sound module), che genera appunto i suoni richiesti dal flusso. Un generatore di suoni MIDI può riprodurre più tipi di suoni contemporaneamente, ed in tal caso è detto multitimbral.

Molte delle tastiere elettroniche presenti in commercio includono sia la funzionalità di controller MIDI che di generatore di suoni. In questo modo, attraverso un collegamento interno, tali dispositivi possono riprodurre autonomamente, senza l’ausilio di un modulo esterno, i suoni corrispondenti ai tasti premuti sulla tastiera.

Le specifiche MIDI indicano la possibiltà di specificare messaggi per un massimo di 16 aree di destinazione dette canali (MIDI channel). Pertanto i MIDI message si dividono in channel message, che sono riferiti ad uno specifico canale, e system message, non riferiti ad un particolare canale. I channel message sono suddivisi a loro volta in voice message, che contengono le informazioni relative ai suoni da riprodurre, e mode message che impostano la modalità di funzionamento del generatore di suoni MIDI (abilitazione a rispondere a tutti i messaggi su tutti i canali o meno (Omni mode), abilitazione a suonare le note in maniera polifonica o meno (Poly mode), ...).

In corrispondenza di ogni azione prodotta sullo strumento viene generato un MIDI message. Alla pressione di un tasto sulla tastiera viene inviato il MIDI message Note On, contenente l’indicazione del tasto premuto e la velocity, cioè la rapidità con la quale il tasto è stato premuto. In questo modo il generatore di suoni riproduce il suono corrispondente al tasto premuto con lo strumento impostato sul canale indicato. L’indicazione di una velocity più elevata fa sì che la riproduzione del suono venga amplificata un po’ di più del normale. Al rilascio del tasto viene inviato il MIDI message Note Off, contenente l’indicazione del tasto rilasciato e la velocty (che in genere viene ignorata). Il controller MIDI può generare anche il MIDI message Aftertouch che informa il generatore di suoni MIDI del fatto che il tasto sulla tastiera è stato premuto ulteriormente oltre alla sua pressione normale. In genere il generatore di suoni MIDI produce, in risposta a tale messaggio, un effetto sul suono generato (es. vibrato).

La sequenza di MIDI message da inviare ad un generatore di suoni può essere anche memorizzata su file in un formato opportuno (formato MIDI) per permettere una successiva riproduzione dell’intero flusso (playback).