¿Funcionan los VST en Linux?

  • 1
rajotore
#1 por rajotore el 07/12/2010
De igual manera quiero saber si los vsts, trabajan con este entorno, Linus, en caso de que no funcionen cual seria el nombre de estos plugins en Linus.
Subir
vivaldis
#2 por vivaldis el 07/12/2010
hola rajotore!..no es linus , es linuX...y en tu patria hay unos señores que se han currado una distribucion de linuX muy buena y te atenderan gustosamente http://venenux.org/
suerte.
Subir
anecochea
#3 por anecochea el 07/12/2010
Este es otro de esos temas que siempre generan controversia en el mundo de Linux: que para todas las cosas hay diferentes entornos. En cuanto a plugins de audio puedes usar:
- Ladspa
- DSSI
- LV2

Por qué es un tema controvertido, bueno porque la mayoría de los que trabajan para un entorno defienden el uso de ese entornos sin considerar otro ni por casualidad. Del mismo modo hay algunos que prefieren no usar ninguno de estos entornos. Así, los mejores sintes: zynaddsubfx, amsynth, bristol, azr3, ams y phasex, por nombrar algunos, trabajan exclusivamente en modo stand-alone, y no existe interés por parte de sus creadores en convertir sus sintes en un plug-in. Lo mismo pasa con rakarrack como procesador de efectos para guitarra.

A modo de ejemplo, en una discusión entre los desarrolladores de Bristol, se argumentaba que no veían cual era la parte ventajosa de rediseñar un sinte en modo plugin. Otra razón esgrimida es el hecho que bristol utiliza su propia gui, y el entorno lv2 podría no ser compatible con guis extrañas.

En todo caso, lo más parecido a vst es lv2, si buscas plugins para este entorno tienes:
- zyn (fork de zynaddsubfx en modo plugin bastante trucho y feo perdón por la sinceridad)
- calf (colección de plugins, tanto sintes como efectos)
- ll-plugins (un par de sintes)
- Invada (efectos varios: compresores, delays, flangers y etcéteras)
- swh (plugins para ladspa portados a lv2)
- mda (idem idem)
- vocoder (de perogruyo)

También deberías intalar algún host: zynjacku, lv2-host. O algún DAW como qtractor.

Sobre los plugins. Algunos son muy buenos, por ejemplo calf organ es una especie de sintetizador aditivo con osciladores afinados al estilo organo hammond, pero es más versátil al permitirte elegir entre diferentes formas de onda (ingenioso).

Calf monosynth es un buen sinte sencillito estilo minimoog para hacer solos.

El compresor de Invada es filete tanto gráficamente como en calidad de sonido.

sinesharper de ll-plugins es un concepto de síntesis que no entiendo, me manejo en aditiva, substractiva, por modulación de onda, granular y pads, pero sinesharper tiene unas perillas que no termino de entender para que sirven, en todo caso el sonido es filete, se puede mover las perillas al azar consiguiendo buenos resultados.

zyn es un intento de fork de zynaddsubfx pero que solo incluye la síntesis aditiva (ni substractiva ni pads ni efectos), con el detalle de tener la gui más horrorosa que alguien pudo haber concebido.

Ojo, nunca me gusta quejarme del software libre, es decir, los programadores hacen su mejor esfuerzo, pero realmente, el sistema de conexiones vía jack me parece engorroso, unir esfuerzos para tener un sistema de plugins estilo vst sería algo que agradeceríamos muchos de los que trabajamos en audio con Linux. Sin embargo, el escenario no parece apuntar hacia ese norte, como vemos, ya hay tres entornos, y hay pocos programas que trabajan con los tres, y la mayoría de los sintes hay que usarlos en modo stand alone y conectarlo "a la antigua" con el secuenciador o con el teclado.
Subir
Pablo_F
#4 por Pablo_F el 07/12/2010
Hola,

Además también están los Linux VST. Y también hay forma de hacer funcionar los Windows VST (al menos, muchos de ellos) a través de fst o de dssi-vst (o Festige, que es un front-end gráfico). Como son programas de Windows debes instalarlos a través de Wine. Hay otros programas como Reaper o FL Studio que funcionan con wine, pero si buscas una solución nativa, puedes empezar por echar un vistazo a Rosegarden, qtractor y ardour.

