wednesday reading list

I’ve mentioned Mixing Secrets for the Small Studio a couple of times now — it’s a great read, and I’m learning a lot from it, but mixing is just a part of making great music. Finding inspiration, getting ideas down, and then developing those ideas in to complete tracks are the real challenges, but there’s some great advice online for doing just that.

It was an article on Create Digital Music that reminded me about those challenges today — it contains seven “tips for creative success”, and they’re all right on the money. They talk about making use of what you have rather than focusing on what you think you need, and the importance of spending time on the music and having fun rather than sweating over tiny bits of finesse that no-one will notice anyway.

Some of the most enlightening posts I’ve ever read about making music come from general fuzz, a producer of some excellent (and free!) downtempo electronica; his “lessons” posts are a fantastic read. Some of his points relate specifically to music, and electronic music in particular, but many of them relate just as well to any other creative pursuit.

He covers a lot of ground: the value of finding your audience rather than relying solely on friends and family for feedback, of waiting before releasing new work rather than pushing it straight out, of actually finishing something, even if it’s not “perfect”, and of not getting disheartened by the fact that no-one will care about your work quite as much as you do.

I think that last point is particularly important. It’s great to make things that others enjoy, and to take joy from that, but if you’re not creating for yourself first, enjoying the process as much as the result, then you’ll ultimately end up frustrated.

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.

it’s here! native vst support in ardour 3

Ardour 3.0 is still in alpha, but it gained a substantial new feature last week: support for native Linux VST plugins. It’s a feature that’s been on wishlists for a while, but it’s become more important over the last year or so, as the number of VST synths for Linux has increased. The big drawcards are the commercial synths — Pianoteq, discoDSP Discovery, and the various Loomer plugins, for instance — but more open-source VSTs are appearing now too, such as the TAL synths, ported from Windows by KXStudio developer falkTX in his new DISTRHO project.

The new features use the unofficial Vestige VST headers, which means that Ardour avoids the need for users to download the official Steinberg VST SDK and build Ardour themselves. Having said that, the new VST support is a build-time option that’s disabled by default, but I’m hoping that it will be enabled by default, and available in the official binary builds of Ardour, before the final 3.0 release.

Ardour 3 SVN, running the Loomer Cumulus and TAL-Dub-3 native VSTs

As handy as this is, there has been some discussion about whether or not native VST support is a good thing. VST isn’t a particularly elegant plugin system, and given Steinberg’s licensing restrictions, it’s always going to be harder for the developers of hosts like Ardour to deal VST with than other plugin formats, such as LV2. I would hate to see this VST support discourage developers from working with LV2.

Realistically, though, it’s hard to expect commercial plugin developers to embrace LV2, on top of the effort already required to bring their plugins across to Linux. Indeed, now that Ardour has joined Qtractor and Renoise in supporting VST plugins, the size of their combined user bases might encourage more plugin developers to offer Linux support.

I hope we’ll see more ports of open-source Windows VST plugins too, but for anyone developing a new open-source synth plugin, or working on a plugin version of an existing standalone synth, LV2 makes much more sense. Regardless of how open-source they may be, VSTs that rely on Steinberg’s headers will never be allowed in to distributions. With David Robillard’s new LV2 stack, which is already in use in both Ardour and Qtractor, LV2 is a fast, reliable, and highly capable standard, and its use will only increase, regardless of what happens with native VST support.

a week-and-a-half with GNOME 3

I’m as surprised as anyone to admit it, but I’ve spent the last using GNOME 3, and it hasn’t been too painful — in fact, I’ve had no trouble remaining productive in it. I’ve definitely missed some of GNOME 2′s features, but it’s definitely been a more pleasant and productive experience than my time with Ubuntu’s Unity desktop after the 11.04 release.

