Archive for the 'audio setup / jack' Category

m-audio transit on Ubuntu 12.04

I freshly installed Ubuntu 12.04 and the ubuntustudio meta package. To get the m-audio transit card working I followed my older post (m-audio transit and ubuntu linux), i.e. installing madfuload which comes in the repository and adjust the udev-rules. They do not work the way they come installed.

So I used the content from corrected-madfu-rules and saved it as /etc/udev/rules.d/41-madfuload.rules. The according file in /lib/udev/rules.d I left untouched. The “41” instead of “42” is there because it reads “…Pick a number higher than the rules you want to override, and yours will be used. …” in /etc/udev/rules.d/README.

Something hang on my machine when trying the outcome so I rebooted the machine, although this might not be necessary for everybody. After that the sound card works as it used to.


jack-rack open/save dialog hangs

It seems that the binary packages of jack-rack (an effect rack for jack) of some (ubuntu) distributions are compiled without a certain library. If this is the case one can not save or load the jack-rack presets, a rather annoying feature. In the discussions of ubuntu bugs site launchpad I found the solution. It says: “In order for this thing to work, Jack Rack has to be compiled with libgnomeui-dev installed in the system. …”

a real-time kernel on a netbook

As I hoped it would be I can now give you some good news about using a real-time kernel on an ATOM platform. Basically: it works!

I bought an eeepc 1000h, one of those small laptops, which has an N270 chip from intel, 1GB of memory and a 160GB hard disc. I thought, this cannot have much less performance than my old laptop (see the About-page). I have an ubuntu 8.04 installed and usually run the linux-eeepc kernel.

To have good audio performance, I installed the real-time kernel from the 8.04  repositories and did what I wrote in the first post. Then I started the jack daemon with “/usr/bin/jackd -R -dalsa -dhw:0 -r48000 -p1024 -n2” and it worked quite well. I expected a lot of problems, but no. For some cutting, single track recording or trying bits and pieces it should be okay. I’ll give it a go and will try it out more. With an external audio card it could even be better…

So this is not bad. What the standard real-time installation still misses is a working  network. The camera and special keys do not do anything either. But I think, for the moment, this does not really matter.

m-audio transit and ubuntu linux

How to get an m-audio card to work? I’ll try to summarize my efforts for the installation procedure. Apart from my internal sound device I have an m-audio Transit, a cheap USB interface with 1 stereo in- and 1 output. Apparently more m-audio cards do not work with standard drivers. So one has to upload firmware with the tool madfuload. In version 1.2 it already comes with the binary firmware files for MobilePre, Ozone, Sonica and Transit. The usual

sudo make install

compiles the program and copies the files into system directories. It seems that the configuration files are not valid. A post in the english ubuntu-forum for 8.04 users and a another one for 7.10/7.04 users reveals the secret: The rules in  /etc/udev/rules.d/42-madfuload.rules are not correct and they have to be changed. Comment out all lines or change them to the appropriate values, I’ve put example files online for both ubuntu version (see pages 8.04/10.04 or 7.*), although I only tested it (successfully) on 8.04 and 10.04.

Then one restarts the udev process by

sudo /etc/init.d/udev restart

and then, when you plug the card in, a new alsa device is born: hw:1.

connecting JACK with qjackctl

In my post about the virtual midi keyboard I already mentioned qjackctl, a Qt-based user interface for the JACK demon. It comes with standard packages, my current version is 0.3.2 (website).

qjackctl – main window

qjacktl screenshot

Running the program for the first time, one should set up the demon, since it doesn’t know that it has to use the real-time kernel by default (it didn’t for me). Pressing Setup a window opens up where I enabled the real-time option. I let all other values as they were, Save and OK. Now we are ready to Start the demon. With the Messages button one can see JACK’s information which can be useful when something isn’t working.

Clicking on Connect one can show and hide a window where the internal connections are drawn. Audio and MIDI programs have channels for input and/or output which will show up in this window. After starting the demon with no other (JACK) program running, there are the card’s input and output ports with the name system. I have one each (internal card). One could mark both ports and click Connect and the microphone is wired to the speaker. This is not too exciting but this is a way to go. Better one runs some effect generator like creox which is a simple guitar effects generator (website).  Creox has to be put into play mode either by pressing space or through the Effector menu.

qjackctl – connections window

qjackctl screenshot connections

Using the voice might lead to interesting results. Now I can sing with echo or distortion!

Other features of the user interface will be topic of later posts.

ubuntu 8.04, real-time kernel, jack is working

Ubuntu 8.04 is out, and it’s out about a while ago. What I have working stable up till now is worth starting this blog. The programs I will talk about, I’ve been using with success on older versions of linux, but this time is different, because I made notes. So here we go:

After I installed the new version in its standard way, my internal sound card was working fine, I wouldn’t have liked to see (hear) anything else. One needs to be aware of a few things to get the jack audio connection kit (jack) to work properly. Live performance only works, if the audio demon has higher priorities than the usual programs. Running jack as root would work but it is an ugly solution. Apart from being a security problem by itself it requires all programs using jack to run as root as well.

Gathering information from the internet I ended up with the following: First, I installed the real-time kernel which comes with the standard packages. No compiling is needed, everything easy to do. Second, I added a user group with the name audio and added myself to that group. Then one has to allow that group certain limits. Add to /etc/security/limits.conf the lines

@audio - rtprio 99
@audio - memlock 250000
@audio - nice -10

which will do the job. The last bit, which I still do not understand completely, is a change in /etc/fstab. I added

shmfs /dev/shm tmpfs defaults 0 0

(When I know what this is about, I’ll tell you.) Now, whenever I boot the computer, I have to chose the real-time kernel. Than I start qjackctl and run the jack demon!

To be continued…

PS: There seems to be a problem related with the real-time kernel. Sometimes the login doesn’t work, the window manager (xfce) does not get started. Restarting the x-server (CTRL-ALT-BACKSPACE) the next login (most of the time) works. Running the normal kernel this problem doesn’t occur and I’m not yet sure, what does it cause.