Siempre puedes hacer la prueba pero parece que Sonar por el momento no funciona con Wine. Si necesitas esta aplicación, siempre puedes empezar a probar Linux con un arranque dual o desde Live CD en lugar de cambiarte radicalmente, a no ser que te mentalices de que vas a tener que cambiar tus programas y tu forma de trabajar.

No hago música electrónica pero me doy cuenta que será engorroso conectar varios sintes stand-alone cada vez. La próxima versión de jack tendrá soporte para gestión de sesiones y poco a poco espero que la mayoría de los programas la implementen. Entonces, aunque no estén como plugins de una única DAW principal, si con un click se consigue arrancar todos los programas en el estado que quedaron cuando se guardó la sesión, incluidas todas las conexiones, será un gran paso, no crees? Y no estará tan mal que no sean plugins...

Saludos, Pablo
Subir
vagar
#5 por vagar el 08/12/2010
Alguien escribió:
Ojo, nunca me gusta quejarme del software libre, es decir, los programadores hacen su mejor esfuerzo, pero realmente, el sistema de conexiones vía jack me parece engorroso, unir esfuerzos para tener un sistema de plugins estilo vst sería algo que agradeceríamos muchos de los que trabajamos en audio con Linux.


No es un problema nada trivial, aquí lo explico un poco en un artículo de mi blog (en inglés):

http://sourceforge.net/userapps/wordpress/luisgarrido/2010/09/07/data-transport-in-linux-audio-applications/
Subir
anecochea
#6 por anecochea el 08/12/2010
Supón que usas un teclado controlador midi, y lo usas para tocar un tema de tres secciones. En la primera sección necesitas un sonido de piano, en la segunda sección necesitas un organo hammond con efecto de chorus, en la tercera sección necesitas una síntesis aditiva con un efecto flanger y overdrive, con un pad y un chorus para el acompañamiento. ¿cómo lo haces?.

Ahora supongamos que en la primera sección usas linuxsampler para el sonido de piano, luego usas azr3 para el hammond conectado a lv2rack para el chorus, luego necesitas padsynth de zynaddsubfx que incorpora su propio motor de efecto, y el lead lo haces con amsynt conectado a rakarrack. Si tienes un solo teclado, además necesitarás spliter para separarlo en dos en la última sección (yo por ejemplo tengo dos teclados uno de 88 y otro de 64 teclas, pero el de 88 es difícil de transportar y no cabe en escenarios muy estrechos, por lo que uso solo el de 64 teclas).

Ahora hacer todas estas conexiones via jack es poco práctico, y si hablamos de distintas secciones de un mismo tema, tienes que tener suficientes silencios para hacer otras conexiones (que no siempre se da el caso). Se puede hacer las conexiones con rosegarden, pero ahora tienes otro problema, que rosegarden trabaja con alsa-seq, y muchos sintes como azr3 trabajan con jack-midi, necesitas usar a2jmidi_bridge. Y los problemas siguen, no puedes hacer las conexiones en la comodidad de tu hogar y dejar el pc hibernando, porque jack se detiene en estado de hibernación. Patchbay en mi opinión ayuda, pero ni tanto, patchbay te recuerda conexiones estáticas, pero cuando necesitas cambiar dinámicamente de conxiones como en mi caso, no aporta mucho.

Ahora, imaginemos que usamos jack-rack, y necesitamos calf-organ con un efecto chorus y vibrato, y luego un sineshaper con un efecto delay y flanger. ¿cómo haces las conexiones en jack?

Los plugins como calf monosynth, son buenos, pero muchos hosts no cargan el menu de bancos con presets.

Hay programas como linuxsampler y fluidsynth (y me parece que zynaddsubfx) que separan el servidor de la gui, de ese modo se pueden crear diferentes guis, o son fácilmente portables a dssi o a lv2. Pero hay otros como bristol que la gui está amarrada a los algoritmos que generan el sonido, por lo tanto es más difícil portarlos a plugin.

Eso de las sesiones me gustó, ojala la cosa avance para mejor. Como decía, hay mucho software libre muy bueno, y muchas veces no se puede pedir más. En fin ojalá se resuelva todo esto de algún modo positivo para los músicos.
Subir
igny
#7 por igny el 08/12/2010
Saludos Igarrido. No puedo leer el artículo. Fallo mío?

