• Italia

Messaggi MIDI - Il protocollo MIDI

21

23.5. Messaggi MIDI

Come accennato, un messaggio MIDI è composto da una serie di bit ordinati secondo uno schema comune per tutti i messaggi. La figura seguente mostra un tipico messaggio MIDI:

Un esempio di messaggio MIDI
Un esempio di messaggio MIDI

Come si vede il messaggio è composto da tre byte racchiusi tra due bit, uno iniziale di start e uno finale di stop. Il primo dei 3 byte è definito come status byte e ha la funzione indicare il tipo di messaggio. Uno status byte è sempre contrassegnato dal primo bit posto a 1. I bit 2,3, 4 indicano il tipo di messaggio, essendo 3 bit sono disponibili 8 (23) tipi diversi di messaggio. Gli ultimi 4 bit del primo byte identificano il canale midi, dunque abbiamo 16 canali disponibili. Notare che il nybble (un nybble è una sequenza di 4 bit) 0000 identifica il canale 1 e il nibble 1111 (che vale 15 in decimale) identifica il canale 16. Nel nostro messaggio di esempio stiamo trasmettendo dati sul canale 5. Dopo lo status byte abbiamo due data byte ossia due byte che trasportano informazioni numeriche relative al messaggio definito nello status byte. Un data byte ha sempre il primo bit posto a 0. Gli ultimi 7 bit del primo data byte descrivono la nota suonata, con 7 bit possiamo discriminare 128 (27) note (il che generalmente è sufficiente se si pensa che un pianoforte, che è uno degli strumenti con l'estensione maggiore, ha 88 note). Nel nostro esempio stiamo suonando la nota 64 (1000000). Il secondo data byte indica la velocità della nota ossia l'intensità con cui è stata suonata. Tutte le recenti tastiere dotate di interfaccia MIDI possiedono un controllo chiamato soft touch che trasforma in un valore l'intensità con cui si è premuto un determinato tasto. In questo modo è possibile riprodurre il tocco della mano sui tasti ed eseguire distintamente pezzi suonati per esempio in 'pianissimo' o 'forte'. Il valore viene associato alla velocità perché molti sistemi soft touch si basano sulla velocità con cui è premuto un tasto avendo come presupposto che maggiore è la velocità, maggiore è l'intensità. Nel nostro caso il valore della velocità è pari a 90 (1011010). Ovviamente il significato dei dati contenuti nei data byte varia a seconda del tipo di status byte che stiamo considerando. Vediamo ora i differenti tipi di messaggio MIDI.

23.5.1. Channel voice messages

I channel voice messages sono i seguenti:

  1. Note off: interrompe l'esecuzione di una nota. Ha il seguente formato. I tre bit che identificano il tipo di messaggio sono: 000

    [1 0 0 0 c c c c ] [0 n n n n n n n] [0 v v v v v v v]

    dove: c = canale midi (4 bit), n = nota suonata (7 bit), v = velocità (7 bit)

  2. Note on: attiva l'esecuzione di una nota. Ha il seguente formato. I tre bit che identificano il tipo di messaggio sono: 001

    [1 0 0 1 c c c c ] [0 n n n n n n n] [0 v v v v v v v]

    dove: c = canale midi (4 bit), n = nota suonata (7 bit), v = velocità (7 bit)

  3. Polyphonic aftertouch (key pressure ): dopo che un tasto è stato premuto, può essere ancora mosso per creare un effetto vibrato. Questo messaggio trasporta informazioni circa questo movimento. È raramente implementato perché richiede un sensore per ogni tasto e dunque risulta abbastanza costoso. I tre bit che identificano il tipo di messaggio sono: 010

    [1 0 1 0 c c c c ] [0 n n n n n n n] [0 p p p p p p p]

    dove: c = canale midi (4 bit), n = nota suonata (7 bit), p = pressione (7 bit)

  4. Channel pressure (aftertouch ): come il precedente solo che viene implementato un solo sensore per tutta la tastiera-sintetizzatore. Un movimento su un tasto applicherà una vibrazione a tutte le note suonate in quel momento sul canale in questione. Il controllo può essere applicato anche ad altre grandezze come un tremolo o la frequenza di taglio di un filtro. I tre bit che identificano il tipo di messaggio sono: 101

    [1 1 0 1 c c c c ] [0 p p p p p p p ] [0 - - - - - - - ]

    dove: c = canale midi (4 bit), p = pressione (7 bit)

  5. Program change : con questo comando è possibile cambiare il suono assegnato ad un canale con un altro suono. I tre bit che identificano il tipo di messaggio sono: 100

    [1 1 0 0 c c c c ] [0 p p p p p p p] [0 - - - - - - -]

    dove: c = canale midi (4 bit), p = programma - suono (7 bit)

  6. Control change : utilizzato per controllare parametri relativi al canale in questione come: volume, modulazione (applicata dal joystick presente su molte tastiere), pan. Per esempio per realizzare un volume crescente su un certo strumento suonato su un certo canale, possiamo mandare una serie di questi messaggi con valori di volume sempre crescenti. I tre bit che identificano il tipo di messaggio sono: 011

    [1 0 1 1 c c c c ] [0 n n n n n n n] [0 v v v v v v v]

    dove: c = canale midi (4 bit), n = codice del controllo (volume, pan ecc) (7 bit), v = valore (7 bit)

  7. Pitch bending : permette di eseguire il bending (se non sapete cos'è, chiedete al vostro chitarrista di fiducia) di una nota. In questo caso 128 diverse sfumature di bending sono poche soprattutto in un bending lento e potrebbero generare un effetto 'scaletta'. Per questo vengono impiegati anche i 7 bit del secondo data byte portando la risoluzione del bending a 14 bit ossia a 16384 gradazioni diverse. I tre bit che identificano il tipo di messaggio sono: 110

    [1 1 1 0 c c c c ] [0 B B B B B B B] [0 b b b b b b b]

    dove: c = canale midi (4 bit), B = primi 7 bit del valore di bending, b = ultimi 7 bit

23.5.2. Channel mode messages

Relativamente ai Channel Voice Messages di tipo 6 (control change) possiamo avere 127 diversi codici (sono i 7 bit del primo data byte) che prendono il nome di channel mode messages . I primi 120 sono relativi a parametri tipici come volume, pan ecc. Gli ultimi 7 sono messaggi che agiscono sulla modalità di funzionamento di un canale e sono:

121 - Reset all controllers : tutti i parametri del dispositivi vengono posti pari al loro valore iniziale (quello definito all'accensione del dispositivo).

122 - Local control on/off: per spiegare il funzionamento di questo tipo di messaggio riferiamoci alla figura seguente:

Local control
Local control

In una tastiera dotata di una propria uscita audio, la pressione di un tasto agisce su un circuito che accede ad un suono residente nella memoria e lo trasferisce all'uscita audio dove diventa un suono. Il segnale generato dal tasto verso i circuiti della tastiera-sintetizzatore prende il nome di local control . Se la tastiera-sintetizzatore viene anche collegata via MIDI, alla pressione di un tasto, una copia del segnale, che indica quale tasto è stato premuto viene spedita tramite la porta MIDI Out. Questo segnale però rientra nella tastiera-sintetizzatore dall'ingresso MIDI In andando ad agire di nuovo sul banco dei suoni. In questo modo si genera un fastidioso effetto eco perché l'esecuzione di una nota viene generata da due eventi diversi: direttamente dalla pressione dal tasto della tastiera-sintetizzatore e dallo stesso segnale che però fa il giro passando dall'interfaccia MIDI del sequencer. Come si vede dalla figura, In una connessione MIDI il segnale local control viene disattivato eliminando il problema.

123 - All notes off : su alcuni sequencer viene chiamato anche 'panic' o 'reset devices'. Può accadere che alcuni messaggi MIDI non vengano ricevuti correttamente e dunque per esempio che non venga ricevuto un messaggio di 'note off' lasciando una nota suonare indefinitamente. Questo messaggio manda un segnale di tipo 'note off' a tutte le note.

124-125-126-127: Gli ultimi 4 messaggi definiscono il cosiddetto MIDI mode ossia il modo in cui la tastiera-sintetizzatore interpreta i comandi MIDI.

124-125 Omni mode off-on: questi due messaggi attivano o disattivano la modalità Omni mode . Questa, se attivata, fa in modo che nei messaggi MIDI venga ignorata l'informazione relativa al canale e dunque ogni messaggio viene applicato a tutti i canali. Viceversa, quando la modalità è disattivata, ogni messaggio viene applicato al canale indicato nello status byte.

126-127 Mono On - Poly On: la modalità Mono on impone sul canale la possibilità di eseguire una sola nota per volta. La modalità Poly on consente di eseguire più note contemporaneamente sul singolo canale.

Vale la pena di puntualizzare la differenza tra i termini polifonico e multitimbrico che indicano caratteristiche diverse di una tastiera-sintetizzatore. Con il termine polifonico si intende che la tastiera-sintetizzatore è in grado di suonare più note contemporaneamente sullo stesso canale MIDI. Multitimbrico significa che una tastiera-sintetizzatore è in grado di suonare più di uno strumento contemporaneamente (ovviamente su canali MIDI diversi) mentre monotimbrico significa che può essere suonato un solo strumento alla volta.

23.5.3. System messages

i system messages (messaggi di sistema) questi messaggi sono spediti contemporaneamente su tutti i canali MIDI. Il messaggio ha la forma seguente:

[1 1 1 1 t t t t ] [0 d d d d d d d] [0 d d d d d d d]

dove: t = tipo di messaggio di sistema (4 bit), d = dati

Vi sono tre tipi di messaggio di sistema:

23.5.3.1. System common

Questi comprendono:

  • MTC : Midi Time Code (temporizzazione), per una dettagliata descrizione di questo argomento riferirsi alla sezione relativa alla sincronizzazione [Vedi: MIDI Time Code].

  • Song Position Pointer : identificativo temporale di un punto della canzone.

  • Song select : selezione di una canzone nella memoria del dispositivo.

  • End of exclusive : fine della trasmissione di dati di sistema, viene descritto più avanti.

23.5.3.2. System real time

I system real time messages sono messaggi brevi (1 byte) che vengono spediti mischiati ai normali messaggi. Servono per mantenere la sincronizzazione tra i sistemi collegati via MIDI. Questi messaggi vengono spediti continuamente ad un ritmo di 24 ogni quarto di nota quindi il numero di messaggi spediti nell'unità di tempo aumenta col bpm del brano. Se la mole di dati MIDI da spedire è ingente, può convenire spedire i messaggi di temporizzazione su un'uscita MIDI separata.

23.5.3.3. System Exclusive

I messaggi di tipo System Exclusive (chiamati anche SysEx ) trasportano dati specifici del dispositivo in uso. Ogni dispositivo MIDI professionale è dotato di questa funzionalità che permette di scaricare via MIDI tutta la memoria (come si dice: eseguire un dump [88]). In questo modo tutti i settaggi che sono stati fatti sul dispositivo per un certo lavoro vengono spediti per esempio su un computer dove vengono memorizzati. Nella necessità di impostare il dispositivo su configurazioni completamente diverse è molto utile e immediato utilizzare i settaggi salvati su computer sotto forma di file ritrasferendoli nel dispositivo sempre via MIDI.



[88] In ambito informatico questo termine indica la generazione di una copia di riserva dei dati.

Licenza Creative Commons
La versione online del Corso Audio Multimediale è distribuita con Licenza
Creative Commons Attribuzione - Non commerciale - Condividi allo stesso modo 3.0 Italia

Il carrello con i tuoi acquisti

Il carrello è vuoto

Il Corso Audio Multimediale

Acquista la versione FULL PREMIUM

Il CAM Corso Audio Multimediale è disponibile in tanti formati diversi che costituiscono un ECOSISTEMA al fine di offrire una fruizione differenziata su qualsiasi tipo di supporto

Leggi la scheda

Inizia subito il Corso Audio Multimediale

  Da qui è possibile accedere a qualsiasi sezione del corso scorrendo l'indice e cliccando la sezione di interesse.

Leggi la scheda

Scarica la Demo FREE del Corso Audio

Il CAM Corso Audio Multimediale è disponibile online in versione gratuita con alcune limitazioni. L'ECOSISTEMA CAM può essere valutato scaricando la versione demo.

Leggi la scheda

Cos'è Audiosonica

Audiosonica è un sito dedicato all'Ingegneria del Suono. All'interno del sito è disponibile il CAM Corso Audio Multimediale, un corso di Ingegneria del Suono consultabile (con alcune limitazioni) gratuitamente online. La versione senza limitazioni denominata ECO-SISTEMA CAM è disponibile in download a pagamento nei formati html, pdf A4, epub e mobi.

Il corso è adottato in varie forme da molte scuole di tecnica del suono, che sono elencate in una apposita sezione.

Vi sono poi altre sezioni con approfondimenti tecnici e notizie sempre inerenti al mondo dell'ingegneria del suono e anche una sezione dedicata ail'audio professionali con il sistema operativo Linux.

 

Scuole di Tecnica del Suono

Conservatorio di Como - Corso di Elettroacustica 1

Conservatorio di Como - Corso di Elettroacustica 1

More details
CESMA - Corso federale di Tecnico del Suono

CESMA - Corso federale di Tecnico del Suono

More details
Lazio in Scena - Corso di Tecnico del Suono

Lazio in Scena - Corso di Tecnico del Suono

More details
Università Antonina (Libano) - Corso Musica elettronica e ingnegneria del suono

Università Antonina (Libano) - Corso Musica elettronica e ingnegneria del suono

More details
Umbria FilmMovie - Corso di Fonico

Umbria FilmMovie - Corso di Fonico

More details
Fondazione Musicale Città di Gorizia - Corso di Nuove Tecnologie

Fondazione Musicale Città di Gorizia - Corso di Nuove Tecnologie

More details
École Française d'Audiovisuel - Corso di Tecnico del suono live

École Française d'Audiovisuel - Corso di Tecnico del suono live

More details
Conservatorio di Catelfranco Veneto - Triennio di Musica Elettronica

Conservatorio di Catelfranco Veneto - Triennio di Musica Elettronica

More details
Labella Studio - Corso di Tecnico del suono

Labella Studio - Corso di Tecnico del suono

More details
Conservatorio di Torino - Corso di Tecnologie e tecniche della ripresa e registrazione audio

Conservatorio di Torino - Corso di Tecnologie e tecniche della ripresa e registrazione audio

More details
Conservatorio di Avellino - Corsi di Tecnico di sala di registrazione

Conservatorio di Avellino - Corsi di Tecnico di sala di registrazione

More details
Università di Catania - Facoltà di Lingue e Letterature Straniere - Laboratorio di Audio Mixing

Università di Catania - Facoltà di Lingue e Letterature Straniere - Laboratorio di Audio Mixing

More details
Möllenkramer Training - Corsi di suono e dell'acustica

Möllenkramer Training - Corsi di suono e dell'acustica

More details
NUCT - Scuola Internazionale Cinema e Televisione - Corso di Tecnica del suono

NUCT - Scuola Internazionale Cinema e Televisione - Corso di Tecnica del suono

More details
NUT Studio - Corso per Produttori di Musica Elettronica e Live Performer

NUT Studio - Corso per Produttori di Musica Elettronica e Live Performer

More details

logo audiosonica footer

© 2020 Audiosonica. Tutti i diritti riservati. Sito web realizzato Audiosonica Multimedia

Search