Cette page reprend et met à jour les considérations sur les plug ins VST en Max, abordés sinon dans le chapitre Effets sonores et visuels.
Les patchs de cette page sont ici : Max-VST-2023.zip
Les modules VST sont conçus et programmés pour être compatibles avec la plupart des logiciels de MAO : c'est un ensemble standardisé d'effets et d'instruments qui peuvent donc s'utiliser dans différents environnements. On peut retrouver son plug in préféré d'un logiciel à l'autre, c'est très pratique.
Les VST se divisent en deux grandes familles : les effets et les instruments.
Ils modifient un son pré-existant : un son préenregistré ou un son généré par synthèse.
Ce son est envoyé dans l'effet, qui le modifie.
Tous les effets disposent d'un bouton Bypass
afin de les arrêter ou de les activer.
Ils créent un son en réponse à une note, ce sont des synthétiseurs. Ils doivent recevoir (en général) une note midi et répondent au changement de pitch pour créer des notes de différentes hauteurs (ou autre variante).
Le seul piège avec ces modules est la distinction entre les versions 32 et 64 bits : ellesne sont pas interchangeables et beaucoup n'existent que dans l'une des versions.
Il faut donc faire attention en choisissant un plug in qu'ils soit compatible avec le logiciel utilisé, ou LES logiciels si l'on souhaite l'ouvrir dans plusieurs environnement.
Les plug ins 64 bits ne sont bien sûr pas fonctionnels dans un logiciel 32 bits, mais attention les plug ins 32 ne sont pas fonctionnels dans les logiciels 64 (ce qui est plus inattendu).
Typiquement pour Max MSP il faut être vigilant : Max 7 existe en 32 et 64, Max 8 n'est que 64.
Dans cette page seules des versions 64 ont été utilisées, mais certains de ces modules existent aussi en 32.
Intérêts dans Max :
Dans ce premier patch, le son est fourni par un lecteur de fichiers sonores centré autour de l'objet sfplay~
. L'objet coll
sert à modifier les sons en circulant dans une liste.
Ce son est envoyé dans l'entrée d'un objet vst~
.
Le message plug
sert à choisir et charger le plug in. Une fois configuré, double-cliquer sur l'objet vst~
ouvre l'interface graphique du plug in, ce qui permet d'accéder manuellement aux divers réglages.
plug
.vst~
et afficher l'interface.Remarque : les 2 sorties de gauche de l'objet vst~ sont des sorties audio, pour la stéréo. Je n'ai utilisé que celle de gauche ici.
Remarque : les effets sont étrangement plus faciles à tester avec des bruits d'animaux pour se rendre compte de ce qu'ils font.
Remarquons la structure des messages pour accéder à un sous-dossier : le chemin plug ./OK64/Dead_Duck_Free_Effects/x64/DD_BitCrusher.dll
débute par un point. Il n'y a pas d'espace dans ce chemin, c'est mieux, sinon il faut aussi des ' '.
plug
, ici Bit Crusherparam
branché sur vst~
print parametres
permet d'y afficher tous les réglages disponibles du plug in, explicité sur la 3e sortie de l'objet vst~
Crush $1
et Decimate $1
prennent à la volée les valeurs des cases floatRemarque : les noms des paramètres sont ici simples et peu nombreux.
Si un nom de paramètre contient un espace, il faut l'encapsuler dans des ' ' pour que Max le reconnaisse.
À partir de là il est clair que n'importe quel paramètre peut être automatiquement piloté depuis Max dès qu'il est identifié.
Néanmoins parfois la difficulté est d'identifier les paramètres même avec leur nom... quand il y en a 156 par exemple et que certains portent des noms proches.
La 4e sortie de l'objet vst~ donne une information très utile : chaque fois qu'un réglage est modifié, que ce soit manuellement dans l'interface graphique, via un choix d'un ensemble de presets ou automatiquement depuis un message, cette sortie indique l'index du paramètre modifié et la valeur qui lui est attribuée. En affichant avec un objet print
cette information dans la console Max, nous pouvons identifier individuellement les index (=numéros) des paramètres qui nous intéressent.
Par exemple, modifier le message Decimate $1
fait afficher :
index: 3 0.1
index: 3 0.2
index: 3 0.3
index: 3 0.4
index: 3 0.4
index: 3 0.5
index: 3 0.51
index: 3 0.52
index: 3 0.53
index: 3 0.54
index: 3 0.55
ce qui nous permet de déduire que le paramètre Decimate correspond à l'index 3.
Il y a aussi moyen de visualiser tous les noms et index dans une liste, dans un afficheur dédié : cf Help de vst~, néanmoins la méthode décrite ici est manuelle et très directe.
En conséquence, dans le patch, le message Decimate $1
peut être remplacé par un message 3 $1
.