Das Transformer-Objekt in der Umgebung ist eines der leistungsfähigsten Werkzeuge, die Logic bietet. Mit etwas MIDI-Know-how kann es zu einem unglaublich leistungsstarken kreativen Werkzeug werden. Im zweiten Teil dieser Umgebungsreihe werden wir uns das grundlegende Konzept anschauen, wie der Transformer MIDI-Meldungen interpretiert und bearbeitet. Auch wenn Sie nicht über Logic verfügen, gibt es einige nützliche Informationen zu MIDI.
Bevor wir beginnen, empfehle ich Ihnen, den Artikel zu lesen zuerst - bevor Sie den Screencast sehen!
Verwendung des Transformer-Objekts von Logic Pro aus AUDIOTUTS Video auf Vimeo.
In Logic 'transformieren' ist das Ändern von MIDI-Meldungen. Es kann entweder verwendet werden, um eingehende MIDI-Nachrichten über das Transformer-Objekt (das in der Umgebung zu finden ist) zu ändern, oder um voraufgezeichnete MIDI-Parts über das Transformationsfenster (Befehl + 4) zu ändern. Die Objektversion kann für kreativere Zwecke verwendet werden, während die Fensterversion für die Stapelverarbeitung von MIDI-Daten in Ihrem Arrangement verwendet werden kann und Ihnen jede Menge Handarbeit erspart. Obwohl wir das Transformationsfenster in diesem Tutorial nicht behandeln werden, sobald Sie das Konzept verstanden haben, ist es dem Objekt ziemlich ähnlich.
Um diese leistungsstarken Funktionen nutzen zu können, ist es jedoch wichtig zu verstehen, wie eine MIDI-Nachricht aufgebaut ist, da beide Transformatoren diese Struktur als Grundlage für Aufgaben verwenden. Ohne es zu wissen, sieht es einfach unheimlich aus!
MIDI ist zweifellos eine der wichtigsten technologischen Entwicklungen der Musikproduktion der letzten 25 Jahre, die sogar in unseren Alltag übergeht - denken Sie einfach an Klingeltöne für Mobiltelefone. Es steuert sogar Spiele wie Guitar Hero! Wir alle verwenden es in der Musikproduktion, aber meist auf einer sehr oberflächlichen Ebene über eine Benutzeroberfläche. Was ist MIDI und wie funktioniert es??
MIDI (kurz für Musical Instrument Digital Interface) ist eine 8-Bit-Binärsprache, die Dave Smith und Chet Wood Anfang der 80er Jahre entwickelt haben, um die Kommunikationsprotokolle zwischen den sich entwickelnden digitalen Synthesizer-Technologien verschiedener Hersteller zu vereinheitlichen. 1983 wurde die MIDI 1.0-Spezifikation weltweit veröffentlicht und bleibt trotz einiger Verbesserungen bis heute nahezu unverändert. Es ermöglicht, dass alle Arten von Musikgeräten, von Synthesizern, Sequenzern, Hardwareeffekten bis hin zu Bühnenbeleuchtung, in einer plattformübergreifenden, universellen Sprache miteinander sprechen.
MIDI-Daten werden in einer MIDI-Nachricht gesendet. Es gibt drei Arten von MIDI-Meldungen.
Glücklicherweise sind wir an Sprachnachrichten interessiert, da diese die grundlegenden Leistungsdaten steuern.
Eine grundlegende MIDI-Nachricht besteht aus zwei oder mehr Bytes. Bytes bestehen aus 8 Bits. Jedes Bit ist wie ein Schalter - entweder AUS (0) oder EIN (1). Der binäre Code ermöglicht es uns, große Zahlen mit weniger Code zu erzeugen, und MIDI wurde so konzipiert, dass es so klein wie möglich ist, um Latenzprobleme zu überwinden, da MIDI in Reihe übertragen wird (eine Nachricht folgt der anderen)..
Ein Byte kann einen maximalen Dezimalwert von 255 haben (alle ON-Werte addieren). Ich möchte nicht in eine Lektion beim Zählen im Binärmodus einsteigen, aber hier ein sehr schnelles Beispiel.
Es gibt zwei Arten von Bytetypen, die mit MIDI-Meldungen verknüpft sind.
Status Bytes - Das Statusbyte wird zuerst ausgeliefert. Sie teilt dem Gerät mit, um welche Art von MIDI-Nachricht es sich handelt. Sie beginnen immer mit einer 1. Dies gibt ihnen einen möglichen Wert zwischen 0-255 - in binärer Weise 00000000 - 11111111. Typische Sprachnachrichten Statusbytes sind Note, Pitchbend, Control, Aftertouch und Programmwechsel.
Meistens wird das Statusbyte in zwei 4-Bit-Nachrichten aufgeteilt, die als "Nibbles" bezeichnet werden. In Sprachnachrichten enthält ein Halbbyte die Art der Sprachnachricht (Status), während das andere die MIDI-Kanaldaten enthält. Interessanterweise ist der höchste Dezimalwert eines Halbbytes 16, weshalb wir nur 16 MIDI-Kanäle haben.
Datenbytes - Das Datenbyte enthält den Wert des Statusbytes. Sie beginnen immer mit einer 0 und geben ihnen einen möglichen Wert zwischen 0-127, im Binärbereich 00000000 - 01111111.
Diesen Wert von 0-127 kennen Sie wahrscheinlich sehr gut. Die Notennummern gehen von 0 bis 127. Gleiches für Geschwindigkeit, Modulationsdaten usw. Eine Ausnahme ist das Pitchbend, bei dem zwei Bytes verwendet werden, wodurch eine Auflösung von 14 Bit erzielt wird, um ein "Treten" zu vermeiden. Warum 14 Bit? Da Datenbytes nur eine Auflösung von sieben Bit haben - vergessen Sie nicht, dass sie mit einer 0 beginnen, die sie als Datenbyte definiert, und zwei mal sieben ist 14. Diese 14-Bit-Nachricht gibt Pitchbend eine Auflösung von 16.384 Schritten über alle 128 Notennummern. Das bedeutet, dass jede Note 128 Schritte hat, bevor sie zur nächsten Note kommt, was einen sanften Übergang erzeugt.
Im Folgenden finden Sie ein Diagramm einer grundlegenden Note On-Nachricht. Sie erhalten ein Bild davon, wie Bytes zu einer MIDI-Nachricht zusammengesetzt werden.
Schauen wir uns also unser Transformer-Objekt an. Das Transformer-Objekt kann durch Auswahl in den Umgebungsmenüs gefunden werden Neu> Transformator. Doppelklicken Sie auf das Transformer-Objekt. Ein Fenster wird geöffnet.
Die vier Dropdown-Zeilen oben sind wie Status, Kanal, Datenbyte 1 und Datenbyte 2 beschriftet, genau wie die Struktur der MIDI-Nachricht im obigen Diagramm. Die Struktur der MIDI-Nachrichten variiert geringfügig. Hier ist eine kurze Übersicht darüber, wie sich Sprachnachrichten unterscheiden. Alle diese werden über MIDI-Kanal 1 (das zweite Halbbyte des Statusbytes) übertragen. Es ist wichtig hinzuzufügen, dass Sie nicht die binären Zuweisungen der Statusbytes lernen müssen, da Ihre DAW sie in Englisch übersetzt.
Das einzige Merkwürdige in dieser Liste sind die Werte MSB und LSB. Diese stehen für Most Significant Byte und Least Significant Byte. Dies ist nur eine binäre Sache, die ausdrückt, welches Byte den höchsten Wert enthält.
So sehen die Sprachnachrichtenstrukturen aus, wenn sie auf den Transformer angewendet werden.
Im Abschnitt Bedingungen definieren Sie die Parameter, die Sie transformieren möchten. Die Dropdown-Menüs enthalten verschiedene 'Bedingungsanweisungen'. Diese ähneln den Bedingungen, die Sie in Programmiersprachen wie Javascript oder PHP im Webdesign finden. Wenn X = Y, dann führen Sie eine Aktion aus. Wenn Sie eine Bedingung aus der Dropdown-Liste auswählen, wird ein Parameterfeld geöffnet, in dem Sie den Wert für Ihre Bedingung hinzufügen können. Wenn Sie beispielsweise "Gleich" wählen, wird eine Wertauswahl angezeigt, die Zahl, der Sie Ihre Wahl gleich geben möchten. Wenn Sie 'Inside' wählen, werden zwei Wertoptionen angezeigt, in denen Sie den Bereich Ihrer Bedingung einstellen können. Wenn Sie die Dropdown-Liste auf 'All' belassen, können Sie den gesamten Bereich oder alle Werte in einem bestimmten Byte festlegen.
In der Abbildung oben habe ich eine Bedingung festgelegt, die auf allen MIDI-Kanälen (Status Nibble 2) mit einer Controllernummer von 12 (Datenbyte 1) nach allen MIDI-Daten sucht, die Control Data (Status Nibble 1) entsprechen Werte dieser Controller-Nummer zwischen 10 und 50 (Datenbyte 2).
Im Abschnitt "Vorgänge" wenden Sie die Formel für Ihre Transformationen an. Dies können einfache mathematische Operationen wie das Hinzufügen und Entfernen von komplexeren Szenarien mithilfe der Map sein. "Fix" ist hier ein sehr verbreiteter Wert, insbesondere wenn es um den Status der Nachricht geht. Um Controller-Werte in Notizenwerte zu ändern, wählen Sie in der Statusspalte unter "Bedingungen" die Option "Steuerung" und in der Spalte "Operationen" die Option "Festlegen". Dadurch wird der Binärcode im ersten Halbbyte von 1011, das heißt Control Change, einfach auf einen anderen Wert von 1001 umgestellt (Note On). Einfach! Mit der Einstellung "Thru" können Daten unberührt durchgelassen werden.
In diesem Beispiel habe ich der Nummer im Datenbyte 1 die Zahl 6 hinzugefügt. Diese einfache Operation verwandelt die Modulation (Controller No 1) in Volume (Controller No 7). 1 + 6 = 7.
Die drei Zeilen, die Bedingungen und Operationen voneinander trennen, werden verwendet, um Werte während einer Umwandlung von einem Byte zu einem anderen zu routen. Dies liegt daran, dass die meisten Nachrichten eine andere Struktur haben. Wenn Sie beispielsweise Notennummern in Pan-Werte konvertieren möchten, denken Sie, dass dies in Ordnung ist.
Hier gibt es jedoch ein Problem. Die Notennummern werden in der Hinweisnachricht im Datenbyte 1 gespeichert, und in der Steuermeldung wird der Pan-Wert im Datenbyte 2 gespeichert. Der Pan-Wert wird im Moment durch die Anschlagstärke aus dem Datenbyte 2 der Hinweisnachricht gesteuert. Um dies zu umgehen, klicken Sie zweimal auf die Leitung, die das Datenbyte 2 verbindet. Dadurch wird der Wert der Notennummer in das Datenbyte 2 der Steuernachricht umgeleitet. Problem gelöst! Dies ist ein guter Fall, um die Struktur von MIDI-Nachrichten zu kennen.
Mit dem Transformer-Modus können Sie verschiedene Aufgaben ausführen, um bestimmte Nachrichten zu filtern und wie der Transformer seine Daten tatsächlich ausgibt.
Ein gutes Beispiel ist der Condition-Splitter-Modus (true> top cable). Dadurch wird die umgewandelte Nachricht über das obere Ausgangskabel ausgegeben, und alle MIDI-Meldungen, die die angegebenen Bedingungen nicht erfüllen (d. H. Steuerung Nr. 1), werden über die unteren Kabel ausgegeben. Dies ist sehr nützlich, wenn Sie nur die umgewandelten Daten an ein anderes Ziel umleiten möchten. Unten sehen Sie, dass die Hinweisnachrichten (die die Bedingung nicht erfüllen) über das untere Kabel ausgegeben werden. Das Handbuch enthält ausführliche Informationen zu den Modi.
Es gibt Fälle, in denen Modi die einzige Möglichkeit sind, ein Problem zu lösen. Der Screencast zeigt ein gutes Beispiel dafür, wie der Modus Alternating Split verwendet wird, um die Meldungen Note On und Note Off voneinander zu trennen.
Die Karte ist sowohl in Bedingungen als auch in Vorgängen verfügbar, Sie können jedoch immer nur eine Karte verwenden. Stellen Sie sich das wie eine XY-Grafik vor.
Im Grunde können Sie jede Zahl zwischen 0 und 127 entlang der X-Achse mithilfe der Y-Achse einem anderen Wert zuordnen. Dies geschieht, indem Sie den neuen Wert mit der Maus zeichnen oder die Eingabefelder unten verwenden.
Es gibt viele Anwendungen für die Karte, z. B. das Erstellen von Geschwindigkeitskurven und Zufallszahlen. In der Dropdown-Liste "Vorgänge" gibt es mehrere Vorgänge, die die Karte als Basis verwenden, deren Parameter jedoch geändert werden. Dazu gehören Random, Crescendo und Reverse. Nur mit der Option "Karte verwenden" können Sie Ihre eigene benutzerdefinierte Karte eingeben.
Unten können Sie durch Drücken der Schaltfläche 'Initialisieren' sehen, dass die Werte auf der Unterseite (X-Achse) den Werten auf der Y-Achse entsprechen.
Durch Drücken der Taste "Reverse" am unteren Rand werden nun die Werte am unteren Rand invertiert. Was war 0-127 war jetzt 127-0.
Dies ist ein sehr einfaches Beispiel, und wenn Sie möchten, können Sie sehr komplexe und spezifische Karten erstellen. Eine Sache, auf die Sie achten sollten, ist, dass das Zeichnen in der Karte aufgrund ihrer Größe sehr langwierig sein kann!
Mit Überwachungsobjekten können Sie die Informationen sehen, die über ein Kabel übertragen werden. Diese sind für die Fehlerbehebung bei MIDI unerlässlich. Die Daten werden ebenso wie die Struktur des Transformators in vier Spalten dargestellt. Fügen Sie sie einfach zwischen Objekte ein, um Ihre MIDI-Nachrichten zu verfolgen.
Wenn Sie mehr über MIDI erfahren möchten, gibt es viele Ressourcen. Hier sind einige gute Ansatzpunkte.
Nachdem Sie dies gelesen haben, sollten Sie ein ziemlich gutes Verständnis dafür haben, wie der Transformer funktioniert, und vielleicht etwas über MIDI gelernt haben. Je mehr Sie üben und experimentieren, desto besser werden Sie mit dem Transformer. Natürlich ist der Schlüssel, sich ein paar clevere Anwendungen zu überlegen! Das Handbuch ist ein guter Ort, um Dinge wie Modi und Bedingungsanweisungen zu verstehen. Nächstes Mal werden wir alles zusammenstellen und ein paar leistungsbezogene Dinge in der Umgebung entwickeln. Ich hoffe, das war nützlich und bis zum nächsten Mal.
Laden Sie das Play Pack für dieses Tutorial herunter (27KB)
Inhalt