Jul 09

Linux isn’t the easiest platform to use when it comes to music production. But it is one of the most flexible, and there’s no argument against it being the cheapest. This is particularly important if you have a musical bent, because few musicians are lucky enough to be able to freely spend money on their passion, making Linux the perfect choice. And regardless of price, if you don’t mind a little GUI graft and a slightly steeper learning curve, audio software on Linux can compete with the best commercial developments. PureData can replace Max/MSP, for example. Audacity can replace Wavelab. Either Muse or Rosegarden can take a fair crack at Logic or Cubase’s crown.

Tux, eh? He gets everywhere. In this case he’s made his way inside our collection of valuable music equipment. Pesky penguin.

But the most mature and capable application in the Linux canon is Ardour. It’s the free software equivalent to the industry standard ProTools. It doesn’t have MIDI, nor ProTools’ hardware lock-in, but it’s just as flexible and stable when it comes to audio recording, editing, mixing and mastering. Which means, if you’re into making music, there’s no better option on a budget.

Jack of all trades

As with most pro-level Linux audio software, the first step is to create a working ‘Jack’ environment. Jack is an audio connection layer that sits in-between your applications and your soundcard. It enables you to freely route audio between applications, perhaps taking your audio device’s inputs through an effects rack for example, and Ardour uses Jack for all internal connections.

Install Ardour from your usual package manager, and it should fill in any dependencies like Jack.

When you install Ardour through your distribution’s package manager, Jack will also be installed as a dependency. You may also want to grab as many plug-in effects as your distribution carries, as these are essential to getting the most out of Ardour. With Ubuntu, look for the ‘tap-plug-ins’, ‘amb-plug-ins’, ‘fil-plug-ins’, ‘swh-plug-ins’ packages, or just install the ‘ubuntustudio-audio-plug-ins’ bundle. Unless you intend to record from an external sound source, you should also install a few synths and sound generators. We went for the ‘Hydrogen’ drum machine, its accompanying package full of drum sounds, and the ‘ZynAddSubFX’ synth.

With everything installed, restart your machine. This is so you can be sure no other applications are accessing the Linux audio system. When your desktop reappears, launch ‘JACK Control’ from the ‘Sound & Video’ menu.

Getting Jack to run can be the trickiest part of the process, but before trying anything else, click on the ‘Start’ button. With a bit of luck, Jack will start without any further hassle. If it doesn’t, click on the ‘Setup’ button and create the following failsafe configuration.

Jack’s setup window is, frankly, a little obtuse. You shouldn’t need to do much to it, however.

Disable ‘Realtime’, change the Sample Rate to ‘48000’(unless you know your hardware natively supports 44100), and select ‘hw:0’ from the Interface menu. Press OK and try the ‘Start’ button again. You should find that Jack starts this time, showing ‘Started’ in its false LCD window. If you get ‘XRUN’ errors, displayed as a red number in the display, try increasing the size of the ‘Frames/Period’.

Run Ardour

With Jack running, you can now safely launch ‘Ardour’ from the same ‘Sound & Video’ menu we used to start the Jack GUI. When first launched, Ardour will ask you for a name for the new session, and this name will be used to create a folder in your home directory. Click on ‘New’ and you’ll see Ardour’s main window.

There’s not much to see. There’s only a single track in the window, and this is labelled ‘master’, The outputs from this track go to your audio hardware’s main output connections. You can see this in the Jack connection window. If you go back to its GUI and click on the ‘Connect’ button, another window will appear. This lists everything that Jack is currently connecting, and you’ll see ‘ardour’ in both the output ports list on the left, and the input ports list on the right.

If you open the ‘ardour’ output list, you’ll see that among the various output from the application, there’s ‘master out’ 1 and 2 from the master track, and these will be connected by two lines to system>playback on the input ports list. With Jack, you’re free to re-connect these devices any way you choose, but Ardour will always try and make the most sensible connection by default.

Create a sound

