Il Midi

il MIDI (Musical Instrument Digital Interface) protocollo standard per l'interazione degli strumenti musicali elettronic

Views 538 Downloads 10 File size 147KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

il MIDI (Musical Instrument Digital Interface) protocollo standard per l'interazione degli strumenti musicali elettronici (compresi i computers)

Il MIDI pag 1 di 17

il MIDI è:  un linguaggio informatico, ossia una serie di specifiche che danno vita ad un “protocollo”;  un'interfaccia hardware che consente il collegamento fisico tra vari strumenti.  una serie di formati standard di files come l'SMF (Standard MIDI File).

Il MIDI pag 2 di 17

Il MIDI come HARDWARE: protocollo per lo scambio di messaggi progettato per l'uso con strumenti musicali elettronici e della relativa interfaccia fisica. Un collegamento MIDI consiste in una connessione seriale unidirezionale (simplex) a loop di corrente, che funziona ad una velocità di trasmissione di 31,250 bps (bit al secondo). I cavi MIDI sono dotati di connettori DIN 5 a pin maschi (di cui solo 3 sono utilizzati realmente) ad entrambe le estremità, ed è rimasta praticamente l'unica applicazione per questo genere di connettori.

per l’interconnessione tra i vari strumenti lo standard MIDI prevede l'uso di una triade di connettori. Il MIDI pag 3 di 17

I tre connettori vengono distinti come: * IN (consente allo strumento di ricevere informazioni). * OUT (consente la trasmissione delle informazioni). * THRU (consente allo strumento di ritrasmettere i dati ricevuti dal proprio MIDI IN verso un altro strumento).

Il MIDI pag 4 di 17

Il MIDI come PROTOCOLLO (e formato file): il MIDI è un linguaggio di descrizione musicale in formato binario, nel quale ogni parola binaria descrive un evento di un'esecuzione musicale. Inizialmente il MIDI fu sviluppato per le tastiere: molti di questi eventi sono quindi orientati all'utilizzo della tastiera. premere una nota come l'attivazione di un'interruttore in posizione On (Acceso) e il suo rilascio come portare lostesso interruttore in posizione Off (Spento). Per identificare quale nota viene attivata o spenta sulla tastiera (o qualsiasi altro dispositivo), a ogni nota assegnato un numero. sotto forma di messaggi MIDI, è possibile trasmettere e/o registrare qualunque performance musicale eseguita su uno o più strumenti elettronici. Un file MIDI (.mid ma più precisamente SMF, ovvero standard MIDI file) è quindi un file che contiene dati comunicabili tramite il protocollo MIDI. Grazie a delle applicazioni software chiamate sequencer, installabili sia in unità hardware specifiche, sia in normali personal computer, si possono leggere ed interpretare tali files, per poterli successivamente modificare ed eseguire.

Il MIDI pag 5 di 17

Il compito di sincronizzare le varie sequenze MIDI è delegato al "codice temporale MIDI", standard mondiale per la sincronizzazione della musica digitale, che costituisce un'implementazione del codice temporale SMPTE. Tramite il formato .kar (abbreviazione di karaoke), estensione del MIDI, è anche possibile sincronizzare il testo di una canzone con la musica.

i Messaggi del protocollo MIDI Il MIDI è un sistema di comunicazione binario; il protocollo però supporta diversi tipi di messaggio, che una volta formattato andranno a formare parole di svariati bit da trasmettere o memorizzare. Ogni tipo di messaggio midi ha caratteristiche proprie, ma (tranne applicazioni speciali) ha in comune almeno un dato, ovvero il canale. Il MIDI supporta fino 16 canali (1-16). Un canale MIDI è come un canale radiofonico o televisivo. @ un modo per il MIDI di isolare informazioni affAnchB uno strumento ricevitore impostato a un certo canale filtri tutte le altre informazioni della trasmissione e riproduca o processi soltanto quelle per le quali è sintonizzato il MIDI utilizza una parola di 8 bit (1 byte) per trasmettere le proprie informazioni Il MIDI pag 6 di 17

attraverso una trasmissione seriale (più due bit di controllo per ogni byte). I messaggi sono divisi in due categorie: •

i messaggi di Stato: identifica il tipo di informazione inviata attraverso il MIDI ed include il numero di canale su cui viaggia (utilizzano i numeri compresi in un intervallo tra 128 e 255, da 1000 0000 a 1111 1111 in numeri binari)



i messaggi di Dati: comunica al dispositivo di ricezione quali valori sono associati all'evento situato nella porzione del messaggio di Stato (utilizzano un intervallo compreso tra 0 e 127, da 0000 0000 a 0111 1111 in numeri binari)

Per esempio, se premuto un D04 con media intensità, il messaggio di Stato conterrà un evento di "note on" e il messaggio di Dati sarà un numero di valore di nota pari a 60 e un livello di velocity di circa 64 Nel protocollo MIDI i messaggi non hanno lunghezza fissa. Nella rappresentazione binaria dei messaggi MIDI, la prima cifra a sinistra nel byte di stato (il valore più significativo, conosciuto anche come Most Significant bit o MSB) è un 1, e nel byte di dati questo valore è 0. In questo modo il messaggio MIDI riconosce se un byte è un messaggio byte di stato o di dati.

Il MIDI pag 7 di 17

NB: Questo utilizzo dell'ottavo bit (il MSB) limita il numero di valori possibili all'interno del MIDI a una parola di 7 bit, o 128 valori differenti, in un intervallo da 0 a 127. Per questo motivo i valori nel MIDI, come i numeri di nota, sono numerati da 0 a 127. In un utilizzo standard del protocollo midi si parla nei suoi messaggi di una risoluzione a 7-bit. I messaggi MIDI possono essere presentati in tre formati: • valori decimali: 127 • valori binari: 01111111 • valori esadecimali: 7F

Il MIDI pag 8 di 17

Messaggi Channel Voice Note on/off – Inviano il numero di nota da eseguire/silenziare insieme alla sua velocity (ovvero intensità di pressione) ed ovviamente al canale. Channel Pressure o Channel Aftertouch – entra in azione nel momento in cui si preme ancora più forte un tasto su cui già si esercitava una pressione. Nella maggior parte dei casi, verrà aggiunta una sorta di modulazione simile a un vibrato al suono eseguito in quel momento. Il messaggio dati conterrà il valore di pressione applicato sui tasti (un numero unico). Polyphonic Aftertouch – simile all'aftertouch di canale, determina la quantità di pressione che si esercita su una serie di tasti una volta che sono stati premuti in modalità polifonica (ogni nota può possedere un proprio valore di pressione) Program Change (PC) – utilizzati per comunicare al MIDI device che li riceve di attivare un corrispondente patch o preset (per esempio un cambio di timbro su un determinato canale).

Il MIDI pag 9 di 17

Pitch Bend Change (PB) – utilizzati per eseguire glissandi in alto o in basso di TUTTE le note eseguite su un singolo canale. Solitamente per questo messaggio, vista la sua particolare natura, sono riservati molti più valori di variazione rispetto ai canonici 128 valori. il pitch bend può possedere una risoluzione di 16.384, corrispondenti a 14bit di variazione del dato (ovvero due parole da 7-bit trasmesse in serie). Controller Change (CC) – set di controlli assegnabili (in un range da 0 a 127) al controllo di svariati parametri su ogni canale (volume, panpot, vibrato/modulation, control filters, LFO's, effect parameters, etc.). I messaggi di CC hanno in realtà una standardizzazione, ovvero svariati numeri di controller sarebbero riservati per funzioni specifiche (x es. il controller 7 corrisponde alla variazione di volume del canale, il 64 alla pressione del pedale di sutain). Lo stesso meccanismo utilizzato per il pitch bend può essere implementato anche per qualsiasi controllo continuo, convertendolo da 7 a 14-bit. Come standard si è scelto di utilizzare il numero standard di controller per la variazione grossolana (ovvero per il MSB, Most Significant Byte), ed il numero di controller + 32 per la variazione fine (ovvero per l'LSB, less significant Byte). x es. il Controller modulation wheel (CC1) può essere controllato finemente unendo al messaggio di CC1 quello di CC33 per le sue variazioni fini. Il MIDI pag 10 di 17

Analogo comportamento di ritrova nei controller midi. se un controllo viene impostato a 14-bit esso trasmetterà sul numero di controller assegnato il MSB, e sul numero assegnato + 32 l'LSB.

Messaggi Channel Mode I modi di attività MIDI influiscono su come il dispositivo risponde ai messaggi MIDI in arrivo e come ritrasmetterli. Tale modalità può essere variata con messaggi channel mode (che sono nidificati negli ultimi otto valori dell'insieme dei control change (i numeri di control change che vanno da 120 a 127). Il loro byte di stato è quindi identico a un messaggio Channel Voice contenente una funzione Control Change.

Messaggi System Common I messaggi System Common sono pensati per tutti i canali di un sistema e aumentano le funzioni degli altri comandi MIDI; non sono in relazione a nessun canale specifico. Nella maggior parte dei casi, questi messaggi si riferiscono alle caratteristiche di sincronizzazione e vengono utilizzati con i sequencer. MTC (MidiTime Code) Quarter Frame –contiene solo un byte di dati, che comprende il tipo di time code e il valore dell'indirizzo temporale. Viene chiamato Quarter Frame, poichB ciascun messaggio contiene un quarto di informazione: nel primo messaggio viene fornito il valore relativo all'ora, nel secondo quello relativo ai minuti, nel terzo i Il MIDI pag 11 di 17

secondi e l'ultimo fornisce il numero di fotogramma. Vengono quindi utilizzati quattro messaggi MIDI per comunicare l'indicazione temporale SMPTE.

Messaggi System Real Time I messaggi System Real Time controllano in tempo reale tutti i dispositivi del sistema e sono indipendenti dal canale. Vengono utilizzati per sincronizzare i dispositivi basati sul clock, come i sequencer, utilizzando messaggi con un singoio byte di stato.

Messaggi System Exclusive I messaggi System Exclusive bvengono utilizzati per inviare alcuni dati specifici per un particolare dispositivo MIDI. Per esempio impostazioni di configurazione, firmware, hidden features, etc… i messaggi SysEx iniziano e terminano allo stesso modo. Tuttavia, all'inizio del messaggio SysEx è presente un messaggio di identificazione del produttore (numero ID Manufacturer) che comunica ai dispositivi in ricezione quale sia il destinatario del messaggio. Il MIDI pag 12 di 17

Il MIDI pag 13 di 17

Il General Midi (GM) è un modo convenzionale di organizzare i timbri su numeri di programmi (Program Change).

PC# 1-8 9-16 17-24 25-32 33-40 41-48 49-56 57-64

General MIDI Level 1 Instrument Families Family Name PC# Family Name Pianos 65-72 Reeds Chromatic Percussions 73-80 Pipes Organs 81-88 Synth Lead Guitars 89-96 Synth Pad Basses 97-104 Synth Effects Strings 105-112 Ethnics Ensemble 113-120 Percussives Brasses 121-128 Sound Effects

Il MIDI pag 14 di 17

PC# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.

General MIDI Level 1 Instrument Patch Map Instrument Name PC# Instrument Name Acoustic Grand Piano Bright Acoustic Piano Electric Grand Piano Honky-tonk Piano Electric Piano 1 Electric Piano 2 Harpsichord Clavi Celesta Glockenspiel Music Box Vibraphone Marimba Xylophone Tubular Bells Dulcimer

17. 18.

Drawbar Organ ...

Il MIDI pag 15 di 17

General MIDI Level 1 Percussion Key Map Key # 35 36 37 38 39 40 41 42 43 44 45 46 47 48

Drum Sound

Key# Drum Sound

Acoustic Bass Drum Bass Drum 1 Side Stick Acoustic Snare Hand Clap Electric Snare Low Floor Tom Closed Hi Hat High Floor Tom Pedal Hi-Hat Low Tom Open Hi-Hat Low-Mid Tom Hi-Mid Tom

59 60 61 62 63 64 65 66 67 68 69 70 71 72

Ride Cymbal 2 Hi Bongo Low Bongo Mute Hi Conga Open Hi Conga Low Conga High Timbale Low Timbale High Agogo Low Agogo Cabasa Maracas Short Whistle Long Whistle

Il MIDI pag 16 di 17

49 50 51 52 53 54 55 56 57 58

Crash Cymbal 1 High Tom Ride Cymbal 1 Chinese Cymbal Ride Bell Tambourine Splash Cymbal Cowbell Crash Cymbal 2 Vibraslap

73 74 75 76 77 78 79 80 81

Short Guiro Long Guiro Claves Hi Wood Block Low Wood Block Mute Cuica Open Cuica Mute Triangle Open Triangle

Il MIDI pag 17 di 17