sketchbook: faking guitars

As someone that plays keyboards I’ve been mostly resigned to the fact that I can’t put guitars in any of my tracks, but after some playing with guitar samples available at the Flame Studios website, I’m cautiously optimistic. Flame Studios has high-quality recordings of various guitars (like the Fender Telecaster and Gibson Les Paul) in GigaStudio format, and when used appropriately, they sound great. Their website has been down for most of the last few years, but I’m hoping that it’s now back for good.

Most of the recordings are straight from the guitar’s line-out, which I think is ideal: if you want a clean sound, you can use it as-is, or you can run it through your choice of amp simulation to get a more typical guitar sound (something I’ve always been curious about but never had a chance to try). I was testing the samples using the Linuxsampler LV2 plugin in an Ardour 3 MIDI track, so I decided to try Guitarix, which as of version 0.25 includes some pre-built combinations of tube amp, tonestack, and cabinet as LV2 plugins.

The new Guitarix LV2 plugins, alongside some old favourites

The new Guitarix LV2 plugins, alongside some old favourites

So far, I’ve been quite impressed with Guitarix. I haven’t had much experience with amp simulations, but even so, with appropriate twiddling of knobs I’ve been able to get some crunchy distorted sounds, and some cleaner sounds that add a lot of character without over-the-top distortion. There are other options — Rakarrack has some amp/cabinet simulation features (though it focuses more on effects), and the C* Audio Plugin Suite provides amp/cabinet simulations as LADSPA plugins — but the simplicity and quality of the Guitarix LV2 plugins won me over.

The sound itself is just one piece of the puzzle — the other is to play things in a believable way. Keyboards can do a lot of things that guitars can’t, so you have to limit yourself playing parts that at least sound like they would be possible on a guitar. Arpeggios with wide gaps between notes are an easy cheat, but if you want to play chords, a list of guitar chords mapped out on the keyboard, like this one, is very helpful.

Of course, the reverse is true, too — guitars can do a lot of things that keyboards can’t. Many of the Flame Studios guitars include extra samples of finger slides and other guitar sounds beyond just the notes, which you can sprinkle in to a part to add some realism. Subtle MIDI pitch bends can help add some expression, too, though they really stand out if they’re done poorly. You’re not going to be able to capture the subtlety and nuance of a real guitar, but with a bit of care, I think you can definitely create basic guitar parts that sound convincing enough to work in a mix.

On to the sketch! Using the Telecaster line-in sample set recorded from the bridge pick-up, I came up with a simple little arpeggio-ish riff thing, and then tried running it through various Guitarix settings. In the sketch you hear three versions of this riff: the first is completely clean, the second uses the Guitarix GxAmplifier-IV plugin with fairly heavy drive settings and a CAPS Plate reverb, and the third uses the GxAmplifier-II plugin with much cleaner settings, along with a Calf Vintage Delay, dRowAudio Flanger, and the CAPS Plate reverb again.


mp3 | vorbis | 1:07

rpm 2012 post-mortem, track 6: direct ascent

Direct ascent was a proposed method for a mission to the Moon. In the United States, direct ascent proposed using the enormous Nova rocket to launch a spacecraft directly to the Moon, where it would land tail-first and then launch off the Moon back to Earth.”

After a few downtempo tracks, I felt like the album needed perking up around the half-way mark, so I chose this upbeat chiptune as track 6. This was the second track I started on, back on day 2, though I ended up scrapping much of that sketch and using the chord progression from its intro instead. I also kept the bass rhythm and the drum part, though I later embellished both of these a bit.

I started expanding it on day 15 by writing the intro melody, and then used a variation on that as the starting point for the main melody. I also reused the intro bass line as a second melody line in the start of the second loop through verse. There are four lead sounds that move between different roles; one lead sound for each verse, a separate lead part that’s used for the chorus, and an arpeggio part that also acts as a lead in the section just before the first verse.

As with hohmann, the percussion sounds are from the Dirty Dose sample set and LinuxSampler, while the synth sounds are made by TAL NoiseMaker, with the exception of the arpeggio part, which is Calf Monosynth. I did bend the rules a bit, though — the bass is more of a typical electro bass, with a nice punchy envelope on the filter cutoff, and one of the leads uses two oscillators and a delay plugin (Calf Vintage Delay) to add some more variety.

