MLA: Configuración de Jack

Jack

No me interesa JACK por su capacidad de trabajar con bajas latencias, sino por su capacidad para interconectar entradas y salidas de audio entre distintas aplicaciones. Esto quiere decir que para reproducir música sin usar filtrado, valdrían: alsa y mpd. Si queremos filtrado digital, necesitaremos: alsa, jack, brutefir, mpd.

No obstante, para reducir la libertad, haré por defecto la instalación incluyendo "jack".

He creado un paquete más ligero (con menos dependencias) que el que viene por defecto en la distribución.

Falta:

  • [X] Creación del usuario y grupo
  • [X] Añadir la línea adecuada a /opt/loadboot.sh
  • [ ] Puede ser necesario añadir lineas: jack_connect (pero eso tras la instalación de BruteFIR)

Conseguir buena latencia

No es crítico. Intentaré conseguir bajas latencias mediante la configuración. Por ello:

  • No se usará un "RT kernel" (un kernel compilado para su uso en tiempo real)
  • Se configurará la distribución para "RT scheduling"
    • "jackuser" tiene que tener privilegios para "RT scheduling"
    • jackd por defecto usa "-R" (intentar evitar el uso de -r)

Conseguir "RT scheduling" para un usuario, supone configurar su cuenta adecuadamente:

Sería necesario añadir todos los elementos necesarios para conseguir buena latencia.
https://help.ubuntu.com/community/UbuntuStudioPreparation

Si no usa PAM, puede recurrirse a la herramienta: http://www.gentoo-wiki.info/HOWTO_Jack#without_PAM Este tiene que ser el procedimiento preferido en esta distribución.

wget http://www.physics.adelaide.edu.au/~jwoithe/set_rlimits-1.2.0.tgz

http://distro.ibiblio.org/pub/linux/distributions/tinycorelinux/3.x/tcz/set_rlimits.tcz.info

Y en el fichero /etc/security/limits.conf:

@audio /usr/bin/jackd nice=-1 rtprio=85
@audio /usr/bin/mpd nice=-1 rtprio=84

USB

jackd -R -dalsa -dhw:1,0 -r48000 -p256 -n3 -s

Salvo que se diga otra cosa, el contenido de esta obra está bajo la licencia: Creative Commons Reconocimiento NoComercial CompartirIgual 2.5 España.