Wow . . . I certainly didn’t anticipate the difficulty I was going to face trying to get all the software set up and configured on my shiny new Digital Audio Workstation
You see, it’s all about real time computing. Since normal, every day Linux is based on a voluntary preemptive kernel (as are all other regular OS-es), it is not suited to the demands of a professional DAW. The various software components of the DAW have to sync perfectly and in real time. The sequencers, synthesizers, mastering software, loops, keyboards connected though MIDI and audio, all have to exactly sync up with near zero latency if you’re going to have anything that sounds worth a crap come out the other end.
UbuntuStudio was created with this in mind. It has the real time kernel included, all the DAW software and components that tie it all together (the zero latency plumbing is called Jack). I had already installed Ubuntu Desktop (Gutsy Gibbon to be precise) so I followed the instructions to upgrade. Well something definitely went awry with that process. For some reason, the install of the rt kernel totally futzed up my initrd image to the point where it didn’t detect my hard drive. Suffice it to say that makes it difficult to start mastering any recordings!
I first attempted the usual fixes, including yaird, initrd, initramfs tools, to no avail. I went back to my default kernel and went ahead and launched all my DAW software anyway, setting up Jack with options so it would ignore the latency problems. I just wanted to see how the applications worked in general. Everything ran, albeit not synced in real time.
So, I decided to roll my own kernel from scratch, pulling it from kernel.org, patching it with the realtime kernel patch, choosing the appropriate kernel options, and compiling. After a few false starts (didn’t quite get all the correct options in the menuconfig the first couple of times) and a few hours, I had a kernel that finally booted! Finally my optimized, preemptive realtime kernel:
Linux sean-desktop-home 2.6.24-rt1-rtsbs #1 SMP PREEMPT RT Mon Feb 18 22:25:02 CST 2008 i686 GNU/Linux
Of course now that I was no longer using the restricted mode NVidia drivers to get hardware acceleration (i.e., the restricted module doesn’t match the kernel version; I’ll have to download and compile module from NVidia), I didn’t have a working X server. A simple dpkg-reconfigure xserver-xorg later and I was off and running. Click on the image below to see it in action.
I still was getting xruns on Jack, but my SBLive card has issues anyway. Sometimes the synthesis or even regular sound files sound like ass; it is a 4 year old card that cost $20 so I can’t complain. I guess I’m going to have to shell out for the E-mu 1212M I’ve been eying and get down to business. I suspect that will solve a lot of my problems. Who knows, I may even finally get some of my music uploaded as promised. Stay tuned for more updates (and more late nights) soon!