This is one of my favourite tracks on the album. Breaking the rules didn’t diminish the chiptuney feel at all, and with a few different sounds to play with, I was able to jump between them to keep things interesting. About the only thing I wasn’t entirely happy with was the start of the chorus — the chorus lead part has always seemed a little startling. With more time, a better mix may have fixed that, but some musical rearrangement to give the chorus a better lead-in would probably work better.

new music update

A few months ago I posted that I was working on new music using Ardour 3, and I’m glad to say that my new track is now all but finished. Working with Ardour 3 was a bit nervewracking at times, as you’d expect when testing alpha software — there were several times, in fact, when I couldn’t even open the project’s session due to one bug or another. It all held together somehow, though, and after many bug reports and fixes, I definitely feel like it’s helped

The new track is a bit of a downbeat, ambient-ish thing, with some lo-fi sounds mixed in with some glitchy elements. I definitely put Ardour’s MIDI features to the test: there are MIDI tracks running out to my Blofeld and to Hydrogen, along with LV2 synths (Calf Monosynth and Linuxsampler), along with automation of CC parameters on the Blofeld and automation of plugin paramaters on Calf Monosynth. I’ve done quite a bit of effects automation as well, particularly with the bitcrushing Decimator plugin.

There’s even a VST plugin in there now; I had been beta-testing Loomer Cumulus, using it as a standalone synth, but with Ardour’s new VST support I now have it running within Ardour directly. Cumulus is somewhere between a synth and an effect: it lets you load a sample, and then trigger its playback using granular synthesis with varying paramaters, altering the starting point, pitch, and playback rate, among other things. You can define up to eight sets of those parameters, and then trigger those via MIDI keys. It can turn all sorts of sounds in to eerie textures, but it can just as easily take a drum loop and turn it in to a wonderfully glitchy mess, which is exactly what I used it for.

I’m pretty sure the track is done, but I don’t want to release it just yet. I plan to sit on it for a few days at least, while I read more of my copy of Mixing Secrets for the Small Studio, but I like the idea of putting together at least an EP with a couple of other tracks and releasing them all at once. That might not be practical if it takes me four months to finish each track, though, so I may post the individual tracks here when they’re ready, and then do an official Bandcamp release once they’re all done.

lv2 synths for ardour 3: a list

With Ardour 3 alphas coming thick and fast, and the beta looming on the horizon, I thought it was high time to examine the soft-synths that are available for use with it. While support for other synth plugin formats, like DSSI and native VST, may come in future releases, Ardour 3.0 looks set support only LV2 synths (though it of course supports LADSPA for effects, too). That obviously limits the selection somewhat, but there are still some nice synth plugins on offer.

Of course, Ardour 3 works just as well with external JACK synths, and with hardware synths, so you can still use old favourites like Hydrogen or Yoshimi, but using plugins certainly makes things easier when saving and loading projects.

NOTE: Some of these synths rely on a library called lv2-c++-tools. Versions of this library before 1.0.4 include a bug that prevents Ardour from loading any synth plugins built against it, so if some of the synths listed here fail to load for you, make sure you check your lv2-c++-tools version.

Calf plugins: Monosynth, Organ, and Fluidsynth

The Calf plugins are some of my favourites — the Flanger, Phaser, MultiChorus, and Vintage Delay are all great — and it comes with a couple of synths, too. Calf Monosynth is a classic analogue-style monophonic synth; it handles legato just like an old monosynth, which is something that a lot of soft-synths mess up, so it’s great for both electro basses and proggy leads. The git version adds LFOs and a modulation matrix.

Calf Monosynth

Calf Monosynth handles classic lead and bass sounds

Calf Organ is based on a drawbar organ; rather than emulating a specific organ it takes the basic idea and expands on it. You can adjust the harmonic and the waveform of each drawbar, and independently pan and detune them, too. It also has a pair of resonant filters, and three envelopes for modulation, which make it capable of all sorts of synth sounds beyond what you’d expect from an organ.

Calf Organ

