DSSI-VST est un adapteur
VST pour les hôtes de greffons
Dssi/
Ladspa.
Site web officiel :
http://breakfastquay.com/dssi-vst/.
Dernière version :
0.9 %version_date_dssi-vst%.
❗ voir
ce post
Licence :
GNU GPL.
Introduction
DSSI-VST est un wrapper, donc une interface logicielle permettant dans notre cas de faire apparaitre les greffons VST(i) provenant d'un système win32 comme des greffons natifs
DSSI ou
LADSPA. Cette solution utilise un processus serveur qui
scan les plugins VST(i) et les instancie dans un thread séparé. L'exportation en tant que plugin LADSPA n'existe que depuis peu, et ceci ouvre le monde VST également aux applications qui ne supportent pas les greffons DSSI.
DSSI-VST est donc une solution très intéressante pour de nombreuses applications natives linux. La version 0.8 comporte comme dernière modification un support de compilation et de fonctionnement sur des systèmes 64bits.
Installation
[+]
pour la plupart des distributions :
➡️ Il existe le paquet
dssi-vst sur toutes les distributions :
Pour les autres, à partir du code source :
La dernière version de dssi-vst peut être obtenue sur
sourceforge. Depuis la version 0.8, elle inclut notamment la librairie vestige qui fournit les en-têtes VST nécessaires. Vestige remplace le vstsdk de Steinberg, du moins pour cette application. Plus besoin de s'enregistrer sur le site de Steinberg. 😉
Paquets nécessaires en plus
Pour la compilation on aura besoin de peu de choses, dssi et wine étant souvent déjà présent sur votre système :
- dssi et dssi-devel (paquet dssi-dev ou dssi-devel selon la distribution)
- wine et wine-devel (ou libwine-dev) ou plus récente
- liblo et liblo-devel (ou liblo-dev) (la librairie de Steve Harris : liblo ou "Lite OSC")
- libalsa2-devel (fedora, mandriva) ou libasound2-dev (debian, ubuntu)
- pour les systèmes 64bits vous aurez besoin en plus: gcc-4.2-multilib und g++-4.2-multilib
Compilation
Vérifiez dans quel dossier se trouvent vous greffons DSSI et LADSPA. C'est en général /usr/lib/dssi et /usr/lib/ladspa.
Déballez le paquet
tar xjvf dssi-vst_0.8.tar.bz2
ou
tar -xvzf dssi-vst-0.8.tar.gz
puis
Editez le fichier
Makefile (par exemple: kwrite Makefile) et changez les chemins DSSIDIR et LADSPADIR et BINDIR
Fichier Makefile :
Copy to clipboard
DSSIDIR = /usr/lib/dssi
LADSPADIR = /usr/lib/ladspa
BINDIR = /usr/bin
.......
en fonction d'où se trouvent vos greffons (le prefix système est en général /usr ou /usr/local).
Sauvegardez le fichier.
Compilez
Si ceci a abouti, trois choses ont changé:
- normalement vous vous retrouvez maintenant avec un plugin DSSI de plus dans votre répertoire des DSSI (/usr/lib/dssi), et il porte le nom dssi-vst.so . C'est ce 'plugin' que votre hôte DSSI va incorporer, et c'est lui qui y publiera vos VST win32 en tant que plugins DSSI désormais.
- le plugin dssi-vst.so se trouve également parmi vos plugins LADSPA (/usr/lib/ladspa) et permet ainsi d'utiliser les effets VST en tant que plugin LADSPA.
- Vous avez en plus une nouvelle application dans /usr/bin qui est nommée vsthost, et qui permet d'ouvrir des VSTs win32 sans passer par un hôte supplémentaire. Désavantage de travailler sans hôte supplémentaire: On ne pourra pas sauvegarder les paramètres du plugin.
➡️
Note Temporaire: Il semble que la dernière version de wine 1.1.19 pose un problème et manque à produire deux fichiers shell script au moment de la compilation. Je dépose donc ces deux fichiers ici jusqu'à résolution du problème en amont. Placez ces fichiers dans le dossier des sources dssi-vst avent de lancer make install.
Fichier joint inexistant sur cette page
Fichier joint inexistant sur cette page
Les deux fichiers étant absent
:rolleyes:, il est également possible de renommer les deux fichiers suivant :
Copy to clipboard
mv dssi-vst-server.exe dssi-vst-server
mv dssi-vst-scanner.exe dssi-vst-scanner
On relance l'installation et enjoy !
Notes
-Ceci concerne une erreur de compilation des sources de dssi-vst-0.8 sur Ubuntu 9.10 (Karmic Koala) et Mandriva 2010
Tout d'abord voici le message d'erreur rencontré:
Copy to clipboard
yoritomo@yoritomo-desktop:~/Bureau/dssi-vst-0.8$ make
wineg++ -m32 -Ivestige -Wall -fPIC remotepluginclient.cpp -c -o remotepluginclient.w32.o
remotepluginclient.cpp: In constructor ‘RemotePluginClient::RemotePluginClient()’:
remotepluginclient.cpp:41: error: ‘sprintf’ was not declared in this scope
remotepluginclient.cpp:50: error: ‘perror’ was not declared in this scope
remotepluginclient.cpp:64: error: ‘perror’ was not declared in this scope
remotepluginclient.cpp:78: error: ‘perror’ was not declared in this scope
winegcc: x86_64-linux-gnu-g++ failed
make: *** remotepluginclient.w32.o Erreur 2
Étant un peu codeur j'ai résolu le problème moi même, et il était aussi simple qu'étrange.
Je m'explique en détail:
Premier indice, je savais que sprintf et perror faisaient partie de stdio.h qui est un des fichiers entête des plus courants en C.
Je me suis quand même posé des questions quand j'ai été voir dans /usr/inlude et que j'y ai bien vu le fichier stdio.h à sa place ....
Pourquoi le compilateur ne le trouvait il pas? Ou, lui à t on dit de le trouver (bonne question)
Bon alors on va aller voir ça: j'ouvre le fichier remotepluginclient.cpp mentionné dans l'erreur qui se trouve dans le répertoire de dssi-vst-0.8.
Il y a bien les appels à sprintf et perror (stdio.h) mais pas de #include bizarre ça!
Il n'y a pas d'appel à un autre .cpp donc la il y à une erreur ! Semble-t'il intentionnelle parce que dans chaque fichiers .cpp créant ces erreurs (voir plus loin) il y à une ligne qui manque dans les include comme si on l'avait effacée.
Bon alors je ne sais pas par quel miracle si ces sources se compilent sous Jaunty ou autre mais sur karmic ça ne marche pas et c'est plutôt logique.
Ce nouveau problème vient de la version du compilateur wineg++ 4.4.1, compilateur beaucoup moins permissif que les anciennes versions. Il faut donc corriger le code. (je remonte le problème en upstream) (piep - dec 2009)
Alors la solution:
Ouvrir ces fichiers avec Gedit ou kate :
Copy to clipboard
remotepluginclient.cpp
dssi-vst.cpp
rdwrops.cpp
remotevstclient.cpp
remotepluginserver.cpp
et ajouter une ligne include comme ceci dans la ligne vide de la section include du fichier :
#include <stdio.h>
Ne pas oublier d'enregistrer les fichiers et supposant que les dépendances sont respectées cela devrait fonctionner.
Bonne musique à tous, attention aux durions au bout des doigts 😀
Configuration
- Il faut définir la variable d'environnement VST_PATH en ajoutant la ligne
export VST_PATH= votreDossierVST
au fichier .bashrc dans votre dossier home. Pour plus d'infos sur les variables d'environnement, regardez en bas de la page Les éléments du système
- Changez les noms de vos VSTs .dll en sorte à ce qu'il n'y ait plus d'espaces
Utilisation
Fonctionnement en tant que DSSI
Dans un hôte DSSI
Puisque le greffon
dssi-vst est maintenant placé dans le répertoire avec les autres DSSI, tous les VST(i) dans votre dossier $VST_PATH seront alors accessibles dans chaque programme hôte DSSI (
Qtractor,
Rosegarden ).
On placera donc les VSTi dans le répertoire
vst situé dans
/home/USER/
On pourra lancer directement le VSTi en mode standalone par :
jack-dssi-host dssi-vst.so:MonVST.dll
Pour un exemple d'utilisation dans Qtractor, regardez en bas de
cette page.
Sans hôte
Les plugins VST peuvent aussi être lancés en mode 'standalone' en utilisant le programme
vsthost.
Essayez de taper
Si le plugin VST est compatible wine et possède son propre interface graphique, vous verrez:
...une fenêtre avec le plugin VST et un terminal plein de messages sans gravité, dssi-vst parle beaucoup.
Il y a aussi une sortie dans jack et une entrée ALSA MIDI correspondante qui se créent.
💡 Vsthost est en fait seulement un script de convivialité. La commande qui s'execute est : jack-dssi-host dssi-vst.so:MonVST.dll
Fonctionnement en tant que LADSPA
Pour profiter d'un effet VST en tant que greffon LADSPA, vous pouvez utiliser par exemple
jack-rack qui liste les noms des VST parmi les autres LADSPA natifs. Vous pouvez l'inclure aussi dans un synthétiseur.
Voici un exemple de l'excellent
VST reverb Ambience.dll incorporé dans
AlsaModularSynth. Pour accéder aux effets VST, choisir le greffon correspondant dans le LADSPA Browser sous la rubrique dssi_vst, et ensuite cliquer sur 'create module'.
Dans la boîte à rythme
Hydrogen les LADSPA VST apparaissent naturellement parmi les autres inserts accessibles par le mixer (FX).
L'interface de contrôle de ce greffon VST est produite par l'hôte LADSPA qui n'est pas capable d'afficher l'interface graphique d'origine.
Les VSTi compatible
Qtractor via
dssi-vst :
Qtractor : Vsti compatibles via DSSI-VST
Voilà !
Si tout se passe bien vous pourrez utiliser vos VSTs dans les limites de leur compatibilité/propreté de programmation. Les hôtes DSSI et LADSPA s'occupent de la sauvegarde des paramètres du greffon dans certains cas. Il est à noter que certains VSTi ne peuvent pas transmettre l'intégralité de leurs paramètres à travers DSSI et ne sont donc que partiellement utilisables.
N'oubliez pas de lancer le serveur Jack avant de commencer 😉.
Vstserver (ancienne méthode, obsolète)
[+]
Vstserver est aujourd'hui laissé tel quel par son développeur, il faut à présent lui préférer les autres solutions, sachez également qu'il sera très difficile à compiler soi-même à cause des changements récents au sein de Wine.
Il y a en fait plusieurs petites applications qui vont avec Vstserver. Comme son nom l'indique il y a un serveur qu'il faut démarrer au préalable (un exécutable appelé
vstserver). Celui-ci
scan le répertoire VST_PATH (qu'il faut définir en temps que variable shell pour situer le répertoire où sont installés les plugins). Puis on peut utiliser soit la commande de connection jack (vsti MonVST.dll), soit le fameux wrapper vst.so (placé dans le répertoire LADSPA) qui fait apparaitre les plugins VST comme plugins
LADSPA. Dans ce cas la chaque application utilisant les LADSPA faira figurer également les VST. Signalons aussi qu'il existe un
external qui s'utilise dans Pure-Data.
Copie d'écran du dernier vstserver en date (04/28/04), hôte d'une instance de l'instrument VSTi Crystal "jackifié" par vsti (noyau "2.4.24-1.ll.rhfc1.ccrma", ALSA 1.0.1-1.cvs, jack-audio-connection-kit-0.94.0-1, wine-vstserver-0.3.0, vstserver-0.3.1, vsti-0.0.3):
Sujet sur AudioFanzine intitulé "La liste de compatibilité des FreeVSTi's sous Linux", référençant les résultats de tests de la plupart des instruments VSTi gratuits de l'époque avec vstserver:
http://fr.forums.audiofanzine.com/apprendre/mailing_forums/index,idtopic,60705.html
Un article en français sur Vstserver
Changelog
[+][+]
Ou plus simplement suffit d'installer
Festige ou de le metre à jour et
tout est dedans!
(Il faut que wine soit installé et si possible à jour)