Linux AV » jack https://www.linuxav.net Una experiencia multimedia con GNU/Linux Wed, 14 Apr 2010 14:17:19 +0000 http://wordpress.org/?v=2.8.4 en hourly 1 QjackCtl 0.3.6 https://www.linuxav.net/content/2010/03/qjackctl-0-3-6/ https://www.linuxav.net/content/2010/03/qjackctl-0-3-6/#comments Thu, 11 Mar 2010 09:55:49 +0000 ismael https://www.linuxav.net/?p=795 Rui Nuno anuncia la revisión 0.3.6 de QjackCtl. Si existe una aplicación imprescindible en el arsenal del creador de audio con Linux, ésa es ésta. Permite realizar todas las conexiones de audio con el servidor JACK y MIDI tanto con JACK como con ALSA de manera gráfica y muy intuitiva. Recuerda que de otra forma serías esclavo de la línea de comandos, plato de poco gusto para quien simplemente quiere meter algo de ruido con su sistema.


qjackctl

La mayor novedad es el suporte D-Bus, incluyendo acciones de la interfaz de usuario. Puedes ahora incluso crear atajos de teclado desde tu entorno de escritorio para las acciones más comunes.

Puedes bajarte las fuentes y compilar a tu gusto o descargar paquetes binarios para openSUSE 11.2, Ubuntu 8.04 y Ubuntu 9.10. Probablemente estará pronto empaquetado para tu distribución favorita.

]]>
https://www.linuxav.net/content/2010/03/qjackctl-0-3-6/feed/ 3
Non DAW y Non Mixer 1.0.0 https://www.linuxav.net/content/2010/03/non-daw-y-non-mixer-1-0-0/ https://www.linuxav.net/content/2010/03/non-daw-y-non-mixer-1-0-0/#comments Wed, 03 Mar 2010 09:37:30 +0000 ismael https://www.linuxav.net/?p=784 Non DAW es una estación de trabajo con audio digital potente, fiable, rápida y modular, liberada bajo la licencia GPL. Utiliza el sistema de conexiones de audio JACK para comunicarse con el resto de procesos sonoros y el toolkit de interfaz de usuario FLTK para una lo más rápida y ligera posible.


non daw

Non DAW no es un editor de ondas, no es un rebanador de ritmos, no es un sistema de síntesis granular. No es un clon de cualquier otra DAW propietaria que conozcas. No es la aplicación que va a destruir a inserta el nombre de tu aplicación de audio favorita aquí. Pero no es una aplicación restrictiva, no tiene límites, no es una DAW monolítica con mezclado interno o ecualización por DSP. Non DAW sólo quiere ser una aplicación más en tu caja de herramientas de audio basada en Linux.

Se libera ahora la versión 1.0.0 de Non DAW y Non Mixer. Se han saltado algunos números de versión para llegar a una que pueda sugerir que la aplicación ya es lo suficientemente estable para un entorno en producción.

El mayor desarrollo es la inclusión de Non Mixer, la cual completa la triada Non y debería servir para cubrir las necesidades de muchos, en formas que los desarrolladores no pueden ni siquiera imaginar —afirman que cubre de sobra las suyas—.

Non Mixer es una aplicación de mezcla independiente y modular para JACK. Aloja distintos módulos internos, incluyendo uno que sopota plugins LADSPA. Todos los parámetros pueden ser controlados por la interfaz de usuario o externamente vía señales de control de voltaje —incluye un programa pasarela MIDI a CV—. Su característica más notable es que cada banda de audio es un cliente JACK separado, lo que permite fantásticas posibilidades de procesado en paralelo. Gracias al uso del toolkit ligero FLTK, no hay problema en correr cientos de bandas. El soporte para plugins DSSI estará listo pronto.

]]>
https://www.linuxav.net/content/2010/03/non-daw-y-non-mixer-1-0-0/feed/ 1
Rakarrack https://www.linuxav.net/content/2010/02/rakarrack/ https://www.linuxav.net/content/2010/02/rakarrack/#comments Fri, 05 Feb 2010 09:41:01 +0000 ismael https://www.linuxav.net/?p=766 Rakarrack es un procesador multiefectos con multitud de características que emula una pedalera de efectos para guitarra. Los efectos incluyen compresor, puerta de ruido, ecualizador gráfico, ecualizador paramétrico, flanger, chorus, eco incluyendo reproducción invertida, retardo musical, reverb, phaser digital, phaser analógico, Wah-wah, Alien-wah, harmonizador y tres módulos flexibles de distorsión que incluyen modulación en sub octavas y sobre octava sucia —sea lo que sea lo que signifique eso—. La mayor parte del motor de efectos está construido a partir de los módulos que es posible encontrar en el mejor sintetizador software para Linux, el famoso ZynAddSubFX. Sin embargo, tanto los presets como la interfaz de usuario han sido optimizadas para su uso con guitarras. Dado que procesa señales en estéreo, puede valer también para otros instrumentos musicales o incluso voces. Rakarrack ha sido diseñado por supuesto para distribuciones Linux utilizando JACK.


rakarrack

En Rakarrack andan metidos maestros como Daniel Vidal, Carlos Pino o el patriarca del audio en Linux Josep Andreu alias holborn. De ahí que el resultado sea tan colosal.

]]>
https://www.linuxav.net/content/2010/02/rakarrack/feed/ 2
jack_capture https://www.linuxav.net/content/2010/02/jack_capture/ https://www.linuxav.net/content/2010/02/jack_capture/#comments Tue, 02 Feb 2010 09:41:38 +0000 ismael https://www.linuxav.net/?p=754 jack_capture es una aplicación que permite grabar ficheros de audio con JACK. La forma normal de utilizarlo es simplemente escribir:

  $ jack_capture
  

En una terminal, sin opciones de línea de comandos algunas. Eso grabará la salida de audio de JACK que se escucha por tus altavoces en un fichero WAV estéreo.


jack el destripador

Algunas características interesantes de jack_capture:

  • Nombres de fichero auto generados únicos y legibles por el usuario humano.
  • Un eventual límite de 4 GB en el sistema de ficheros se gestiona escribiendo nuevos ficheros tan pronto se alcanza ese límite.
  • Soporta todos los formatos de fichero a su vez soportados por sndfile; WAV, AIFF, OGG, FLAC, AU, etc.
  • Soporta MP3 gracias a liblame.
  • Permite escribir información a 16 bits en crudo en la salida estándar.
  • Medidor de consola propio, más la opción de iniciar y detener automáticamente el medidor para JACK Meterbridge. Las conexiones de puertos con Meterbridge se realizan automáticamente.
  • jack_capture puede conectarse a cualquier puerto JACK de entrada o salida. Al conectarse a un puerto de entrada o escribible, jack_capture monitoriza qué puertos están conectados a esa entrada y asegura que jack_capture se conectará a esos mismos puertos. En otras palabras, jack_capture reconecta sus puertos automáticamente durante la grabación en caso de cambios. Conveniente dado que simplemente puedes iniciar jack_capture primero, y el resto de aplicaciones de audio según se van necesitando.
  • No hay límite en el número de puertos al que jack_capture puede conectarse. Permite incluso comodines tipo:
    jack_capture --port "*"
  • El tamaño de los buffers se ajusta automáticamente durante la ejecución para prevenir pérdidas de datos o el alojamiento de cantidades de memoria demasiado grandes.
  • El hijo de ejecución para la escritura en disco cambia su prioridad según va siendo necesario.
  • Mejor rendimiento durante la grabación incluso que Ardour, en realidad esperado dado que escribe todos los canales en un solo fichero y no en distintas pistas.
  • Probado: No hay problemas en escribir 256 canales de 32 bits de audio en un disco duro local.

Sin duda se convertirá en una de las aplicaciones pequeñas favoritas de los productores de audio que utilizan Linux.

