Rosegarden - An open source MIDI / audio multi-tracker
by Richard Hillesley
Beating to a different drum
"Numbers and lines have many charms unseen by vulgar eyes, and only discovered to the unwearied and respectful sons of Art. In features the serpentine line (who starts not at the name) produces beauty and love; and in numbers high powers and humble roots give soft delight" - Elias de Joncourt
Rosegarden is a tool for making and understanding music, a general-purpose MIDI and audio sequencer, score editor, and music composition and editing environment that is released under the GPL, and runs exclusively under GNU / Linux.
Rosegarden allows recording, arranging, and composing music in the shape of a traditional score, MIDI data, or audio file – either recorded or imported. It can be used to write, edit and organise music to create a composition, which can be mixed down along with added effects for burning to CD, or for distribution on the web. Rosegarden also contains well-rounded, notation editing support for high quality printed output of sheet music via GNU LilyPond.
Rosegarden can be seen as the free software equivalent of the commercial proprietary programs CuBase or Cakewalk. It was begun as an academic project by Chris Cannam and Andy Green at the University of Bath in 1993, under the tutelage of Professor John ffitch, who is best known as the long term custodian and maintainer of the CSound audio programming language. Cannam wrote the notation editor, and Green was responsible for the MIDI sequencer. Early versions of Rosegarden were developed on Irix. The Linux port began in 1995 when a third developer, Richard Bown, became involved.
As Cannam tells it, "When we first released an early version of Rosegarden, in 1995, we just shoved the source code out without a licence at all; we added the GPL after a couple of years when it became apparent that it was a fair reflection of the way we actually felt about our code."
"I think that's what is attractive about the GPL: it pretty succinctly sets out the way a lot of hobbyist programmers already feel about the way other people should use their work."
Since this time there has been a small but steady stream of new contributors to the project, including some, such as D. Michael McIntyre and Guillaume Laurent, who over the course of many years have become core developers, and others such as Julie Swango, Pedro Lopez-Cabanillas, and Heikki Junes who have made very substantial contributions.
Just a hobby
Rosegarden has evolved into a tool that is equally useful as a practical means of editing and composing music for professional musicians, and as a learning tool for hobbyists, students or amateur musicians who want to explore the possibilities of recording, arranging and composing music, either through their instruments or from other sources.
The interface for the original Rosegarden was written under X11. By 2001 this looked dated and Guillaume Laurent spurred the project back into life by declaring "If we lose focus again, [Rosegarden] is dead. It has already been brought back from limbo a couple of times, there won't be a next one." Subsequently, Rosegarden was rewritten from scratch in C++ for KDE, using the Qt framework, and has been in good shape ever since.
"Our early goals for Rosegarden weren't really focused enough," says Cannam. "We had three developers who were all interested in rather different aspects of music making, and we tried to do all of them. We never really settled on an individual 'ideal user', and so ended up trying to please everyone."
"I don't think free software works very well that way. Come to that, I'm not sure any software works well that way. You have a specific individual user in mind, so you know exactly what they need to do and can understand the extent to which your software satisfies them. You need to be able to instantly answer questions about what your user will do and expect. We did work this out eventually, but it took too long."
Where once Rosegarden tried to fulfil all the ambitions of its contributors it now aims simply "to be a sequencer for people who use MIDI instruments, but who mostly like to work in music notation."
"Psychologically, trimming down our target audience in this way also means making peace with the fact that there are other applications out there that people may prefer to use – a consequence of the fact that we are not in a capitalist market is that we can happily send would-be users to other software if it would be more suitable."
Art for art's sake
For Cannam, working on free software and making music spring from a similar impulse. "Many musicians have a best-loved instrument which has been with them," he observes, "scuffed about and personalised according to their own experiences. I think of free software as offering that idea in the software world - software that is all about you rather than all about the experiences of its developers."
"That's a clumsy ideal that obviously won't always work out, but software recently has been rather resistant to being moulded by the individual, and it's not obvious what other means we have to improve on that."
"Can hobbyists ever compete with commercial software?" he asks. "Do hobbyist developers have their own distinctive qualities that sabotage their software? I'm not sure that I care. I don't think it's right for a hobbyist to be wasting their time trying to compete with commercial software developers."
"Surely the right outlet for enthusiastic labour is to do something you love that helps the people you love, not to compete with or destroy some imagined enemy in the commercial software world. Competing with commercial software developers is the job of other commercial software developers. Making their lives harder may be an acceptable side-effect of hobbyist labour, but it's not an acceptable goal. Free software isn't a capitalist market. Don't be tricked into doing the work of the Man!"