#########################
Notas de revisiones:
Revisión 0: 31 diciembre 2009. Publicado.
Revisión 1: 1 enero 2010. Completado.
Revisión 2: 3 enero 2010. Añadida nota para compilación en sistemas de 64 bits
Revision 3: 18 enero 2010. Añadido punto 9 para solucionar posibles problemas de fuentes
Revisión 4: 26 marzo 2010. Añadida alternativa a instalación a través de Synaptic, añadiendo PPA
#########################
¿Qué y por qué?
En Linux tenemos plugins de efectos de audio LADSPA y plugins sintetizadores (o "instrumentos virtuales) DSSI. Además, LV2 (LADSPA Version 2) es una nueva especificación que sirve tanto para efectos como para instrumentos. También hay plugins VST nativos para Linux.
Sin embargo, la tecnología Windows VST está tan extendida que a muchos usuarios que vienen de Windows les parece impensable tener que prescindir de sus plugins. Para eso salieron proyectos como dssi-vst, que presentamos en esta entrada.
Dssi-vst permite a los usuarios de Linux ejecutar plugins de efectos e instrumentos VST compilados para Windows en hosts para plugins DSSI y LADSPA. Además, dssi-vst ofrece un host pra VST "stand-alone" que es cliente de jack.
Dssi-vst es libre y de código abierto, escrito por Chris Cannam (autor de Rosegarden, Sonic Visualiser, la librería Rubberband...). Se distribuye bajo la licencia GPL. La compilación por defecto (que veremos en aquí) no hace uso del SDK de Steinberg y en teoría no habría problema para distribuirlo en binario. Sin embargo, no está en los repositorios de las ultimas versiones estables de Debian ni de Ubuntu.
Existen otros hosts para plugins Windows VST, por ejemplo, LMMS (en los repos de Debian / Ubuntu y otras distribuciones) o Ardourvst (no en los repositorios de Debian / Ubuntu, de momento).
Uso de dssi-vst
En la práctica, dssi-vst da para varias combinaciones. Por ejemplo, podemos:
- Tener efectos e instrumentos VST en Rosegarden, con una interfaz dssi. (Ver pantallazo 1).
- Tener efectos e intrumentos VST en ardour (nota 1), Audacity, Jack Rack o cualquier otro host de plugins LADSPA (Ver pantallazos 2 y 3).
- Tener un instrumento VST como si fuera una aplicación "stand alone", en un sencillo host cliente de jack. (Ver pantallazos 4 y 5).
Pantallazo 1. SPITFISH DeEsser (VST) lanzado desde Rosegarden, en el editor de plugins DSSI
Pantallazo 2. SPITFISH DeEsser lanzado desde ardour, en el editor de plugins LADSPA
Pantallazo 3. SPITFISH DeEsser lanzado desde Audacity, en el editor de plugins LADSPA (Menú efectos)
Pantallazo 4. SPITFISH DeEsser lanzado con vsthost
Pantallazo 5. Studio Devil, ampli virtual de guitarra (instrumento VST), lanzado con vsthost. Muestro también las conexiones de jack audio necesarias para enchufar la guitarra directamente a la tarjeta de audio y escucharnos por los altavoces
Instalación de dssi-vst
(Estas instrucciones se han probado en ubuntustudio 9.10. Para otras distribuciones o versiones de ubuntu será muy similar, pero puede haber pequeñas variaciones)
EDITADO en rev 4. Para ahorrarse los pasos 1 a 5, los usuarios de karmic pueden añadir el PPA de Philip Johnson. Más información sobre los PPA's de ubuntu.
sudo add-apt-repository ppa:philip5/extra
Ir a synaptic, recargar e instalar dssi-vst.
No recomiendo tener este repo (ni ningún otro no oficial) permanentemente habilitado. De paso veréis que tiene otros paquetes interesantes)
1) Dependencias
En ubuntu, es necesario instalar estos paquetes:
build-essential
wine-dev
liblo0-dev
dssi-dev
libasound2-dev
En sistemas de 64 bit, hay que instalar, además:
gcc-multilib
g++-multilib
(Yo he compilado para x86 (32 bits). No he probado seguir esta guía para x86_64 pero debería funcionar igualmente)
2) Conseguir las fuentes y moverlas al directorio de trabajo
Desde http://breakfastquay.com/dssi-vst/ bajamos la última versión. A la fecha de escribir esto, dssi-vst-0.8
En la carpeta 'Descargas' o en el Escritorio, nos aparecerá un tar.gz, que descomprimimos. Movemos la carpeta creada a nuestro directorio de trabajo, en mi caso, /home/pablo/fuentes.
3) Comprobar el path de las libs de dssi y ladspa y si necesario, modificar el Makefile:
Veremos que hay un archivo Makefile, con el siguiente contenido (entre otras líneas):
DSSIDIR = /usr/local/lib/dssi
LADSPADIR = /usr/local/lib/ladspa
Si hemos instalado el soporte para plugins LADSPA y DSSI a través de paquetes de nuestra distribución (o vinieron instalados por defecto, como en el caso de ubuntustudio, al instalar los plugins de audio), tendremos que modificarlas a:
DSSIDIR = /usr/lib/dssi
LADSPADIR = /usr/lib/ladspa
Podemos comprobar con nautilus cual es la ruta correcta.
4) Añadir el "include" cstdio al código fuente, para que no haya problemas de compilación
(A dssi-vst le falta este "include" para que se pueda compilar con la reciente versión del compilador de GNU que trae ubuntu 9.10. Este paso no será necesario en todos los casos)
En los archivos:
remotepluginclient.cpp
remotepluginserver.cpp
remotevstclient.cpp
rdwrops.cpp
debemos añadir, debajo del resto de "includes":
#include [cstdio]
(Sustituyendo los corchetes por los signos "menor que" y "mayor que" que no puedo escribir aquí porque el editor html no lo permite)
5) Compilar e instalar
En una terminal desde el directorio de dssi-vst-0.8:
make
sudo make install
Algunas personas se han encontado con un error al instalar dssi-vst. Algo así como:
"install: no se puede efectuar `stat' sobre «dssi-vst-server»: No existe el fichero ó directorio"
En este caso, parece que wine (algunas versiones de wine, ya que no siempre aparece este problema) crea los archivos 'dssi-vst-server.exe' y 'dssi-vst-scanner.exe' en lugar de 'dssi-vst-server' y 'dssi-vst-scanner', que es lo que espera el Makefile de dssi-vst. El truco es renombrar esos dos archivos (en el directorio de trabajo, donde están las fuentes de dssi-vst), quitándoles la extensión .exe. Y luego volver a hacer 'sudo make install'.
6) Configuración de wine
Elegir Windows XP y en la pestaña audio, alsa.
Ignorar cualquier error de tipo fixme:mixer si lanzamos winecfg desde terminal
7) Establecer las rutas de los VST
Es muy importante que los vst's (librerías de extensión .dll) estén en directorios conocidos por el sistema. dssi-vst va a mirar por defecto en los directorios:
/usr/lib/vst/
/usr/local/lib/vst
/home/usuario/vst
Si tenemos los .dll en otras ubicaciones, debemos declararlo en el archivo 'home/usuario/.bashrc', con las rutas separadas con dos puntos (:), como en la siguiente línea:
export VST_PATH=/ruta/a/vsts:/ruta/a/otros/vsts:etcétera
Por ejemplo, en mi caso:
export VST_PATH=/usr/local/lib/vst/:/home/pablo/vst/:/home/pablo/vst/pruebas
Las dos primeras rutas no sería necesario declararlas (porque son las rutas por defecto), pero mejor hacerlo.
8) Renombrar las librerías .dll para eliminar los espacios, si los hay.
9) En algunos VST las letras se ven mal hasta el punto que apenas son legibles. winetricks es un script que nos puede solucionar algunos problemillas con wine, como en este caso. Desde terminal, podemos hacer
$wget http://www.kegel.com/wine/winetricks (descarga el script)
$sh winetricks allfonts (instala fuentes de microsoft)
Casos prácticos
Para lanzar un vst como "stand alone" cliente de jack, hacemos:
vsthost elquesea.dll
Como hemos dicho, también se pueden lanzar desde Rosegarden (con interfaz dssi), ardour, audacity, jack-rack, etc (con interfaz ladspa).
Créditos y para saber más:
Chris Cannam
http://www.breakfastquay.com/dssi-vst/
http://www.digitalfishphones.com (Pantallazos 1-4)
http://www.studiodevil.com/home/ (Pantallazo 5)
Notas:
(1) Ardour también se puede compilar para hacer de host de VST, directamente sin el envoltorio ladspa-vst.
RADIO ESCOLA UN SOMNI FET REALITAT
Hace 6 años
Una excelente e inestimable ayuda Pablo.
ResponderEliminarfuncionando gracias compa!
ResponderEliminargracias por eso how-to.
ResponderEliminargracias por compartir este tutorial Pablo, agradezco lo expeditivo de las instrucciones para gente como yo que no llevamos mucho tiempo con Linux.
ResponderEliminarSaludos.
Hola Pablo!
ResponderEliminarMe pasa que algunos vst's no me funcionan con el Ardour, encontré esto;
http://tracker.ardour.org/view.php?id=1366
pero en la configuración del wine teno "/" en la Z: asi que no tengo ni idea de como solucionarlo
Hola Cato. Pruébalos con otros hosts a ver si funcionan. LMMS, Reaper, vsthost de dssi-vst, fst-festige... No sé que podrá ser. Si alguno de lo que no te funcionan tiene demo, lo puedo probar si me dices cuál es.
ResponderEliminarsi que funcionan si los lanzo como vsthost, pero con ardour me pone lo mismo que al del link que te he pasado, prueba este por ejemplo:
ResponderEliminarhttp://www.kvraudio.com/get/3250.html
Salut!
14
Lo he probado con vsthost y con fst (no tengo ahora mismo ardour compilado con soporte para Windows VST) y no me funciona con ninguno de los dos y con wine 1.1.31. No sé que puede ser.
ResponderEliminarOK, gracias Pablo!
ResponderEliminarSalut!
14
Esta perfecto! Todo funcionando. Muchas gracias ;)
ResponderEliminarY teniendo el guitarix, o rackrack ¿para que instalar programas del Winbugs?
ResponderEliminarOtra cosa son instrumentos individuales VST pero teniendo un amplificador como los que comentaba ¿para que esto?
Salujdos