Logic Pro X Effekte - Support - Apple
Logic Pro X Effekte - Support - Apple
Logic Pro X Effekte - Support - Apple
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Code-Beispiel 2<br />
Events in Plug-In-Konsole protokollieren, jedoch nicht aussenden.<br />
function HandleMIDI(event) {<br />
event.trace();<br />
}<br />
Code-Beispiel 3<br />
Noten um eine Oktave transponiert und mit einer Verzögerung von 100 Millisekunden wiederholen<br />
und alle anderen Events durchschleifen.<br />
Text nach „//“ sind Kommentare.<br />
function HandleMIDI(event) {<br />
event.send();<br />
// send original event<br />
if (event instanceof Note) { // if it's a note<br />
event.pitch += 12;<br />
// transpose up one octave<br />
event.sendAfterMilliseconds(100); // send after delay<br />
}<br />
}<br />
Funktion „<strong>Pro</strong>cessMIDI“<br />
Mit der Funktion „<strong>Pro</strong>cessMIDI“ können Sie zyklische Anwendungen, d.h. Anwendungen, bei<br />
denen Timing eine zentrale Rolle spielt, durchführen. Dies bietet sich bei Skripts von Sequenzern,<br />
Arpeggiatoren oder anderen zeitgebundenen MIDI-<strong>Effekte</strong>n an. Für Anwendungen, bei denen<br />
Informationen vom Host über das musikalisches Timing keine Rolle spielen, wird <strong>Pro</strong>cessMIDI in<br />
der Regel nicht benötigt. <strong>Pro</strong>cessMIDI wird einmal pro „Verarbeitungsblock“ aufgerufen. Dieser<br />
Verarbeitungsblock bestimmt sich nach den Audio-Einstellungen des Hosts (Sample-Rate und<br />
Größe des Puffers).<br />
Diese Funktion wird häufig in Verbindung mit dem „JavaScript TimingInfo object“ verwendet,<br />
um die Timing-Informationen vom Host-<strong>Pro</strong>gramm zu nutzen. Die Verwendung von <strong>Pro</strong>cessMIDI<br />
und dem Objekt „TimingInfo“ wird in den nachfolgenden Beispielen beschrieben. Weitere<br />
Informationen hierzu finden Sie unter Verwenden des JavaScript TimingInfo-Objekts.<br />
Hinweis: Zum Aktivieren der Funktion „GetTimingInfo“ müssen Sie Folgendes hinzufügen:<br />
NeedsTimingInfo = true; Dies geschieht auf globaler Skriptebene (außerhalb der Funktionen).<br />
Code-Beispiel<br />
// Define NeedsMusicalInfo as true at the global scope to enable GetHostInfo()<br />
NeedsTimingInfo = true;<br />
function <strong>Pro</strong>cessMIDI() {<br />
var info = GetHostInfo();<br />
// get a TimingInfo object from the host<br />
if (info.playing) {<br />
// if the transport is running<br />
Trace(info.tempo);<br />
// print the tempo in the plugin console<br />
}<br />
}<br />
Funktion „GetParameter“<br />
Die GetParameter() -Funktion bezieht Informationen von Parametern, die mit folgendem<br />
Parameter definiert wurden: var PluginParameters.<br />
Das Name-Argument von GetParameter muss mit dem Namenswert übereinstimmen, der in den<br />
PluginParametern definiert ist.<br />
Kapitel 9 MIDI-Plug-Ins 193