Calf Organ is half-organ, half-synth

Calf Fluidsynth does what you’d expect it to do — it lets you load SF2 soundfont files, using the Fluidsynth engine. It’s only available in the git version of Calf, and it’s marked as experimental, so you have to enable it explicitly when configuring the build. Despite all that it does seem to work, though I haven’t had a good chance to really put it through its paces yet.

Calf Fluidsynth

The experimental Calf Fluidsynth plugin loads SF2 soundfont files

foo-yc20 organ

If you do want a classic organ, foo-yc20 may fit the bill — it emulates a Yamaha YC-20 combo organ, down to the tacky red background in the UI. It does a great job of emulating those cheesy 70s organ sounds, and it works really nicely through a chorus or rotary speaker plugin.

foo-yc20

foo-yc20 emulates a deliciously-cheesy combo organ

MDA EPiano

The MDA plugin set, which contains a variety of synth and effects plugins, has long been popular on Windows, and since going open-source a couple of Linux LV2 ports have appeared. Dave Robillard has ported the effects plugins, but he hasn’t yet started on the synths. The lv2-mdaEPiano project has ported one of the synths, though — the electric piano. It’s a very nice little synth, with a great sound and low resource usage.

lv2-mdaEPiano has its own GUI, but it’s a bit plain — I actually prefer Ardour’s standard plugin GUI controls. Thankfully, you can bring up a standard Ardour GUI for it (or any other plugin, for that matter) by right-clicking on it in the plugin list and selecting “Edit”. lv2-mdaEPiano uses lv2-c++-tools, so make sure you’ve upgraded that to 1.0.4 or later before installing it.

lv2-mdaEPiano

lv2-mdaEPiano is a port of the MDA EPiano VST plugin

So-synth plugins: SO-404, SO-666, and SO-KL5

These three plugins started as stand-alone JACK synths, but they were ported to LV2 by Jeremy Salwen:

  • SO-404: a single-oscillator monosynth; it’s similar to a 303, and while it’s not a strict emulation it certainly capable of the same kinds of sounds.
  • SO-KL5: a “piano” synth — it uses Karplus-Strong string synthesis, and while it doesn’t sound a lot like an actual piano, it sounds really nice in its own way, but a bit of an electric piano-ish vibe to it.
  • SO-666: a feedback drone synth, capable of some crazy, dissonant drones; the original website has the best description of how to use it
so-synths-lv2

The So-synth LV2 synths, with standard Ardour GUIs

LinuxSampler

I wasn’t sure about using LinuxSampler as a plugin initially, but it actually seems to work quite well! When you add the LV2 plugin within Ardour, you don’t get a GUI — it just launches an instance of LinuxSampler in the background and defines a MIDI input and audio output. Then, you can fire up LinuxSampler’s Fantasia GUI to load the instrument you wish to use. It’s a little clunky, but the settings are all saved as part of the session and restored when you reload it, just as you’d expect with a plugin.

linuxsampler-lv2

LinuxSampler's LV2 plugin uses an external GUI to load sounds

The Newtonator

I’m not sure how to describe this one, though words like “bizarre”, and perhaps “insane” certainly come to mind. The Newtonator uses some unique forms of synthesis, which are extensively, and entertainingly, in its manual. Its sound starts off as a simple sine wave, but after a few quick adjustments of some of its modulation parameters you find yourself knee-deep in some rich, distorted sonic mayhem.

The Newtonator

The Newtonator creates sounds that are harsh, distorted, crazy, and very cool

Qin

Like SO-KL5, Qin is a little string-based synth; it simulates plucked strings using a pair of oscillators and a pair of filters. Being monophonic limits its usefulness, but it can make some nice sounds.

qin

Qin is a monophonic plucked string synth

ll-plugins: Rudolf-556 and Sineshaper

The ll-plugins plugin set contains two quite unique synths: Sineshaper, a monophonic synth based (unsurprisingly) on sine waveshapers, and Rudolf 556, an analogue drum machine emulation that creates bass, snare, and hat sounds. Even with the updated version of lv2-c++-tools, Sineshaper doesn’t work in Ardour for me, but Rudolf 556 does.