We’re now at the point where we want record something. To keep everything self-contained, we’re going to start with a drum beat provided by the Hydrogen drum machine we installed earlier. Hydrogen is worthy of a tutorial itself. It’s an it’s an incredibly comprehensive drum machine and step sequencer that works just as well on its own as it does in partnership with applications like Ardour. If it’s launched while Jack is running, it will automatically be detected and add itself to the audio chain. You can view its default connections in the Jack GUI and you’ll see that its outputs will be joined to your system outputs, along with those from Ardour.

Hydrogen is a decent music app on its own, but it’s even stronger when teamed with Ardour.

There are many ways to create a sound in Hydrogen. You can load various drum kits, for example, and use the the matrix editor to draw drum patterns, and then use the song editor to select which patters you want to play as the song progresses. But the quickest method, and the one we’re going to recommend, it to load a demo song. You can then either play this back immediately, or edit it more to your liking. Just select ‘Open Demo’ from Hydrogen’s file menu and choose one of the projects listed in the folder. We opted for one called ‘TR-808 Emulation Kit Demo’. This has an edgy electronic sound.

With the project loaded, press the ‘Play’ button in the transport and you should hear the output from the song. If you’re happy with the results, stop playback and switch back to Ardour, we’re now ready to make a recording.

Make the connections

We’re going to record the drums onto their own track. In the block of light grey, beneath the box that says ‘master’, right click. From the window that appears, use the drop-down ‘Channel Configuration’ menu to select ‘Stereo’ and click on the ‘Add’ button. You see another track appear below the ‘master’ track at the top of the window. Double click on its name and change it to something descriptive like ‘drums’.

To get audio from Hydrogen into Ardour, we have to reconfigure Hydrogen’s outputs in Jack and connect them to the inputs on the new audio track we’ve just created in Ardour. You could do this using the Jack GUI’s Connect page, selecting Hydrogen’s outputs in the left panel, and Ardour’s inputs on the right panel to ‘Audio 1/in 1’ and ‘Audio 2/in 2’, but there’s an easier way of accomplishing the same thing.

Connecting up Ardour and Hydrogen is pretty easy. Just think of Jack as a place to plug your cables in a real studio.

Within Ardour, open the ‘Track/Bus Inspector’ from the ‘Window’ menu. Your new audio track should be listed on the left. Make sure Hydrogen is selected in the tabbed panel on the right and click on both Out_L and Out_R to connect its outputs to the inputs on the new audio channel. This happens immediately, but you could always check in the Jack GUI if you needed to make sure.

If you press play in Hydrogen and press the red, circular ‘Record Enable’ button in Ardour next to the new audio track, you will see its level meters bouncing up and down to the inputs its receiving from Hydrogen. We’re now on the cusp of making our first recording.

Hit Record

Before clicking on the Record button in Ardour, make sure the tempo in your Ardour project is the same as the tempo used by Hydrogen. Ardour uses a tempo track in the top border of the playback window, so that tempo adjustments can be made over time. As we want to adjust the tempo for the entire duration of the track, make sure the playback cursor is at the beginning of the project by clicking the ‘Go to the start of the session’ button in the top right of the toolbar, and right click on the small red wedge at the beginning of the tempo track. You should get an ‘Edit’ option, and you need to make sure the number here is the same as the BPM value in Hydrogen. Our demo project used a value of 125.

Now press the large record button in the transport bar at the top of the Ardour window, followed by the play button. You are now recording, and you should see the input waveform being calculated in realtime and drawn into the audio track. Record as much of the drum beat as you want, but it’s worth remembering that you can always copy and paste to repeat a loop without recording too much. Just press stop when you’ve got enough.

Ardour’s interface is visual. You can chop and loop waveforms with ease.

Ardour’s editing functions are non-destructive unless you process the audio with an effect. You can find the editing tools to the right of the ‘Slide Edit’ menu on the left of the screen. You can move blocks of audio, trim from either edge of a recording, split, copy cut and paste segments and time stretch parts to fit into the available space. Using the blue anchor points at the beginning and end of each block of audio, you can also create fade in and out effects so that your

