Steuerungen für das Scripter MIDI-Plug-in erstellen in Logic Pro

In den folgenden Abschnitten wird erläutert, wie du den Script Editor verwenden kannst, um Standardsteuerungen für Bedienoberflächen wie Regler und Menüs deiner Scripter-Plug-ins zu erstellen. Die einzige zwingend zu definierende Eigeschaft für einen neuen Parameter ist „name“. Der standardmäßig einem einfachen Regler zugewiesen wird. Du kannst weitere Eigenschaften verwenden, über die du den Typ und das Verhalten der Steuerungen ändern kannst.

Lade die entsprechende Tutorial-Einstellung, um das Skript im Skripteditor anzuzeigen. Dies erleichtert das Verständnis der Syntaxstruktur und des Layouts von Code und Kommentaren. Weitere Informationen findest du unter Verwenden des Script Editors.

Optionale Eigenschaften

  • type: Gib einen der folgenden Strings als Wert ein:

    • „lin“: Erstellt einen linearen Regler.

    • „log“: Erstellt einen logarithmischen Regler.

    • „momentary“: Erstelle eine momentane Taste.

    • „menu“: Erstellt ein Menü.

      Der Menütyp erfordert eine zusätzliche valueStrings-Eigenschaft, d. h. eine Anordnung verschiedener Strings, die im Menü angezeigt werden. Siehe Tutorial-Skript 13:

  • defaultValue: Gib eine Ganzzahl oder eine Gleitkommazahl ein, um den Standardwert zu definieren. Wenn du keinen Wert eingibst, wird standardmäßig der Wert 0,0 verwendet.

  • minValue: Gib eine Ganzzahl oder eine Gleitkommazahl ein, um den Mindestwert zu definieren. Wenn du keinen Wert eingibst, wird standardmäßig der Wert 0,0 verwendet.

  • maxValue: Gib eine Ganzzahl oder eine Gleitkommazahl ein, um den Höchstwert zu definieren. Wenn du keinen Wert eingibst, wird standardmäßig der Wert 1,0 verwendet.

  • numberOfSteps: Gib eine Ganzzahl ein, um die Anzahl der Schritte festzulegen.

  • unit: Gib einen String ein, der eine Einheitenbeschreibung in den Plug-in-Steuerungen darstellt. Wird kein Wert eingegeben, wird standardmäßig keine Einheit angezeigt.

  • text: Gib text ein, um einen Trenner oder Header der Plug-in-Oberfläche zu erstellen.

Tutorial-Skript 11: Slider Creation

Klicke in Logic ProFolgendes in das Fenster des Skripteditors ein, um einen Schieberegler namens „Parameter x“ mit einem standardmäßigen Bereich von 0 bis 1 zu erzeugen. Als Standardwert wurde der Mittelwert 0,5 definiert.

var PluginParameters = [{name:"Parameter x", defaultValue:0.5}];

Tutorial-Skript 12: Slider Ranges

Klicke in Logic ProFolgendes in das Fenster des Skripteditors ein, um einen linearen Regler-Typ mit fünf möglichen Positionen (Schritte) und einem Bereich von 0 bis 5 zu erstellen.

var PluginParameters = [{name:"Octaves", defaultValue:3, minValue:0, maxValue:5, numberOfSteps:5, unit:"octaves", type:"lin"}];

Tutorial-Skript 13: Menu Creation

Klicke in Logic ProFolgendes in das Fenster des Skripteditors ein, um ein Menü namens „Range“ mit den Optionen „Low“, „Mid“ und „High“ zu erzeugen.

var PluginParameters = [{name:"Range", type:"menu", valueStrings:["Low", "Mid", "High"]}];

Dynamische Ein- und Ausblenden der MIDI-Plug-in-Steuerungen

In komplexen Logic Pro -Skripts kann es nützlich sein, die Parametersteuerungen dynamisch ein- oder auszublenden, etwa für ein Menüobjekt, mit dem du eine Gruppe von Steuerungen ein- oder ausblenden kannst. Gib den folgenden Text im Fenster des Skripteditors ein, um diese Controller-Typen zu erstellen:

  • var PluginParameters = [{name:'uno'}, {name:'dos', hidden:true}];

    Rufe UpdatePluginParameters() auf, um dies dynamisch zu ändern.

Parameterwerte von Plug-ins zurücksetzen

Rufe GetParameter() auf und gib einen Parameternamen in der Klammer ein, um einen Wert durch den aktuellen Wert dieses Parameters zu ersetzen. GetParameter() wird normalerweise innerhalb der Funktion „HandleMIDI“ oder Funktion „ProcessMIDI“ verwendet.

In Logic Prowandelt dieses Code-Beispiel Modulations-Events in Noten-Events um und erstellt einen Regler zum Bestimmen der Notenlängen.

  • Text nach „/*“ zeigt Kommentare an, die den JavaScript-Code erklären.

    var PluginParameters = [{name:"Note Length", minValue:0, maxValue: 100, unit:"%"}]; /* create a slider (default range 0 - 100) */function HandleMIDI(event) {if(event instanceof ControlChange && event.number == 1) { /* if event is MIDI cc1 (modwheel) */var note = new NoteOn; /* create a NoteOn object */if(event.value == 0)/* because modwheel range is 0-127 and pitch range is 1-127, convert a modwheel value of 0 to 1 */event.value = 1;note.pitch = event.value; /* use cc value as note pitch */note.velocity = 100; /* use velocity 100 */note.send(); /* send note on */ var off = new NoteOff(note); /* create a NoteOff object that inherits the NoteOn pitch and velocity values */ var delayInBeats = GetParameter("Note Length")/100 + 0.1; /* retrieve the parameter value of the slider you created (add 0.1 to guarantee note on and off are not simultaneous) */ off.sendAfterBeats(delayInBeats); /* send note off after the length in beats is set via the slider */ }}

Logic Pro – Benutzerhandbuch: Apple Books

Logic Pro – Instrumente: Apple Books

Logic Pro – Effekte: Apple Books

Morty Proxy This is a proxified and sanitized view of the page, visit original site.
Hilfreich?
Zeichenbeschränkung: 250
Die maximal zulässige Anzahl von Zeichen beträgt 250.
Vielen Dank für Ihre Rückmeldung.
Morty Proxy This is a proxified and sanitized view of the page, visit original site.