En la foto, James Kenneth Stephen, el sospechoso de ser Jack el Destripador. No tiene nada que ver con el artículo, pero mola.

]]>
https://www.linuxav.net/content/2010/02/jack_capture/feed/ 1
JACK 1.9.4 https://www.linuxav.net/content/2009/11/jack-1-9-4/ https://www.linuxav.net/content/2009/11/jack-1-9-4/#comments Thu, 26 Nov 2009 13:04:07 +0000 ismael https://www.linuxav.net/?p=672 Incansables. Ha sido liberado JACK 1.9.4. Se continúa así la serie JACK2. JACK 1.9.4 sincroniza su API con la de JACK 0.118.0 recientemente liberada. Se arreglan multitud de errores, pero sobre todo se mejora muchísimo el soporte a OS X y a los dispositivos de audio con drivers CoreAudio. La lista de mejoras es abrumadora.

]]>
https://www.linuxav.net/content/2009/11/jack-1-9-4/feed/ 0
Ardour 2.8.4 https://www.linuxav.net/content/2009/11/ardour-2-8-4/ https://www.linuxav.net/content/2009/11/ardour-2-8-4/#comments Wed, 18 Nov 2009 15:27:43 +0000 ismael https://www.linuxav.net/?p=659 Ardour 2.8.4 ha sido lanzado. En principio el último mes ha estado ocupado en la resolución de bugs pero, de acuerdo con el propio Paul Davis, han sido añadidas algunas nuevas características, para no tenernos aburridos a todos. En particular, la actualización es crítica para quienes utilicen ficheros en formato BTW, ya que ha sido reparado un error crítico en la generación de cabeceras para dichos ficheros. Será la última versión de la serie 2.x antes de que se anuncie la versión alfa 3.0, a menos, por supuesto, que sea necesario reparar nuevos errores críticos.

ardour 2.8.4 linux

Éstas son las nuevas características de Ardour 2.8.4:

  • El gestor de plugins incorpora ahora una opción hide que permite controlar cuáles van a ser mostrados en los menúes.
  • Se añade un nuevo menú para los plugins que los agrupa por categoría, como complemento a la agrupación por autor que ya existía.
  • Cuando se activa autoplay, la reproducción comenzará tan pronto se defina o se cambie una selección de rango.
  • Se añade la nueva acción ToggleRollMaybe, que permite dejar en funcionamiento la reproducción de rangos o loops sin detener el transporte.
  • La interfaz PortInsert incorpora ahora una comprobación a modo de ping de la latencia hardware. Esto permite medir con precisión dicha latencia, de manera que JACK la compense automáticamente. Es posible ahora utilizar procesado hardware externo y conseguir una compensación de latencia a nivel de muestra dentro de Ardour.
  • Se incorpora también un nuevo editor de capas en las regiones. Facilita una forma sencilla de modificar capas de regiones en una localización dada. Se mostrará en el menú únicamente si hay más de una región bajo el puntero del ratón. Se trata de una excelente herramienta para la composición y grabación de loops y para el overdub en general.

Visita el sitio de Ardour para una lista completa de errores reparados, mejoras, y otra información específica de la versión Mac OS X. Captura de Herb.

]]>
https://www.linuxav.net/content/2009/11/ardour-2-8-4/feed/ 3
JACK 0.118.0 https://www.linuxav.net/content/2009/11/jack-0-118-0/ https://www.linuxav.net/content/2009/11/jack-0-118-0/#comments Mon, 16 Nov 2009 19:12:10 +0000 ismael https://www.linuxav.net/?p=656 JACK 0.117.0 ha sido lanzado. Hay un añadido a la API, algunas mejoras significativas en la implementación de netjack1, y cambios importantes en la línea de comandos que afectarían a las aplicaciones de interfaz gráfica de JACK, como la popularísima qjackctl.

jack linux

  • El servidor jackd ahora es ejecutado en modo realtime por defecto, de ahí que el uso de -R ya no es necesario. Utilícese ahora -L para desactivar el modo realtime.
  • Si se está construyendo JACK desde las fuentes, la configuración fallará si estás intentando instalar JACK en paralelo con una versión empaquetada existente.
  • Hay ahora comprobaciones útiles —dependientes de la plataforma— en tiempo de ejecución. Por ejemplo, se comprueba ahora si es posible la ejecución en modo realtime, si el bloqueo de memoria está permitido y no limitado, y si es posible el uso del TSC como fuente del reloj. Si cualquier comprobación falla, se presentará la información apropiada y el servidor saldrá con un estado de error, a no ser que se ejecute con –no-sanity-checks ó -N. Hay aún espacio para la mejora, siendo el objetivo que el servidor sea capaz de detectar si va a poder ser ejecutado provechosamente para el usuario.
  • Se mejora el diseño interno de las utilidades alsa_io. También se hace configurable la calidad de remuestreo vía libsamplerate, lo que permite reducir el consumo de CPU.
  • Se añaden distintas mejoras a netjack1, por ejemplo opciones de línea de comandos más consistentes, y mejor soporte a las configuraciones de firewall.
  • Se añade a la API la función jack_on_info_shutdown(), similar a jack_on_shutdown() pero proporcionando al cliente información sobre los motivos del fallo. Esto mejora la sensación de que en OS X hay motivos para el cierre del servidor que no tienen nada que ver con el comportamiento del cliente.

Se está trabajando también en un sistema para la web que permitirá la conectividad netjack1 en redes de banda ancha.

La versión 0.118.0, lanzada apenas dos días después de la anterior, resuelve un inconveniente pasado por alto y garantiza la compatibilidad entre JACK 1 y JACK 2. La única diferencia es el reemplazo del parámetro de línea de comandos -L —sinónimo de –no-realtime— por -r, dado que -L ya está en uso en JACK 2. Se pide de las distribuciones que no empaqueten 0.117.0, dado que no estaría garantizado que QJackctl y otras herramientas similares dispongan de un conjunto común de argumentos para la línea de comandos.

Visto en JACK. Descarga la última versión. Foto de wstryder.

]]>
https://www.linuxav.net/content/2009/11/jack-0-118-0/feed/ 0
Compila tu propio kernel realtime en Debian y Ubuntu https://www.linuxav.net/content/2009/05/compila-tu-propio-kernel-realtime-en-debian-y-ubuntu/ https://www.linuxav.net/content/2009/05/compila-tu-propio-kernel-realtime-en-debian-y-ubuntu/#comments Wed, 27 May 2009 09:20:30 +0000 ismael https://www.linuxav.net/?p=534 El uso de un kernel modificado con los parches realtime es muy adecuado para sistemas de escritorio, y cabe decir que imprescindible para el creativo multimedia, necesitado de bajas latencias y de la mejor respuesta. Por suerte, hay un gran equipo de gente trabajando en los parches necesarios para transformar un kernel estándar Linux en uno que implemente multitarea apropiativa. Es decir, aquel que permite definir una serie de tareas que van a tener permitido acaparar el tiempo de CPU todo lo que necesiten para asegurar un mejor funcionamiento.

En particular, en el trabajo con audio, permitir un funcionamiento en tiempo real o apropiativo del servidor JACK facilita las latencias más bajas y la ausencia total de artificios en el audio. En el momento en el que JACK necesite la CPU, ninguna otra tarea en el sistema va a competir por ella. Cuando tú tienes el paquete de Donuts en la mano, tus amigos sólo comen los que quieres que coman.

Existe la posibilidad de acceder a un kernel realtime empaquetado en la mayor parte de las distribuciones más populares. Esta explicación te permite disponer de la ultimísima versión del mismo en tu Debian o Ubuntu, sin que necesites esperar a que alguien lo compile y lo empaquete por ti.

Requisitos previos

Asegúrate de que tu usuario es miembro del grupo src ejecutando el comando groups. Si src no aparece entre los grupos listados ejecuta como root:

  # adduser ismael src
  

Sustituye por supuesto ismael por tu nombre de usuario en tu sistema. Ahora reinicia la sesión y vuelve a ejecutar groups para comprobarlo. Esto es necesario para poder trabajar bajo el directorio /usr/src.

  $ groups ismael
  ismael : ismael dialout cdrom floppy audio src video plugdev netdev
  

Si quieres estar pendiente de las novedades en el soporte realtime al kernel Linux, deberías estar suscrito a la lista de correo linux-rt-users en vger.kernel.org. Simplemente envía un mensaje de correo sin asunto a [email protected] con el siguiente texto en el cuerpo:

  subscribe linux-rt-users
  

Recibirás mensajes de progreso y confirmación, simplemente sigue el proceso sugerido.

Una vez suscrito, las novedades en la serie preempt-rt del kernel son anunciadas en mensajes de correo recibidos de Thomas Gleixner con un asunto como éste.

  [Announce] 2.6.29.4-rt16
  

Te resultará sencillo filtrar estos mensajes, por ejemplo moviéndolos a una mbox separada o marcándolos con una estrella en Gmail. Explicar la forma de hacer esto queda fuera del alcance de este artículo.

