Rakarrack: Guitar FX For Linux

June 16th, 2008 by Dave Phillips in

Your rating: None

Linux-based guitar effects processors haven't exactly been flourishing recently. Until recently, the guitar FX processors page at linux-sound.org listed twelve projects, of which the most recent maintenance date is 2006. Clearly, not a flourishing domain for Linux audio developers. Not that Linux lacks realtime effects processing capabilities: Pd can be pressed into any audio service imaginable, the JACK Rack can be configured for LADSPA-based effects, but they are not organized and optimized specifically for guitarists. However, a thirteenth entry has joined the collection at linux-sound.org, and this entry is most definitely organized, optimized, and intended for guitarists.

Rakarrack

After contemplating the depleted condition of Linux guitar processing software, Josep Andreu (author of the outstanding Holborn Linux Sound Utils) joined forces with developers Daniel Vidal and Hernan Ordiales to create a new effects processor for penguinistic guitar slingers. Rakarrack is the first result of this collaboration.

Rakarrack includes ten effects processing modules, 80 preset patches, a built-in tuner, and a monophonic pitch-to-MIDI converter. The processing modules have been derived mostly from the DSP capabilities of Paul Nasca's excellent ZynAddSubFX synthesizer, but further tweaked for a "best fit" to the sonic needs of guitarists. MIDI messages can control overall volume and program changes, but alas, as of version 0.1.2 parameter control via MIDI is not implemented. The order of multi-effects chains can be defined by the user, unit status can be saved as a preset, and a preset collection can be saved as a bank (80 presets can be stored in a bank).

Getting It

If Rakarrack is not yet available in your distribution's software repositories you'll have to build it from the source package. You'll need a standard C/C++ build environment for Linux, plus the libraries and development packages for ALSA, JACK, and the FLTK graphics toolkit. See the README file for the full list of dependencies.

If the dependencies are satisfied, run ./configure; make; make install and you're done.

Figure 1: Rakarrack


The processing types have been selected for their common appeal to guitarists. I can't fully describe each one but the chart in Figure 2 lists the effect types, their number of parameters, and the number of basic presets. That chart should give readers a good idea of Rakarrack's level of detail.

Effect			Parameters 	Presets
-----------------------------------------------
10-band EQ		12		 3
Compressor		 6		 3	
Distortion		11		 4
Overdrive		11		 2
Echo			 7 		 9
Chorus			11		 5
Phaser			12		 6
Flanger			11		 5
Reverb			10		13
Parametric EQ		10		 3	

Figure 2: Rakarrack's modules


As I said, full descriptions aren't possible here, but we can consider a couple of these modules in some greater detail.

The first EQ is a 10-band linear equalizer with extra controls for Q (resonant peak) and overall gain. Each slider controls a range of 128 integer values numbered from -64 to 63. The sliders move smoothly, with fine-grained audio response, though some numeric display quantization occurs even at 1280x1024 video resolution. The three presets provide Plain (i.e. flat), Pop, and Jazz equalization curves. While these presets are good and useful in their own right, their true purpose is to provide basic templates for programming your own custom settings.

I Google'd for "linear equalizer" and discovered a fair amount of mathematics that might be relevant, but I'm still unclear whether Rakarrack's linear EQ is related to what my search revealed. Further clarification from my readers would be most welcome. Whatever I learn, this equalizer is an excellent processing module.

The Reverb module is a fine-grained reverberator with nine parameter sliders and two drop-down preset menus. The first menu supplies various prepared environments (cathedral, hall, room, et cetera), the second provides two further type definitions, one for Freeverb and one for Random. The Freeverb selection of course refers to an implementation of Jezar's famous reverberator, but I'm unclear how the Random selection works. Two banks of sliders control the reverb's time-domain and frequency-domain parameters. The top set controls the wet/dry balance, panning, reverb time, initial delay time, and the delay time for the early reflections. The bottom set controls room size, the high-pass and low-pass filters, and the high-frequency damping. Like the linear EQ, the module's controls were smoothly responsive, and its sound quality is first-rate.

Using It

To get started, just click on the Rakarrack desktop icon or enter rakarrack at an xterm prompt, and the display seen in Figure 1 will appear. Open your JACK connectivity manager (QJackCtl or Patchage are good choices) and connect your guitar's audio output port to Rakarrack's input ports (its output connections will be made automatically). Click the FX On button, select a patch in the Presets panel, and you are ready for Rakarrack.

Rakarrack can process any kind of audio input signal, but it is clear that the current crop of presets has been designed by and for guitarists. With 80 presets to check out Rakarrack will keep you busy for a day just testing its default goodies. The included collection is a model for the Right Way to present this type of software, and I send huge kudos to Carlos Pino, Eugenio Rubio, Alberto Mendez, and the development crew for their efforts. I'm sure many players will find no need to go beyond these excellent designs, though of course the dev team will love it if you create and contribute some more.

The tuner, MIDI program change, and MIDI volume control all worked as advertised. See the Settings dialog (Figure 3) to set your global MIDI receive channel and input source.

Figure 3: The Settings dialog


A few words about the MIDI converter: Pitch-to-MIDI conversion is not an entirely new feature in guitar effects processors, but Rakarrack is the first Linux application to include an on-board converter. At this time the feature is experimental, so don't expect perfect results without expending some effort. The conversion is monophonic, meaning it will convert only single notes, and you will likely need to adjust the trigger sensitivity to achieve the least latency and avoid falsely triggered notes. A second slider controls the output velocity. Alas, there is no "amplitude to MIDI" conversion stage yet, but a second slider lets the user define the MIDI output velocity value.

Documentation

User-level documentation (in English, Spanish, Portuguese, and French) can be called from the Help menu (Figure 4). The manual provides a good overview of the program and its components, but it does not describe the individual modules in any detail. However, in a program like Rakarrack the best documentation is the software itself. Take an existing preset, toggle the states of its modules, adjust parameters at will, and you'll soon have a very clear notion of what Rakarrack can do. Nevertheless, a shiny printable manual would be nice, especially one with a breakdown of each module and some in-depth advice on programming your own patch presets and banks.

Figure 4: The Rakarrack manual


Some example recordings can be heard at the Rakarrack Web site. Be sure to check them out, they include some beautiful work from the redoubtable Carlos Pino (who has also contributed a number of presets to the default collection), including his lovely Viajes.

If you need further assistance, the developers can be reached via the standard comm channels, including mail list, a Sourceforge-based forum, and the #rakarrack IRC channel at Freenode.

What's Missing, What's Coming Up

I can't really complain about anything in Rakarrack's current release, but of course I have a Wish List. Support for a carefully selected set of LADSPA plugins would be nice, particularly if it included the emulators in Tim Goetze's CAPS collection. Realtime parameter control via MIDI would be most welcome, as would parameter randomization for patch edits. Oh, and support for LASH and JACK MIDI would be nice too.

Figure 5: The Settings dialog in Rakarrack 0.2.0


I built Rakarrack 0.2.0 from the CVS sources. Since by definition a development version is unfinished I'll just tantalize you with a peek at some of the new features under construction. Users will have more control over the JACK routing (Figure 5), and more processing modules are on the way, including wah effects, a harmonizer, and a cabinet simulator. Very exciting developments indeed.

Outro

Well, now that I'm done here I'm going right back to playing with Rakarrack. This program is by far the best standalone guitar effects processor currently available for Linux, and the 0.2.0 release promises to take it to the next level. Don't you love it when great things get better ?

__________________________


Special Magazine Offer -- 2 Free Trial Issues!
Receive 2 free trial issues of Linux Journal as well as instant online access to current and past issues. There's NO RISK and NO OBLIGATION to buy. CLICK HERE for offer

Linux Journal: delivering readers the advice and inspiration they need to get the most out of their Linux systems since 1994.

Sorry, offer available in the US only. International orders, click here.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

nice work

On June 23rd, 2008 Anonymous (not verified) says:

Dave Phillips' articles are consistently excellent and interesting. Keep 'em coming, please!

I have yet to try it out,

On June 20th, 2008 Anonymous (not verified) says:

I have yet to try it out, but why do these people keep using garbage GUI toolkits to create their apps when there are much better ones around. Qt comes to mind. They would have had direct access to the phonon multimedia framework by using that instead (with xine, gstreamer backends).

The sounds may be great. A great GUI makes it much more appealing to the masses.

Author's reply

On June 20th, 2008 Dave Phillips says:

I agree that a nice GUI toolkit provides attraction, but I can't resist replying with this URL:

DreamOnPro

Enjoy !

Rakarrack Rocks!

On July 18th, 2008 Zak (not verified) says:

This is an exciting development indeed. I hope to see this project grow. Though I do agree that ladspa support would be a good addition. I got very good results by placing Jack-Rack running a single AmpVTS between my guitar and Rakarrack. A much warmer sound, as well as much more complex distorsion effects. I single "Amp" slot would be a good idea, just to contain a CAPs Amp.

Always love your articles, Mr Phillips! I hope to see you around the JAD forum. You gotta try openSUSE 11.0/JAD 2.0. Good things made better!

God bless!

That's pretty funny and hits

On June 22nd, 2008 Anonymous (not verified) says:

That's pretty funny and hits it dead on for some of the garbage music that is produced. That said, a professional GUI does go hand in hand with a quality audio/DSP engine
if people know what they are doing. Most of this app is not really original development anyway. It might be better than other things like it around, but it is hardly a novel approach. A fine GUI would have taken it that much further towards being novel. Also, as much as Linux enthusiasts would like not to believe, looks do count in terms of adoption. Qt looks better and is more widely available by default in distros than FLTK.

Great job

On June 18th, 2008 elcesar (not verified) says:

Great job Holb. I guess this is the reason why you have been completely out for the past months.

I just discovered this

On June 18th, 2008 Anonymous (not verified) says:

I just discovered this program last week. It blows the socks off any other guitar effects applications I've seen for Linux. (although, the default theme I got looked horrible) I've love to see how this evolves, keep up the good work guys!

Featured Videos

Email is one of the least private and least secure forms of communication, although few people realize this. MixMaster is one way to allow secure, anonymous communication even over the very public medium of email. This tutorial will get you started with MixMaster quickly and easily.

In case you were wondering about the fun side of Linux World Expo, we thought we'd give you a peek at our shenanigans. We at Linux Journal love what we do so much, that we can't help but have a ball wherever we go.

From the Magazine

September 2008, #173

Feeling a bit like a Thermian? Never give up, never surrender! Someday, you could go from underdog to top dog. Just take a look at a few of the underdogs we highlight in this issue: Mutt, djbdns, Nginix, Gentoo, Xara and the program voted mostly likely to fail just a few years back—Firefox. If Firefox is not radical enough for you, check out Chef Marcel's column for some more alternatives. Having trouble mapping your program data to your relational database? If so, Rueven Lerner shows you some tricks in his At The Forge column.

Need to run GUI applications on your server in the next state? In his Paranoid Penguin column, Mick Bauer shows you how to do it securely. Kyle Rankin keeps hacking and slashing and shows you a few split screen secrets you may not be familiar with. Finally, we all know what happens next February, but only Doc knows what happens afterward.

Read this issue