Gracias.
Subir
vagar
#8 por vagar el 08/12/2010
A mí me funciona simplemente pinchando en el enlace de mi post. Prueba si no:

http://luisgarrido.users.sourceforge.net/

Al ser el último artículo publicado a esta fecha debería salir el primero.
Subir
anecochea
#9 por anecochea el 09/12/2010
Por cierto lgarrido déjame decirte que tu artículo es sumamente ilustrativo. Es el mejor, sino el único resumen del debate respecto de lo complejo que es desarrollar aplicaciones para hacer música en GNU/Linux. Desde una visión crítica pero sin ánimo de insultar a nadie.

-al margen- La otra vez veía que en un artículo titulado "Linux Suks" su autor exponía como los linuxeros no admitimos críticas constructivas ¿¿¿???

En fin, en todo caso, parece que los linuxeros usamos más el software por convicción (incluso tozudez), que por pragmatismo. Se admite, de hecho, ni siquiera tengo Windows en mi pc.

Pero quería resaltar un punto de tu exposición.
Dice en un punto que la especificaciones para plugins pueden seguir tres caminos:
- Carecer de Gui, solo dar especificaciones para manejar los controles y cada host se encarga de generar la gui - el camino de LADSPA
- Estar atado a una gui específica, que la programación de un plugin te ate al uso de una sola gui, que es la opción de los vst, ya sean nativos o emulados.
- Finalmente que la gui funcione con un programa externo, como son los dssi y los lv2 con gui.

Cada camino tiene sus pro y sus contras, pero no me queda claro el tercero. Dice que su desventaja es que el sistema responde menos, o consume más recursos. No me queda clara esta desventaja, será quizás si intentamos con sintes potentes como zynaddsubfx, porque los que hay no me han dado ese tipo de problemas. Además son pocos los parámetros que necesitamos que se ajusten en tiempo real desde la gui. Para mi lo deseable es que los parámetros en tiempo real se controlen con un controlador midi. Por ejemplo si usamos un filtro en un sintetizador y le movemos el cutoff mientras hacemos un solo (algo como lo que hace zawinul en el tema black market) en ese caso me gustaría conectar la perilla cutoff a algún potenciómetro programable de mi controlador midi, y si hablamos de secuencias, esos cambios también los puedes programar en un secuenciador. Lamentablemente no sé si las parámetros de los plugins lv2 se pueden controlar via midi.
Subir
vagar
#10 por vagar el 09/12/2010
Las GUI externas se comunican con el host mediante algún mecanismo de IPC (inter-process communication). Uno muy común es OSC, usado en DSSI y en LV2 external-ui.

Cuando tú pulsas un botón en una GUI de DSSI, la GUI construye un mensaje OSC, lo manda por un socket TCP, el host lo recibe, lo desempaqueta e interpreta el comando. Este proceso es muy rápido, pero siempre menos eficiente que si el host y la GUI residieran en el mismo espacio de memoria y se pudieran comunicar directamente por memoria compartida.

Para cuantificar si el efecto es o no apreciable a escala humana habría que hacer pruebas. Puedes probar a modificar un parámetro de algún DSSI por ejemplo en qtractor o Rosegarden con la GUI autogenerada y con la GUI propia del sinte, a ver si notas alguna diferencia en la respuesta. Yo tendería a esperar que no se note, porque cualquier GUI con su bucle de eventos ya introduce una latencia notable y un poquito más del tránsito por OSC probablemente no añada mucho.

El control y la automatización de parámetros a través de MIDI va por otro lado completamente distinto y depende de si el host la soporta. La GUI sólo responde visualmente a cambios via MIDI a posteriori y con baja prioridad, si el programa está bien hecho.

El artículo es un poco técnico, está pensado para una audiencia de desarrolladores inexpertos. Trato de ser objetivo. Como todo el mundo, yo tengo mi idea de cómo los demás deberían hacer las cosas. Pero, al contrario que mucha gente, no me frustro porque los demás no coincidan con mi opinión.
Subir
vagar
#11 por vagar el 09/12/2010
Corrección técnica al post anterior: el socket sería UDP, no TCP.
Subir
anecochea
#12 por anecochea el 11/12/2010
Por ejemplo, en la discusión en bristol se decía:

«the bristol audio engine, recieves all of its commands via the
Brighton GUI via a tcp link (IIRC), so it's quite different from Zyn.

But as a suggestion though, perhaps a 'wrapper' of sorts could be created?
Like, the DSSI wrapper would send commands to the brighton gui, which in
turn would send the commands to bristol? But I suspect that parameter
passing would be difficult to integrate?»
http://sourceforge.net/tracker/index.php?func=detail&aid=2728349&group_id=157415&atid=803737

en general reescribir todo bristol como dssi o lv2 debe ser sumamente complicado. Pero en general es bueno entender el funcionamiento de estos entornos para saber las posibilidades. Por lo menos yo creo que es posible, el funcionamiento es muy parecido.
Subir
anecochea
#13 por anecochea el 11/12/2010
Oye, aprovecho este hilo para enviar un PKGBUILD que hice, con zynaddsubfx en formato DSSI

http://www.megaupload.com/?d=KHC71E1P

Se trata de una característica de zynaddsubfx que se activa en tiempo de compilación, lamentablemente no viene en el paquete oficial de Archlinux. Espero que les guste.

En todo caso zyn (el fork lv2 de zynaddsubfx) es algo distinto, no se trata solo del engine, o los parámetros, además pretenden hacer cambios interesantes al funcionamiento de zynaddsubfx, como dice en su página:
«Project goals:

- Port ZynAddSubFX synth engines to LV2
- Fix some inherit issues preventing hard-realtime mode of operation, causing clicks sometimes (memory allocation/sleep in audio process context)
- Make synth engines reusable in source form
- Make all synth engines parameters controlable on the fly (as opposed to original "parameter change takes effect on next note on" strategy)
- Fix bugs found and try to propagate fixes to ZynAddSubFX»

sobre todo el punto cuatro "Hacer que todos los parámetros del engine sean controlables al vuelo", si consiguen eso sería filete -aunque la gui siga siendo horrorosa-
Subir
rajotore
#14 por rajotore el 17/12/2010
Pablo, eso que me dices de arranque dual, como se hace, disculpa mi ignorancia, pero de Linux, sé, lo que sabria un bebe de astronautica, como dije anteriormente, yo trabajo son sonar, y aparentemente, no funciona con Linux, pero si se puede arrancar de esa forma, haría la prueba, hasta acostumbrarme al Linux, yo no hago música electrónica, simplemente me gusta grabar los ensayos de mi amigos, y algunos me estan entusiasmando, para montar un estudio de grabación, y el programa que me gusta es el sonar, ya he probado algunos y este se lleva la banda, en cuanto a mi máquina, es un P4, core 2 quad, el windows xp sp 2, y la tarjeta es una delta 1010lt de M-audio, asi que les agradezco la ayuda.
Subir
vivaldis
#15 por vivaldis el 17/12/2010
Hola rajotore!! el arranque dual significa que puedes tener instalado dos sistemas operativos en tu ordenador, y puedes arrancar con el sistema que prefieras.Nos comentas que tienes instalado el winXP, puedes instalar una distribucion de linux, el ubuntu, no resulta muy complicado.Quizas un poco de particionamiento del disco duro, aunque ni eso, ubuntu es muy listo, reconozera tu disco duro y el mismo te va a proponer una instalacion.
Si instalas ubuntu, debes desfragmentar el win y luego instalar ubuntu.La otra opcion mas segura, es la de conseguir un LIVE CD, esto significa que arrancara el ordenador desde el CD pero sin instalarse en el disco duro, podras ver el escritorio , resulta comodo y ayuda a perder el miedo a linux.UBUNTU tiene la particularidad de ser LIVE-CD, primero lo cargas en memoria.
Ya somo miles de ubuntuneros, y la buena noticia es que existen muchos blogs que explican como instalar este maravillosos sistema operativo, no temas, no tienes que saber ni programacion , solo tienes que familiarizarte con el SO.En youtube hay bastentes videos explicando paso a paso como instalar ubuntu.Instalar ubuntu es mas facil que aprender el funcionamiento del antivirus.
salud y alegria.
Subir
Hilos similares
Nuevo post

Regístrate o para poder postear en este hilo