El cuerpo del mensaje contendrá información como ésta.

  We are pleased to announce the next update to our new preempt-rt
  series.

  - rebase to 2.6.29.4 (no conflicts)
  - futex updates (tglx, dvhart)

  Download locations:

  http://rt.et.redhat.com/download/
  http://www.kernel.org/pub/linux/kernel/projects/rt/

  Information on the RT patch can be found at:

  http://rt.wiki.kernel.org/content/Main_Page

  to build the 2.6.29.4-rt16 tree, the following patches should be
  applied:

  http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.29.4.tar.bz2
  http://www.kernel.org/pub/linux/kernel/projects/rt/patch-2.6.29.4-rt16.bz2

  The broken out patches are also available at the same download
  locations.

  Enjoy !

  tglx

  --
  To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
  the body of a message to [email protected]
  More majordomo info at  http://vger.kernel.org/majordomo-info.html
  

Descarga y parchea el kernel

Primero descarga el kernel sobre el que hay que aplicar los parches, en nuestro caso el 2.6.29.4.

  $ cd /usr/src
  $ wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.29.4.tar.bz2
  

Y ahora el parche realtime que se está anunciando con el mensaje de correo.

  $ wget http://www.kernel.org/pub/linux/kernel/projects/rt/patch-2.6.29.4-rt16.bz2
  

O bien visita esa URL y mira qué hay de nuevo. Para cuando vayas a compilar, una versión más reciente del parche podría estar disponible.

Descomprime ahora las fuentes del kernel.

  $ tar xvfj linux-2.6.29.4.tar.bz2
  

Y aplica el parche realtime.

  $ cd linux-2.6.29.4
  $ bzcat ../patch-2.6.29.4-rt16.bz2 | patch -p1
  

Configura y compila el kernel

Procede ahora a configurar el kernel.

  $ make clean && make mrproper
  $ cp /boot/config-`uname -r` .config
  $ make menuconfig
  

Visita ahora la opción de menú Processor type and features:

Asegúrate de que High Resolution Timer Support y Symmetric multi-processing support están activados.

En Processor family, elige la CPU de tu sistema.

En Preemption Mode, elige Complete Preemption (Real-Time).

En Timer frequency, selecciona 1000 HZ.

Selecciona Exit y contesta Yes a la pregunta sobre si salvar la configuración del kernel.

Es momento de iniciar la compilación. A la versión del kernel ya le habrá sido añadida la del parche realtime, y como revisión utilizamos el nombre de nuestra máquina —recuerda que hemos elegido nuestra CPU y el kernel podría no ser utilizable en otros ordenadores— y una marca temporal. Construirás la imagen del kernel y el correspondiente paquete con los ficheros de cabecera, necesarios más tarde para compilar tus módulos. Ejecuta make-kpkg, hazte un café, o dos, y vuelve cuando haya terminado.

  $ make-kpkg clean
  $ make-kpkg --rootcmd fakeroot --initrd --revision `hostname -s`~`date +%Y%m%d` kernel_image kernel_headers
  

Estás ahora haciendo surf sobre la cresta de peligrosas olas. No hay ninguna garantía de que todo va a funcionar bien. De hecho, lo que se espera de ti ahora es que reportes cualquier inconveniente a la lista de correo. El placer de estar siendo el primero en correr algo que a los usuarios de Ubuntu Studio les quedan meses para disfrutar, por supuesto no te lo quita nadie.

Utiliza Cyclictest para medir la respuesta de tu sistema con temporizadores de alta resolución y baja latencia. Deja tus resultados junto con la configuración de tu máquina y la versión del kernel que estás usando en los comentarios.

Sólo para gurús ;)

Si eres usuario de Debian inestable, podrías haber notado que compilar un kernel utilizable se ha complicado en los últimos tiempos, después de las últimas modificaciones de Manoj Srivastava al paquete kernel-package. Resumiendo, Manoj asume ahora que cada empaquetador podría desear elegir su propia forma de crear la imagen initrd con los módulos necesarios para el arranque de la máquina. No se presume si por defecto se va a utilizar initramfs o yaird, o cualquier otra aplicación. De ahí que aunque especifiques –initrd como argumento a make-kpkg, aquella imagen no va a ser creada y te expones a un kernel panic durante el arranque con el nuevo núcleo.

