jump to navigation

Dream a little dream… of Debian February 13, 2008

Posted by oktyabr in debian, games, graphics, hacking, hardware, linux, opinions, personal, realtime, screenshots, software.
Tags: , , , , , , , ,
1 comment so far


Some of you might have noticed I haven’t posted much on the linux front (or any other for that matter!) for awhile… This post is likely to be the first of several in a related series and the first to explain why I haven’t posted and why I am again now!

To make a long story short I moved across the state, built a new computer and ended up using wireless as my only connection to the net for the very first time…


Ubuntu Studio: An interview with Project Manager Cory Kontros January 27, 2007

Posted by oktyabr in audio, debian, digg, linux, make music, personal, realtime, ubuntu.

I’ve known about, written about and even participated in the Ubuntu Studio project (in a limited capacity) in the past but had pretty much given it up as a project with good ideas but still a long way from any sort of maturity or release as a “distro” in it’s own right… until a link on Digg.com appeared quite recently. It seems that the project has found new momentum with new leadership and I thought I would take a closer look for myself.


Kubuntu 7.04 “Feisty Fawn” Herd 1: realtime test drive! December 8, 2006

Posted by oktyabr in audio, kde, linux, realtime, ubuntu.
add a comment

So what’s this sexy new *buntu have under the hood?

More importantly (at least to me!) is it any good for multimedia?


Dyne:bolic 2.3 dhoruba review December 5, 2006

Posted by oktyabr in audio, digg, distro reviews, linux, make music, opinions, personal, realtime, screenshots.
add a comment

Today I’m going to (try to) review Dyne:bolic 2.3, code named “Dhoruba Solid State”!

Dyne:bolic 2.3 is a “live CD” meaning that you can run it anywhere on any machine that has a CD-ROM drive. The computer doesn’t even need a harddrive to run a “live” CD! But best of all this is a live “multimedia” distro!


64 Studio 1.0 “Olympic” released December 2, 2006

Posted by oktyabr in audio, debian, distro reviews, linux, realtime.
add a comment

After mutilating my most recent install, an early 0.94 release dist-upgraded to 0.99 and then morphed into something completely different
with a liberal dose of debian “unstable” and even (GASP!) “experimental” I thought the release of “Olympic” couldn’t have come at a better time! Downloaded the single ISO (I run the x86 version instead of the 64bit due to my fondness of flash based websites ~rolls eyes~) and burned successfully, I popped it in the drive in my primary machine and gave it a whirl…


Kanotix rt-preempt custom kernel February 20, 2006

Posted by oktyabr in debian, hacking, linux, realtime.

I’ve got a rt-preempt kernel of my own running now! Still needs some tweaking but all my sound devices work, as does internet, graphics, etc. and I’m able to get 2.9ms latency in qjackctl without xruns (44100Hz, period = 64 frames, buffer = 2 periods).

Here is roughly how I did it in case anyone else wants to try and/or compare notes (if I’ve got something wrong or forgotten something please post and correct me! I’m still a n00b at kernel building.):

1) Download the latest vanilla kernel source from: http://www.kernel.org/pub/linux/kernel/v2.6/ In my case this was linux-2.6.15.tar.bz2

2)Switch to root, move the kernel source to /usr/src and unpack it there with tar jxf linux-2.6.15.tar.bz2

3)Remove old symbolic link “linux” and replace it with a new one going to your new directory and then cd to it:
rm linux
ln -s linux-2.6.15 linux
cd linux

4)Fire up your favorite text editor and edit the file “Makefile”. The line that says “EXTRAVERSION=” simply add what you like to the end of it like your name, whatever. NO capital letters and NO underscores! Save the file.

5) Download the latest *matching* rt-preempt patch from http://people.redhat.com/mingo/realtime-preempt/ (matching means patch 2.6.15-rt16 in my case) to your new directory:
wget http://people.redhat.com/mingo/realtime-preempt/patch-2.6.15-rt16 (version will change over time)

6) Switch to the new kernel source directory and patch it:
cd linux-2.6.15
patch -p1

*Not really sure what to do here, what to answer ‘yes’ to etc. so I answered “n” or chose the default option on the patch questions EXCEPT where it wants to know what level of PREEMPT you want… then you entire “4” for ‘complete preemption’.

7) Now I copied the config file from my current kernel (do ls /boot to see what to enter here) to use as a config for the new one:
cp /boot/config- .config

8) Run make menuconfig for console version or make xconfig (may require deps) for the graphical version of the configuration utility. Trim up the kernel by removing any drivers you are *sure* you don’t need. If in doubt, leave it. Don’t enable anything that you don’t need. This may take some experimentation to get working right. I’m sure there is a more ‘foolproof’ way of doing this but I don’t know what it is… yet. “Save” your new config when done.

9)Build the kernel, headers and modules:

make-kpkg clean
make-kpkg modules_clean
make-kpkg kernel_image kernel_headers modules_image

This will take quite awhile depending on the power of your machine… On my AMD64+3500 it took just about 30 minutes. NOTE: “make-kpkg modules_clean” is something I’ve read in other tutorials but it gave me an error and suggested I could fix it by running kpkg once in that directory… I skipped it and went to the next line. Maybe on the next build of this kernel it will work…

If you complete all of the above with no errors you should be able to cd back to /usr/src (cd ../) and you should find some new .deb packages there for the kernel, any modules you built, and the kernel headers. Install them as you would any .debs (I use dpkg -i name_of_package.deb) and reboot. In my Kanotix this kernel was automatically chosen as the default and identified itself simply as “Debian 2.6.15”

NOTES: My graphics was shot when I first booted into this new kernel, probably because I either missed an option in menuconfig or because I had a messed up xorg.conf from an earlier kernel. EIther way it was easily fixed by switching to root and running the scripts found in /usr/local/bin:
(I have an nvidia card! This won’t work if YOU don’t have an nvidia card!)

FINALLY I installed realtime-lsm with the following commands (might require deps on your machine):

apt-get install module-assistant
m-a update
m-a prepare
m-a get realtime-lsm
m-a get realtime-lsm-source
m-a build realtime-lsm-source
m-a install realtime-lsm
/sbin/modprobe realtime gid=29
/etc/init.d/realtime start

Dapper preemptive kernel and rtlimits February 20, 2006

Posted by oktyabr in audio, debian, linux, realtime, ubuntu.

Discovered that the Dapper 6.04 “flight 3” kernels, including the one on the iso report the following:

#cat /boot/config-2.6.15-12-386 | grep PREEMPT


This is something that has been missing from the current “breezy” kernels and seems to suggest that Ubuntu will be offering a true preemptive kernel that should improve desktop latency for realtime apps like jackd and clients!

Abandoning “realtime-lsm” for “rtlimits”, which I first read about at Jonathan Woithe’s Home page has made configuring realtime access on a user/group level basis as well as per invidual application very easy and most importantly, FAST!

Refer to his page on “set_rtlimits” for a handly little app that works quite well to ease this process: http://tapas.affenbande.org/?page_id=22 *updated package at his home page*

This has allowed me to get much better performance than when using ‘realtime-lsm’ on a breezy kernel… 5.8ms in KDE and 2.9ms in a conservative fluxbox or even xfce4 enviroment under load with zero xruns and cpu-dsp usage (as reported by qjackctl and ardour) usually no higher than 10-11%!

Very nice! Ubuntu as a music creation enviroment. /me is in bliss

Ubuntu Dapper Flight 3 realtime Part 2 February 20, 2006

Posted by oktyabr in audio, debian, linux, realtime, ubuntu.
add a comment

Welp, realtime-lsm-module proved not to actually exist so I ended up building it manually with module-assistant (gotta love debian!)

I also did the following with no errors:

sudo /sbin/modprobe realtime gid=29
sudo /etc/init.d/realtime start

Now firing up qjackctl as root and enabling realtime let’s me get as low as I want (2.9ms) with no xruns whatsoever, even under a load, but as user with realtime enabled I can’t get below 20ms without xruns… at least in KDE! Even with a respectable amount of latency I still get at least one xrun and a distinctive POP! out of my speakers whenever I make a connection in qjackctl… Something is still missing… perhaps the preemptive patch in the ubuntu kernel? Sooo… how about something other than KDE?

sudo apt-get install fluxbox (installed suggested too)

Restart X, login to a fluxbox session and what do you know! I’ve been running qjackctl as user at 5.8ms with ZERO xruns… at 20%cpu load! Loving it!

Already this afternoon I’ve got a fresh Kubuntu Dapper Flight 3 installed with the latest 2.6.15-14 kernel, added the realtime-lsm module, the latest nvidia drivers, firefox 1.5 and gotten super low latency as user. Not bad for half a day’s work 😉

Am reading up on building DSSI packages for debian which is my next project, since he doesn’t support sid with his binaries and ubuntu struggles with non-ubuntu debs anyway…


Dapper Flight 3 and realtime February 20, 2006

Posted by oktyabr in audio, debian, linux, realtime, ubuntu.
add a comment

Your mission, should you choose to accept it, is to get realtime audio running successfully on a vanilla ubuntu install… this kernel will self-destruct in 10 seconds.

Next up to bat was trying out qjackctl and friends to see if the realtime improvements in the kernel I had heard rumors about were true, so I fired up my trusty Konsole again and did sudo apt-get install qjackctl ardour (and a few plugins) and to my amazement this came up!

overlord@biggun2:~$ sudo apt-get install qjackctl ardour-gtk-i686 fil-plugins tap-plugins
Reading package lists… Done
Building dependency tree… Done
The following extra packages will be installed:
gdk-imlib1 gdk-imlib11 imlib-base libart2 libglib1.2 libgtk-canvas1
libgtk1.2 libgtk1.2-common libgtkmm1.2-0c2a libjack0.100.0-0 liblrdf0
libsigc++0c2 libsoundtouch1c2 libungif4g
Suggested packages:
jamin ardour-session-exchange imlib-progs liblrdf0-dev
Recommended packages:
imlib11 jackd realtime-lsm-module
The following NEW packages will be installed
ardour-gtk-i686 fil-plugins gdk-imlib1 gdk-imlib11 imlib-base libart2
libglib1.2 libgtk-canvas1 libgtk1.2 libgtk1.2-common libgtkmm1.2-0c2a
libjack0.100.0-0 liblrdf0 libsigc++0c2 libsoundtouch1c2 libungif4g qjackctl
0 upgraded, 18 newly installed, 0 to remove and 284 not upgraded.
Need to get 5114kB of archives.
After unpacking 14.4MB of additional disk space will be used.
Do you want to continue [Y/n]? n

“realtime-lsm-module”? In DAPPER?!?!? INCREDIBLE! Am trying that now. Stay tuned 🙂

Ubuntu cleverness Part 5. realtime-lsm February 20, 2006

Posted by oktyabr in audio, debian, linux, realtime, ubuntu.

“realtime”, in the linux audio world, is required for professional level recording and processing. It allows a normal user to access audio apps in a kernel state that provides much lower audio latencies (depending on your sound equipment too!) than without it.

I’ve been doing most of my audio work with A/Demudi which is also a debian that has been highly optimized for this purpose. Like a Ferrari it is very fast and very good at what it does. Like a Ferrari it is also very difficult to just drop extra modifications on to without degrading it’s performance in one way or another (or simply breaking it!). Hence my recent attempts to coax a more general use distro (Kubuntu/Ubuntu, in this case) into the world of realtime audio work.

This has been an ongoing quest of mine for some time and I’ve experimented with Mandrake, Fedora Core, and several other debians including Mepis, Kanotix, and previously Ubuntu with little success. Finally I stumbled across a HowTo to get realtime running under Ubuntu 5.10 “Breezy”. The knowledge shared in the howto is common enough, for debian, and I’ve tried the methods in the past with earlier releases without success. This time it worked!


Basically what it entails (although I highly recommend you read all of Hardbop’s excellent “howtos” in detail) is making use of the great debian tool “module-assistant”:

sudo -i

apt-get install linux-headers-$(uname -r)

apt-get install module-assistant

apt-get install jackd libjack0.80.0-dev qjackctl

m-a update
m-a prepare
m-a get realtime-lsm
m-a get realtime-lsm-source
m-a build realtime-lsm-source
m-a install realtime-lsm

NOTE: I DID have to install gcc-3.4 to get the m-a build sequence to work correctly. Your mileage may vary:

sudo apt-get install gcc-3.4

In summary this enables realtime access to the kernel for a regular user. You can test this by firing up jackd (try qjackctl) with “realtime” enabled. I’ve gotten my Maudio Delta 44 down to as low as 5.9ms of latency >without xrunssudo modprobe snd-seq

BUT this in itself has created a problem! With snd-seq enabled I do have full MIDI capabilities (two keyboard synths through a USB Maudio Midisport 4×4) but I can no longer get jackd to run in realtime mode! ~sigh~

Still going to try to get stuff running properly although my Demudi 1.2.1 install cdrom is looking pretty sexy over in my software rack…

MIDI Problems with QjackCtl February 20, 2006

Posted by oktyabr in debian, hacking, linux, make music, realtime, software.
add a comment

I get the following error:

Could not open ALSA sequencer as a client.

MIDI patchbay will be not available.

In the message console I get the same message followed by the line:
ALSA lib seq_hw.c:455:(snd_seq_hw_open) open /dev/snd/seq failed: No such file or directory.

I’m still too much of linux n00b to fully understand what that means or how to go about fixing it. The real world result is that I have no MIDI capabilities when this happens. I’m running a USB MAudio Midisport 4×4 which runs perfectly in Demudi 1.2.1 and is at least properly detected in Kanotix (another debian). Google seems to suggest I need to rebuild my ALSA libraries but I have yet to find a well written HOWTO that might fix this problem.

Have any clues?”


/dev/snd/seq failed: No such file or directory

solution: modprobe snd-seq