L'oggetto Transformer nell'ambiente è uno degli strumenti più potenti che la logica ha da offrire. Con un po 'di know-how MIDI, può diventare uno strumento creativo incredibilmente potente. Nella seconda parte di questa serie di Ambiente esamineremo il concetto di base di come Transformer interpreta e manipola i messaggi MIDI. Anche se non hai Logic, ci sono anche alcune informazioni utili sul MIDI.
Prima di iniziare ti consiglio di leggere l'articolo primo - prima di guardare lo screencast!
Utilizzando l'oggetto Transformer di Logic Pro da AUDIOTUTS Video su Vimeo.
In Logic 'trasformare' è il processo di alterazione dei messaggi MIDI. Può essere utilizzato per modificare i messaggi MIDI in arrivo tramite l'oggetto Transformer (che può essere trovato nell'ambiente) o per modificare le parti MIDI preregistrate tramite la finestra Transform (Command + 4). La versione dell'oggetto può essere utilizzata per scopi più creativi, mentre la versione della finestra può essere utilizzata per l'elaborazione in batch di dati MIDI nella tua disposizione e consente di risparmiare un sacco di lavoro manuale. Anche se non stiamo andando a coprire la finestra Transform in questo tutorial, una volta compreso il concetto è praticamente lo stesso dell'oggetto.
Ma prima di usare queste potenti funzionalità è di vitale importanza capire come viene costruito un messaggio MIDI poiché entrambi i trasformatori utilizzano questa struttura come base per le attività. Senza saperlo sembra solo spaventoso!
Il MIDI è senza dubbio uno dei più importanti sviluppi tecnologici nella produzione musicale degli ultimi 25 anni, anche attraverso il passaggio nella nostra vita di tutti i giorni - basti pensare alle suonerie dei cellulari. Controlla anche giochi come Guitar Hero! Lo usiamo tutti nella produzione musicale, ma per lo più a un livello molto superficiale attraverso un'interfaccia utente. Quindi cos'è il MIDI e come funziona?
MIDI (abbreviazione di Musical Instrument Digital Interface) è un linguaggio binario a 8 bit che è stato sviluppato nei primi anni '80 da Dave Smith e Chet Wood nel tentativo di standardizzare i protocolli di comunicazione tra le diverse tecnologie del sintetizzatore digitale in evoluzione del produttore. Nel 1983, la specifica MIDI 1.0 è stata rilasciata al mondo e nonostante un paio di miglioramenti rimane praticamente la stessa di questo giorno. Permette a tutti i tipi di dispositivi musicali di sintetizzatori, sequencer, effetti hardware e persino l'illuminazione del palcoscenico di parlare tra loro in un linguaggio universale e multipiattaforma.
I dati MIDI vengono inviati all'interno di un "messaggio" MIDI. Esistono tre tipi di messaggi MIDI.
Fortunatamente siamo interessati ai messaggi vocali mentre controllano i dati di base delle prestazioni.
Un messaggio MIDI di base è composto da due o più byte. I byte sono costituiti da 8 bit. Ogni bit è come un interruttore - OFF (0) o ON (1). Il codice binario come questo ci consente di creare grandi numeri con meno codice e il MIDI è stato progettato per essere il più piccolo possibile per superare i problemi di latenza in quanto il MIDI viene trasmesso in serie (un messaggio segue un altro).
Un byte può avere un valore decimale massimo di 255 (aggiungendo tutti i valori ON). Non voglio fare una lezione nel conteggio in binario, ma ecco un esempio molto veloce.
Esistono due tipi di tipi di byte associati ai messaggi MIDI.
Byte di stato - Il byte di stato viene consegnato per primo. Indica al dispositivo che lo riceve che tipo di messaggio MIDI è. Iniziano sempre con 1. Ciò fornisce loro un valore potenziale compreso tra 0-255 - in binario che è 00000000 - 11111111. I tipici messaggi di stato dei messaggi vocali sono note, pitchbend, controllo, aftertouch e cambio programma.
Più spesso il byte di stato viene diviso in due messaggi a quattro bit chiamati "nibbles". Nei messaggi vocali un nibble contiene il tipo di messaggio vocale (stato) mentre l'altro contiene i dati del canale MIDI. È interessante notare che il valore decimale più alto di un nibble è 16, motivo per cui abbiamo solo 16 canali MIDI.
Byte di dati - Il byte di dati contiene il valore del byte di stato. Iniziano sempre con uno 0 dando loro un valore potenziale compreso tra 0 e 127, in binario che è 00000000 - 01111111.
Questo valore di 0-127 è probabilmente qualcosa di molto familiare. I numeri delle note vanno da 0 a 127. Lo stesso per velocità, dati di modulazione e così via. Un'eccezione a questo è pitchbend che usa due byte dandogli una risoluzione di 14 bit per evitare 'stepping'. Perché 14 bit? Poiché i byte di dati hanno solo una risoluzione a sette bit, non dimenticare che iniziano con uno 0 che li definisce come un byte di dati e due volte sette è 14. Questo messaggio a 14 bit offre a pitchbend una risoluzione di 16.384 passaggi su tutti i 128 numeri di nota. Il significato di ogni nota ha 128 passaggi prima di arrivare alla nota successiva, producendo una transizione uniforme.
Di seguito è riportato uno schema di un messaggio Note On di base. Si ottiene l'immagine di come vengono messi byte per creare un messaggio MIDI.
Diamo un'occhiata al nostro oggetto Transformer. L'oggetto Transformer può essere trovato nei menu dell'ambiente selezionando Nuovo> Trasformatore. Fai doppio clic sull'oggetto Transformer e si aprirà una finestra.
Le quattro righe di menu a discesa in alto sono contrassegnate come Status, Channel, Data Byte 1 e Data Byte 2 esattamente come la struttura del messaggio MIDI nel diagramma sopra. La struttura dei messaggi MIDI varia leggermente da uno all'altro. Ecco una breve analisi di come i messaggi vocali differiscono. Tutti questi verranno trasmessi sul canale MIDI 1 (il secondo nibble del byte di stato). È importante aggiungere che non è necessario imparare i compiti binari dei byte di stato, poiché la DAW li tradurrà in inglese.
L'unica cosa curiosa in questa lista sono i valori MSB e LSB. Questi rappresentano il byte più significativo e il byte meno significativo. Questa è solo una cosa binaria che esprime quale byte contiene il valore più alto.
Ecco come appaiono le strutture dei messaggi vocali quando applicate a Transformer.
La sezione Condizioni è dove si definiscono i parametri che si desidera trasformare. I menu a discesa contengono varie "istruzioni condizionali". Questi sono simili al tipo di condizionali che trovi nei linguaggi di programmazione come Javascript o PHP nel web design. Se X = Y, quindi esegui un'azione su di esso. Scegliendo una condizione dall'elenco a discesa si aprirà una casella di parametri in cui è possibile aggiungere il valore per la condizione. Ad esempio, scegliendo 'Uguale' verrà visualizzata una scelta di valore, il numero a cui desideri essere uguale. Scegliendo "Dentro" verranno visualizzate due scelte di valori in cui puoi impostare l'intervallo della tua condizione. Lasciando il menu a discesa impostato su "Tutto", puoi eseguire l'intero intervallo o tutti i valori in un determinato byte.
Nell'immagine qui sopra, ho impostato una condizione che cerca qualsiasi messaggio MIDI uguale a Control Data (Status Nibble 1) su tutti i canali MIDI (Status Nibble 2) con un numero di controller di 12 (Data Byte 1) e influenza solo il valori di quel numero di controller compreso tra 10 e 50 (byte dati 2).
La sezione Operazioni è dove si applica la formula per le trasformazioni. Queste possono essere semplici operazioni matematiche come addizione e sottrazione o scenari più complessi usando la mappa. 'Correggi' è un valore molto comune qui, specialmente quando si ha a che fare con lo stato del messaggio. Per modificare i valori del controller in valori di nota, selezionare "Controllo" nella colonna dello stato in Condizioni e "Correggi" su "Nota" nella colonna Operazioni. Questo semplicemente ristruttura il codice binario nel primo nibble da 1011 che è Control Change a un valore diverso di 1001, che è Note On. Semplice! L'impostazione 'Thru' consente ai dati di passare intatti.
In questo esempio ho aggiunto 6 al numero in Byte dati 1. Questa semplice operazione trasforma Modulation (Controller No 1) in Volume (Controller No 7). 1 + 6 = 7.
Le tre linee che separano le condizioni e le operazioni vengono utilizzate per instradare i valori da un byte all'altro durante una trasformazione. Questo perché la maggior parte dei messaggi ha una struttura diversa. Ad esempio, se si desidera convertire i numeri di nota in valori di panoramica, si potrebbe pensare che ciò sia corretto.
C'è un problema qui, però. I numeri di nota sono memorizzati nel byte di dati 1 nel messaggio di nota e nel messaggio di controllo il valore di pan viene memorizzato in byte di dati 2. Al momento il valore di pan viene controllato dalla velocità della nota dal byte di dati 2 del messaggio di nota. Per aggirare questo, fare clic due volte sulla linea che collega Data Byte 2. Questo ora reindirizza il valore del numero di nota nel byte dati 2 del messaggio di controllo. Problema risolto! Questo è un buon motivo per conoscere la struttura dei messaggi MIDI.
Le modalità di trasformazione consentono di eseguire varie attività relative al filtraggio di determinati messaggi e al modo in cui il trasformatore emette effettivamente i propri dati.
Un buon esempio è la modalità Separatore condizioni (vero> cavo superiore). Questo emette il messaggio trasformato tramite il cavo di uscita superiore e tutti i messaggi MIDI che non soddisfano le condizioni specificate (ad esempio il controllo n. 1) vengono fatti passare dai cavi inferiori. Questo è molto utile quando si desidera reindirizzare solo i dati trasformati in una destinazione diversa. Sotto puoi vedere che i messaggi Note (che non soddisfano la Condizione) sono passati fuori dal cavo inferiore. Il manuale ha tutti i dettagli delle modalità, quindi dai un'occhiata.
Ci sono alcuni casi in cui le modalità sono l'unico modo per risolvere un problema. Lo screencast ha un buon esempio di ciò usando la modalità Split alternato per separare i messaggi Note On e Note Off.
La mappa è disponibile in entrambe le condizioni e le operazioni, anche se è possibile utilizzare solo una mappa in qualsiasi momento. Pensalo come un grafico XY.
Fondamentalmente consente di mappare qualsiasi numero compreso tra 0 e 127 lungo l'asse X su un valore diverso usando l'asse Y. Questo viene fatto usando il mouse per disegnare il nuovo valore o usando le caselle di input in basso.
Ci sono molte applicazioni per la mappa come creare curve di velocità e numeri casuali. Nell'elenco a discesa Operazioni ci sono diverse operazioni che usano la mappa come base ma usano i parametri per modificarla. Questi includono Random, Crescendo e Reverse. Solo l'opzione chiamata "Usa mappa" ti consente di inserire la tua mappa personalizzata.
Sotto puoi vedere premendo il pulsante 'Inizializza' i valori lungo il fondo (asse X) sono gli stessi dei valori sull'asse Y.
Premendo il pulsante 'Reverse' in basso i valori lungo il fondo sono ora invertiti. Quello che era 0-127 ora è 127-0.
Questo è un esempio molto semplice ed è possibile creare mappe molto complesse e specifiche, se lo si desidera. Una cosa a cui prestare attenzione è che disegnare sulla mappa può essere molto noioso a causa delle sue dimensioni, quindi è necessaria la pazienza!
Gli oggetti di monitoraggio consentono di vedere le informazioni che passano attraverso un cavo. Questi sono essenziali per la risoluzione dei problemi MIDI. I dati sono rappresentati in quattro colonne proprio come la struttura del trasformatore. Basta inserirli tra gli oggetti per tenere traccia dei tuoi messaggi MIDI.
Se vuoi saperne di più sul MIDI, ci sono un sacco di risorse là fuori. Ecco alcuni buoni punti di partenza.
Dopo aver letto questo, dovresti avere una conoscenza abbastanza chiara di come funziona il Transformer e forse hai imparato qualcosa sul MIDI. Come tutte le cose, più si esercita e si sperimenta meglio si arriva a utilizzare il Transformer. Ovviamente la chiave sta pensando ad alcuni usi intelligenti per questo! Il manuale è un buon punto di partenza per capire cose come le modalità e le dichiarazioni condizionali. La prossima volta metteremo tutto insieme e costruiremo alcune cose relative alle prestazioni nell'ambiente. Spero che questo sia stato utile, e ci vediamo la prossima volta.
Scarica il Play Pack per questo tutorial (27 KB)
Contenuto