La solución es copiar uno de los scripts de ejemplo proporcionados con el paquete kernel-package al directorio que aloja aquellos a ser ejecutados durante la post instalación del kernel. Por si el update-grub final no se ejecutase en el momento adecuado, es decir, después de que la imagen initrd haya sido creada, copiaremos allí también el ejecutable, modificando los nombres de fichero para elegir su orden de ejecución.

  # cp /usr/share/kernel-package/examples/etc/kernel/postinst.d/initramfs /etc/kernel/postinst.d/40initramfs
  # cp /usr/sbin/update-grub /etc/kernel/postinst.d/99update-grub
  

Ah, si la compilación falla por la ausencia del fichero zlib.h, simplemente instala el paquete zlib1g-dev y prueba de nuevo.

Buenas noches y buena suerte.

]]>
https://www.linuxav.net/content/2009/05/compila-tu-propio-kernel-realtime-en-debian-y-ubuntu/feed/ 18
JACK 1.9.1, preparando JACK2 https://www.linuxav.net/content/2009/02/jack-191-preparando-jack2/ https://www.linuxav.net/content/2009/02/jack-191-preparando-jack2/#comments Tue, 24 Feb 2009 09:02:06 +0000 ismael https://www.linuxav.net/?p=372 Jackdmp es una versión en C++ del servidor de audio de baja latencia JACK para máquinas monoprocesador y multiprocesador. Es una implementación completamente nueva de las características nucleares del servidor JACK que pretende eliminar todas las limitaciones del diseño actual. El sistema de activación ha sido cambiado por un modelo de flujo de datos y técnicas de programación libres de bloqueos para el acceso a los grafos de audio, dando como resultado un sistema a la vez más dinámico y más robusto.

El futuro JACK2 va a estar basado en el código C++ de jackdmp. En el momento actual, JACK 1.9.1 es «como se debe conocer» a jackdmp, y el resultado de un gran trabajo de desarrollo comenzado tras LAC 2008.

Qué es nuevo:

  • Multitud de mejoras y errores reparados en NetJack2, ahora más fiable que nunca.
  • Sincroniza el código base de JACK2 con los cambios recientes en la API de JACK1, en particular funciones relacionadas con hilos de ejecución, así como en la gestión del núcleo ALSA.
  • Otras muchas mejoras y reparaciones de errores.

Visto en JACK 1.9.1 released publicado en JACK.

]]>
https://www.linuxav.net/content/2009/02/jack-191-preparando-jack2/feed/ 0
Jconv, un procesador de convolución para JACK https://www.linuxav.net/content/2009/02/jconv-un-procesador-de-convolucion-para-jack/ https://www.linuxav.net/content/2009/02/jconv-un-procesador-de-convolucion-para-jack/#comments Wed, 18 Feb 2009 07:08:28 +0000 ismael https://www.linuxav.net/?p=364 Cualquier estudiante de cálculo sabe de lo pesada que resulta la construcción de un algoritmo de convolución. En particular es necesario computar la respuesta a un proceso de audio en todas las componentes de frecuencia de la señal original, y recomponer después la señal procesada. Hace ya muchos años que Sound Forge para Windows incorpora un maravilloso procesador de convolución basado en DirectX, pero éste había de ser utilizado offline.

Jconv es un motor de convolución para JACK, basado en convolución FFT y que utiliza tamaños de partición no uniformes; más pequeños al comienzo del algoritmo y creciendo en adelante hasta el tamaño más eficiente. Puede procesar audio sin latencia alguna con consumos de CPU moderados. Jconv utiliza el motor de convolución diseñado para Aella, una aplicación procesadora de reverb basada también en convolución. El cálculo se reparte entre cinco hilos de ejecución, uno por cada tamaño de partición y siendo ejecutados a prioridades justo por debajo de la del proceso JACK. El motor se convertirá en una librería separada tan pronto el autor encuentre el tiempo necesario para escribir la documentación.

Visto en Linux Audio publicado en Kokkini Zita. Gracias, Diego.

]]>
https://www.linuxav.net/content/2009/02/jconv-un-procesador-de-convolucion-para-jack/feed/ 5