Posts Tagged 'jack audio connection kit'

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.

Advertisements

a live looping concert with open source software only

So this is a comment on the first concert I did together with a friend, using live looping software (sooperlooper) and an effect program (creox) to connect a microphone. Well, to a cheap stereo audio interface (m-audio transit) which got its input from a little DJ mixer (as a preamp with band filters) which had the mic plugged in. The output of everything (the live voice and the loops) left through one stereo output into the master mixer. My friend entered into it with an electric bass guitar (with echo). A forty five minute “gig” without any major problems. I’ll tell you how I connected it, the problems I ran into and some tips and tricks.

Continue reading ‘a live looping concert with open source software only’

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

./configure
make
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.