You now need to create some more tracks. You can either do this by editing Hydrogen to create a different sound, adding a new track for a new recording, or by trying a different sound generator such as the ZynAddSubFX synth we installed earlier. This is a particularly good choice because if you’ve not no MIDI keyboard, you can still play sounds with either the on-screen keyboard, or by typing on our computer keyboard. If you create a new track and assign the inputs in the same way we originally did for Hydrogen, you can keep adding and editing until you’re happy with the results. You then need to select ‘Export session to audiofile’ from the File menu to create a WAV file. The default options are usually the best, and if you want to turn that WAV file into an MP3 or Ogg Vorbis file, use Audacity.

A few additional tips

Install a piece of software called JackRack to pile up one effect after another to create monster rigs of sound that would scare Spinal Tap. You can then use Jack to pipe the audio into JackRack and back into Ardour to record the output of your effects chain. Alternatively, use Jack to plug the rack into directly between your audio hardware’s input and outputs to create a realtime effects unit.

If you have any generic MIDI or USB controllers, such as those made by Behringer, you can connect these directly to your Linux box and use them within Ardour. This is a great option for the final mixing stage, where you can control the volumes of each track with real faders. You can even automate your movements so that you don’t have to perform them again.

Master your Masterpiece

After you’ve finished editing and arranging your music in Ardour, there’s still a lot more you can do to get your music sounding as good as possible. Firstly, you should mix each track so that you like the overall balance of the music. You may want to lower the level of the rhythm track, for example. Changing track dynamics is accomplished through the mixer window, which can be opened from Ardour’s ‘Window’ menu. Each track has a slider and volume meter, as well as a ‘pan’ area below. This can be used to adjust the left/right balance of each track for a better stereo sound.

But if you really want the output to sound professional, you need to use something called ‘Jamin’. This is known as a mastering processor, blending and maximising the output of your sound, and it does this by running several tasks at once. It can compress the sound of your audio, to making it sound louder, equalise frequencies you want to emphasise or hide and limit the output so that there’s no clipping.

You’ll need to install and run it from the Sound & Video menu, but it connects to the audio chain through Jack. To enable it, select ‘New Insert’ from the right-click menu in the area just below the master track in the mixer view. This is the final point in the audio chain. Double click on the ‘insert1’ text that appears and you’ll see a window similar to the ‘Track/Bus Inspector’. Select ‘Jamin’ in the two available connections panels, and click on both the inputs and both the outputs. This will slot Jamin into Ardour’s audio chain, piping all the audio through Jamin and back into Ardour so that it can be saved. Right click on the ‘insert1’ text and select ‘Activate’. Now carefully adjust the parameters in Jamin until you’re happy with the results and export the audio from Ardour.

Effects

There are several realtime effects formats for Linux. The most common uses the LADSPA format, and these are the type we’ve installed to use within Ardour. But you can also find DSSI instruments and even Linux-native VST sound generators and effects, as well as plenty of other software that prefers to stick with Jack.

Jack effects need to be added to Ardour using something called an ‘insert’. An insert pipes the audio, through Jack, to the effect and back into Ardour again. It’s analogous to audio inserts used on a hardware mixer. But you can also insert effects directly into each track or channel within Ardour. Just select the blank area above or below the slider for the channel you’re interested in, right click, and hover over ‘New plug-in’. You’ll then be able to navigate through and enable any effects you may previously have installed, including a massive variety of equalisation, distortion, delay and reverb effects.

During playback, effects are processed in realtime and you’ll hear its output immediately. Double clicking on any effect will open its parameters window, and you can usually completely alter the sound of the output by changing a few parameters. If you find a combination you like, make sure you save it as a preset so you can use it again. Our favourites include the ‘rubberband’ package for pitch-shifting, the low-pass filters in the ‘cmt’ package and the exceptional ‘gverb’.

Comments are closed.