A lot of people have reacted poorly to GNOME 3, and I can understand their frustrations. I’m not sure why I haven’t had the same experience, but perhaps my time with Mac OS X has something to do with it — I’m already used to using the Expose-style overview in the GNOME Shell, and to having Alt-Tab work on an application-level. There’s a new key combo for switching between the windows of an individual application; it defaults to Alt and whatever key sits above the Tab key in your locale (Alt-` in my case). It still took a bit of adjustment, but I was soon zipping between windows and launching applications without any dramas.

GNOME Shell's overview provides quick access to your applications and windows

The GNOME Shell cheat sheet covers a lot of the less obvious functionality built in to the Shell. I do find some of the hidden functionality a bit silly — having to hold Alt to reveal the “Power Off” menu item, for instance — but it still doesn’t take long to come up to speed.

I will add one caveat to my comments: I’ve been using GNOME 3 on my laptop, where (as I remarked a couple of posts back) I spend most of my time using Firefox, Chrome, Thunderbird, terminal windows, and a text editor. I haven’t used it with JACK and my regular assortment of music tools yet, so I’m still not sure how it’ll handle that workflow, or if its greater use of video hardware is going to cause any latency issues.

A quick reality check, nine years in the making

One thing I can’t help but feel in the release of GNOME 3.0 is a sense of history repeating; after all, it’s not the first major release of GNOME to slash away at the desktop’s feature set and remodel the remains based on design principles put together by a core team of developers.

Red Hat Linux 8, with the then-new GNOME 2.0. I'd forgotten how much like a browser Nautilus looked

GNOME 2.0 had substantially less functionality and configurability than the 1.4 release that preceded it, and it imposed a set of Human Interface Guidelines that described how user interfaces should be designed. I think you’d have a hard time finding someone today who’d claim that those changes weren’t for the best in the long run, but at the time, the streamlining was considered too extreme, and the HIG was controversial.

I think we forget just how much was missing in GNOME 2.0, partly because it’s been so long, but mostly because all of the really important features have found their way back in. To remind myself, I took a look back in time: I installed Red Hat Linux 8 in a VM and fired up its default GNOME 2.0 desktop.

The configuration dialogs in GNOME 2.0 did actually cover some options that are currently missing in GNOME 3, such as font and theme settings, and its panels had greater flexibility than the GNOME Shell’s single top panel, thanks to the bundled selection of applets. However, there were surprisingly few applets that provided functionality that hasn’t been incorporated in to GNOME 3 in some way.

Even this minimal window settings dialog from Red Hat 8 wasn't an official part of GNOME 2.0. A complete window settings dialog was added in the next release, GNOME 2.2

Leafing through the release notes for the subsequent GNOME 2 releases showed how quickly some of its missing functionality came back, and just how much the desktop has been polished over the years. While GNOME 3 throws away the visible desktop components, there’s a lot of GNOME 2 still in there, from the power, disk, sound, and networking management infrastructure through to its many tools and utilities.

GNOME 3.0 is a little different from GNOME 2.0 in that it changes the basics of navigating your desktop, and the developers have so far resisted requests to relax those changes. I’m still sure that it’s going to improve rapidly, though, and I do think that its developers will take the various criticisms on board. I don’t expect any dramatic design reversals, but I do expect improvements and refinements that will make GNOME 3 a viable option for many of the users that find it frustrating today.

2011 macbook air linux update

As I mentioned previously, I’ve been playing with Ubuntu on my 2011 Macbook Air, and I’m happy to report that it’s now much more usable than when I first installed it. There’s a kernel module hack that fixes the display issues, allowing the Intel driver to run at the panel’s full 1440×900.

Having the Intel driver running instead of the fbdev driver means that OpenGL and visual effects (and Unity, if you’re in to that sort of thing) work, as does brightness adjustment, and I suspect it’s the reason that suspend and resume now work, too. Patching the kernel manually would be a pain, but the (updated) setup script from the Ubuntu forums now takes care of this for you, along with the keyboard and trackpad driver patches.

Ubuntu 11.04 on the Macbook Air, with all the important stuff working

I also had a chance to test the Ubuntu 11.10 beta. I haven’t tested it with the video fix above (though it is supposed to work), but I did notice that the my 5Ghz 802.11n network worked with it, so it seems like the 5Ghz issues I’m having with 11.04 have been fixed.

All of the important stuff is working, then, at least for my needs. There are some minor keyboard niggles — I haven’t been able to adjust the keyboard backlight brightness, and the volume keys are incorrectly mapped — but the biggest issue is with the trackpad. It works, including two-finger scrolling and two- and three-finger taps and clicks, but it doesn’t feel quite right, particularly when scrolling.

It seems like a minor thing, but the trackpad is central to the user experience, and when basics like button presses and scrolling rely to a degree on gesture recognition, it matters a lot that they’re detected reliably and respond appropriately. The multitouch driver is under active development, though, so I have no doubt it’ll improve.

I really enjoying benchmarking this thing, just to see how much power has been crammed in to it. Compiling Ardour 3 from SVN seemed like a good test of overall system performance: it managed it in 14 minutes and 50 seconds, just under two minutes faster than my 3Ghz Core 2 Duo desktop. It’s definitely no slouch!

switching back: the 2011 macbook air

UPDATE: I’ve just posted some updates on the state of Ubuntu on the 2011 Macbook Air.

With my old Dell laptop starting to suffer some physical wear and tear, I figured it was time for an upgrade. I couldn’t find a solid PC laptop that fit my needs, particularly in terms of portability and battery life, so I made a potentially controversial decision — I chose the brand-new 13″ Macbook Air. I won’t be using it for music-making, but after using it for work over the last week, I’m definitely happy with my choice.

I had sworn off Mac laptops for a few reasons: Apple’s power supplies and slot-loading DVD drives have always given me trouble, and my Macbook Pro ran very hot at times. Thankfully, the new power supply design seem less fragile, the Air has no DVD slot to worry about, and while it does howl a bit when working hard, that’s preferable to getting super-hot.

It’s also surprisingly quick — its 1.7Ghz i5 CPU outpaces even my 3Ghz Core 2 Duo desktop, and the SSD makes everything feel snappy. The Intel video isn’t brilliant, but it’s fast enough for most indie games, and even for a bit of Civilization IV or Left 4 Dead 2 on low-quality settings.

The Air’s fixed hardware is definitely a departure from my easily-serviceable old Dell, but it does help it to fit both a powerful system and a lot of battery in to a very light and slender frame. I wouldn’t want it to be my only computer, but it’s great as a portable extension of my desktop and home network. I’m sure I’ll have to give up the whole machine if it ever needs repairs, but with Time Machine backups configured (using my Ubuntu file server), I don’t really have to worry about losing data.

Mac OS X is, well… it’s Mac OS X. It has its advantages: it’s very well tuned to the hardware, making the most of the multi-touch trackpad, resuming from suspend in a second or so, and lasting a good seven hours on battery with a light load. It’s also great to have access to things like Steam. On the other hand, it’s still a bit annoying as a UNIX compared to Ubuntu, the Mac App Store is a shambles, and having to hack the OS just to stop it opening iTunes when I press my keyboard’s “play” key is completely asinine.

However, the reality is that I spend 99% of my working day using Firefox, Chrome, Thunderbird, a text editor, and a bunch of terminals, and Mac OS X meets those needs just fine. (For the record, I’ve been using TextWrangler and iTerm2.)

Ubuntu on the 2011 MBA

Ubuntu running, in a fashion, on the 13" 2011 Macbook Air

The Air can run Linux, too, though it’s not terribly usable yet. The trackpad works in mutli-touch mode after some hacking, but there’s no power management, and the Intel driver doesn’t work with the built-in display, so you’re stuck with unaccelerated 1024×768 video. The wireless works, too, which makes it unique among current Mac laptops, though only in 2.4Ghz mode.

I generally think it’s a bad idea to buy a Mac to run Linux, since the hardware is odd enough to cause these kinds of problems, but it’s always nice to know that I can run it if I need to. There’s a thread on the Ubuntu forums with all the details, and one post in particular that has a script to install patched keyboard and trackpad drivers.

a new lv2 synth: the newtonator

I’ve just updated my big list of LV2 soft-synths with a brand new entry: a bizarre synth called The Newtonator. It’s a unique synth, with algorithms based on the laws of gravitation. The sounds it makes are almost all bizarre, distorted creations, though the samples on the website suggest that it is capable of being tamed a bit to create more melodic sounds. In any case, it’s a lot of fun to play with, so if you’re in to sound design and unique sounds, it’s definitely worth checking out.

The Newtonator

The Newtonator: a new LV2 synth that makes bizarre, distorted sounds

an experiment with ccmixter

Creative Commons licences allow musicians, artists, and other creative people to create new and unique works based on the works of others. While you can often do interesting things based on finished pieces, having access to the individual components gives you a lot more flexibility, and it’s that access to components that ccMixter aims to provide.

ccMixter lets users do two core things: upload samples of their own creation, and upload remixes made using samples from other users. The samples that people upload range from individual sounds and solo recordings through to the stems (that is, the individual tracks) from full, mixed songs, so there’s a wealth of stuff to work with.

The most impressive thing feature of ccMixter is its attribution tracking on remixes. When you upload a remix, you tell ccMixter which samples you used, so it’s very easy to see what samples are used in a remix, or what remixes make use of your samples. It all gets complicated once you start using remixes within other remixes, but ccMixter displays the attributions as a tree, giving you a simple, and very cool, overview of a remix’s entire history.

I’ve always had a “do-it-yourself” attitude with my music, creating a lot of my own sounds and recording all of my own tracks, and I don’t see that changing just yet. As an experiment, though, I uploaded the stems for “move along”: complete and separate main and backing vocal, bass, and piano tracks, and a mixed stereo drum track.

I wasn’t sure if anyone would do much with it, but to my surprise, there are three remixes on the site using those samples — you can check them out from the link above. There’s a constant influx of new material, so you don’t have long to catch people’s attention, but it’s definitely exciting to know that people are listening to your work and using it in new ways. I’m sure I’ll be uploading more tracks in future to see what other users can do with them.

farewell old router, hello new router

For about the last seven years our home network connection has been served a Linksys WRT54GS, the slightly-upgraded version of the iconic WRT54G that began the custom router firmware craze. Thanks to the excellent Tomato firmware I’ve been hesitant to upgrade it, despite having a house full of 802.11n laptops and gigabit Ethernet desktop, but it had been flaky of late, so it was time to jump ship.

Linksys WRT54GS

My dusty old WRT54GS, with one missing antenna, has been better days

My chosen replacement is the Netgear WNDR3700. With dual-band 802.11n and gigabit Ethernet it’s a major upgrade — I can easily get 60-70MB/s between my desktop PC and HTPC/file server (maxing out the disk), and about 12MB/s over the wireless from my laptop. There’s also a USB port, though I’m not sure if I’ll do anything with that, yet.

The stock firmware lacked some features that I’m used to having, such as DNS hosting for the local domain, so I soon switched to DD-WRT. Installing it was more of an ordeal than I expected, though; the version linked from, of all places, the DD-WRT wiki entry for the WNDR3700 caused the router to sit there rebooting in a loop. After much frustration some I found an older build that I had better luck with, and by working through the Atheros tuning guide I managed to get a little more speed from the wireless network.

DD-WRT is a far cry from the elegance and simplicity of Tomato, but it definitely has a wealth of features. It’ll take me some time to dig through it all, but for now, it’s doing everything I need.

lv2 synth updates

I’ve just finished some updates on my big list of LV2 synths — here’s a brief list of the changes:

  • Calf Fluidsynth, despite being marked as “experimental”, does actually seem to work quite well for me — it’s definitely worth testing yourself if you’re interested in soundfonts
  • Composite Sampler has been updated (it’s now at version 0.006.2), with fixes for the bugs that prevented it from working in Ardour 3
  • lv2-mdaEPiano and ll-plugins Rudolf 556 both work after upgrading lv2-c++-tools to version 1.0.4; earlier versions have a bug that prevents synths built against it from loading in to Ardour

Check the original post for the full details.