Slackware 14: JACK Installation Notes

I was trying to set up a digital audio workstation using Ardour on Slackware Linux and the professional sound server JACK (JACK Audio Connection Kit), the latter will  basically allow us to manipulate streams between audio applications in a pattern that would redirect the output of App 1 to the input of App 2 ( a bit  à la ReWire under Windows if you’ve ever used Ableton or Reason).

A more thorough definition would be (snatched off jackaudio.org)

JACK is system for handling real-time, low latency audio (and MIDI). It runs on GNU/Linux, Solaris, FreeBSD, OS X and Windows (and can be ported to other POSIX-conformant platforms). It can connect a number of different applications to an audio device, as well as allowing them to share audio between themselves. Its clients can run in their own processes (ie. as normal applications), or can they can run within the JACK server (ie. as a “plugin”). JACK also has support for distributing audio processing across a network, both fast & reliable LANs as well as slower, less reliable WANs.

Here are some useful tips, hope someone will benefit from them!

First of all I’ve grabbed  jack-audio-connection and its Qt front-end qjackctl then I had to create limits.conf and write the following lines:

vim /etc/security/limits.conf
@audio          -  rtprio                   99
@audio          -  nice                    -10
@audio          -  memlock             unlimited

(The “unlimited” allocated memory could be replaced by half the RAM size)

Next, and since JACK needs real time privileges, on Slackware a workaround is available by executing the following command:

setcap cap_ipc_lock,cap_sys_nice=ep /usr/bin/jackd

or

setcap cap_ipc_lock,cap_sys_nice=ep /usr/bin/qjackctl

It depends whether you run jackd or qjackctl

Add your normal user to the “audio” group by executing

usermod -G -a audio “yourusename”

 

Adjust your kernel (from the Gentoo wiki:)

* General setup  --->
      Control Group Support --->
            [ ] Group CPU scheduler

* Processor types and features  --->
      Preemption Model (Preemptible Kernel (Low-Latency Desktop))  
      Timer frequency (1000Hz)

Log out and log back in, should work fine.
Links:

Real-time audio workstation on Slackware

About these ads

Posted on November 28, 2012, in Computing and tagged , . Bookmark the permalink. 1 Comment.

  1. Thanks!! This fixed a problem I’ve spent about 6 hours looking into.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 63 other followers

%d bloggers like this: