Création de commandes du module MIDI Scripter de Logic Pro

Cette section décrit l’utilisation de l’éditeur de scripts pour créer des contrôleurs d’interface standard, comme des curseurs et des menus, pour vos modules Scripter. La seule propriété que vous devez obligatoirement définir pour un nouveau paramètre est « name ». Par défaut, il s’agit d’un curseur de base. En outre, vous pouvez utiliser d’autres propriétés pour changer de type et modifier le comportement des commandes.

Propriétés facultatives

  • type : tapez l’une des chaînes suivantes pour indiquer la valeur :

    • « lin » : crée un curseur linéaire.

    • « log » : crée un curseur logarithmique.

    • « momentary » : Crée un bouton momentané.

    • « menu » : crée un menu.

      Le type de menu nécessite une propriété valueStrings supplémentaire représentant un tableau de chaînes à afficher dans le menu. Reportez-vous au script Tutoriel 13.

  • defaultValue : saisissez un nombre entier ou en virgule flottante pour définir une valeur par défaut. Si aucune valeur n’est indiquée, la valeur par défaut correspond à 0,0.

  • minValue : saisissez un nombre entier ou en virgule flottante pour définir une valeur minimale. Si aucune valeur n’est indiquée, la valeur par défaut correspond à 0,0.

  • maxValue : saisissez un nombre entier ou en virgule flottante pour définir une valeur maximale. Si aucune valeur n’est indiquée, la valeur par défaut correspond à 1,0.

  • numberOfSteps : Type de nombre entier définissant le nombre de pas.

  • unit : Entrez une chaîne pour présenter la description d’unité dans les commandes de module. Si aucune valeur n’est saisie, le comportement par défaut n’affiche aucune unité.

  • text : saisissez un texte pour créer un diviseur/en-tête dans l’interface du module.

Chargez le réglage Tutoriel correspondant pour afficher le script dans l’éditeur de scripts. Vous comprendrez ainsi la structure de la syntaxe et la mise en page du code et des commentaires. Consultez Utilisation de l’éditeur de scripts du module MIDI Scripter de Logic Pro.

Script Tutoriel 11 : Création d’un curseur

Dans Logic Pro, saisissez ce qui suit dans la fenêtre de l’éditeur de scripts pour créer un curseur nommé « Parameter x » avec une plage par défaut de 0 à 1. Il est défini sur le point intermédiaire 0,5.

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

Script Tutoriel 12 : Plages de curseur

Dans Logic Pro, saisissez ce qui suit dans la fenêtre de l’éditeur de scripts pour créer un curseur linéaire avec cinq positions possibles (pas) et une plage allant de 0 à 5.

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

Script Tutoriel 13 : Création d’un menu

Dans Logic Pro, saisissez ce qui suit dans la fenêtre de l’éditeur de scripts pour créer un menu nommé « Range » avec les options « Low », « Mid » et « High ».

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

Masquage ou affichage dynamique des commandes de module MIDI

Dans les scripts Logic Pro complexes, il peut s’avérer utile de masquer ou d’afficher dynamiquement les commandes de paramétrage, par exemple pour qu’un élément de menu vous permette de choisir un groupe de commandes à afficher. Entrez ce qui suit dans la fenêtre de l’éditeur de scripts pour créer ces types de contrôleur.

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

    Appelez la fonction UpdatePluginParameters() pour modifier la valeur dynamiquement.

Récupération des valeurs de paramètre d’un module

Appelez GetParameter() en incluant le nom du paramètre pour renvoyer une valeur (objet numérique) avec la valeur du paramètre. GetParameter() est généralement employé à l’intérieur de la fonction HandleMIDI du module MIDI Scripter fonction HandleMIDI du module MIDI Scripter ou Fonction ProcessMIDI du module MIDI Scripter de Logic Pro.

Dans Logic Pro, cet exemple de code convertit les événements de modulation en événements de note et propose un curseur pour déterminer la durée des notes.

  • Le texte après /*…*/ correspond à des commentaires pour expliquer le code JavaScript.

    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 */ }}
Morty Proxy This is a proxified and sanitized view of the page, visit original site.
Avez-vous trouvé cet article utile ?
Limite de caractères : 250
La limite maximale des caractères est 250.
Merci de votre feedback.
Morty Proxy This is a proxified and sanitized view of the page, visit original site.