Rudolf 556

Rudolf 556 creates drum sounds similar to those on analogue drum machines

Composite Sampler

Composite Sampler is the plugin component of the Composite project, which aims to create a realtime sampler and sequencer based upon Hydrogen. The sequencer itself isn’t usable yet, but this plugin, which plays Hydrogen drum kits, works just fine (as of version 0.006.1). With no GUI to speak of it’s a bit fiddly to use, but the release announcement includes basic instructions.

Others

There are some others that I either haven’t tried or couldn’t get working, or which simply aren’t finished yet. If anyone else can elaborate on these, let me know in the comments so that I can improve this article in the future:

  • Minicomputer-LV2: this is a work-in-progress LV2 port of Minicomputer. i don’t think it’s in a usable state yet, but it’ll be awesome when it gets there.
  • Calf has another “experimental” synth, called Wavetable, which I assume will be modulatable wavetable synth, like those from Waldorf. It doesn’t actually work yet, though, so we’ll just have to wait and see how it develops.
  • lv2_guitar: another string synth; thanks to Jeremy’s comments below I was able to build it, but it won’t load in to Ardour.
  • Zyn: this project aims to port the various synth engines from the almighty ZynAddSubFX to LV2. I haven’t had any luck getting Ardour 3 to load it, though, and I’m not sure if it’s actively maintained.

Have you had better luck with some of these? Have you found any that I haven’t listed? If so, let me know in the comments!

ardour 3 midi progress

I have a new track in the works, and as an exercise, I’m sequencing it all within Ardour 3. The alphas of Ardour 3 have been great on audio-only projects, but for MIDI work they’ve been highly unstable until quite recently. Each alpha just gets better, though, and while it still crashes, and has some odd behaviour, alpha 8 has behaved well enough that I’ve been able to make some solid progress.

I think it’ll still be a while before I’ll be recommending Ardour 3 for MIDI-intensive work (it may not reach that point until after the 3.0 release, even), but it’s developing well, and I figure that actually using it and reporting any problems I find is the best way I can help make it the brilliant all-round DAW I think we’re all hope it will become.

An Ardour project with only MIDI tracks? Madness!

I’m using a combination of synths — my Blofeld and Hydrogen, using a2jmidid to bridge Ardour’s JACK MIDI to ALSA MIDI, and some LV2 synth plugins within Ardour — and they’ve all worked well so far. The reliance on LV2 for synth plugins is an issue I’ve mentioned before, and there are still only a handful of LV2 synths, but I’ve had good fun with Calf Monosynth (the git version adds LFOs and a new UI), and with Jeremy Salwen’s ports of the “SO” synths. The SO-KL5 “piano” synth sounds really nice in a way that’s not entirely dissimilar to an electric piano.

Calf Monosynth, with some smooth filter cutoff automation

Calf Monosynth, with some smooth filter cutoff automation

Automation, especially on MIDI CC messages, is quite sketchy at the moment (it should be addressed in alpha 9), but I did get it working for plugin parameters; in this case, the filter cutoff of a Calf Monosynth instance. This worked really well, giving me some lovely, smooth filter sweeps. If alpha 9 lets me automate parameters on my Blofeld just as easily, I’ll be a very happy man.

Qtractor is adding automation in its next release, too, so one way or another, it looks like we’ll definitely have some solid synth automation features under Linux this year.

new track: move along

This track has been a long time coming, but it’s finally done! It’s my first original track with lyrics; it’s about leaving my job after so many years there, though I wouldn’t read too much in to the words. It’s certainly a departure from my usual electronic stuff — this has just piano, bass, drums, and vocals — so I’m keen to hear what people think of it.

You can download or stream it below, or at Bandcamp. Some production notes are under the cut.


mp3 | ogg | flac | 3 minutes 47 seconds

Continue reading

sketchbook: ghetto convolution reverb

Convolution reverb is a hell of a trick — it lets you record the reverb of a real-world environment (or a hardware reverb unit) and apply that reverb to a signal, with amazingly realistic results. Normally, those reverbs are recorded very carefully using high quality equipment, but I wanted to see what I could manage with something more modest: my phone.
Continue reading