Originally Published: Wednesday, 5 September 2001 Author: Jason Guidry
Published to: enhance_articles_multimedia/Audio Page: 1/1 - [Std View]

The Sound of Linux Music: Denemo and LilyPond Reviewed

With Linux use expanding every day we're delighted to see that the world of music is no exception to the spread of the operating system that is both a dessert topping and a floor wax. Linux.com correspondent Jason Guidry takes a few Linux-based music notation programs out for a jingle and sings their praises.

Today most professional and academic composers and arrangers of music run Windows or Macintosh operating systems on their computers, so it is not surprising to find that the state of commercial Linux music notation software tools is still well behind their mass marketed counterparts. And with Coda Music Software and Sibelius making no plans to port their applications to *nix (Coda will even pass on OS X), the open source community has a great opportunity to step in and innovate with music notation for Linux.

However, these projects do take time. Finale, the Mac/Windows standard to which all notation programs are inevitably compared, was out for at least five years before it became the full-featured 'word processor' of music it is today. And as most notation programs for Linux are either in or just out of beta, they still have a way to go.

But they are gaining ground. In particular two programs that have been around for a while and are gaining acceptance, Mup and LilyPond. Both of these require the user to input a coded text version of the music, from which the program generates sheet music. Many problems arise from this interface, not the least of which are the terrific learning curves placed on musicians forced to learn a language and understand a lengthy 'debugging' process that must take place for each score produced. A user must find errors in an output file and then wade through thousands of lines of code to make note and rhythm changes. While this is perhaps appropriate for short examples or simple piano pieces, it is completely unsuited for jazz band or symphony orchestra arranging on a deadline.

Denemo, a Gtk+ application, aims to bridge the gap between composition and lengthy text input files. Denemo serves as a graphical frontend to the LilyPond music typesetter. It provides a musical score into which the user inputs musical notes, rhythms, and other musical markings.

RPMs are offered for Both Denemo and LilyPond, available from their project's homepage. LilyPond requires both GhostScript and TeX to work. in my experience both installed in Mandrake 8.0 with no problems, and neither program crashed during use.

Denemo's interface is very menu driven. Time and key signature changes, adding and removing staves and midi playback controls are all accessed under the appropriate menu. While this program is still in alpha, it contrasts sharply with other graphical music editors like Finale, which assign frequently accessed features to buttons on a toolbar. Musical notes are easily entered into the staff with the numeric pad, with each rhythmic duration assigned a number:

0=whole note

1=half note

2=quarter note

and so on. The user moves a cursor with the arrow keys to place notes on different lines and spaces. Notes are easily removed using the delete key.

Despite its rather limited functionality, Denemo has some very thoughtful and innovative features. Most impressive is the complete control given to the user over key bindings. This can greatly reduce the amount of time a new user takes to learn the program, as well as allow the ex-Finale user to assign familiar key bindings. Another is the use of a green cursor which turns red when a measure is full, much more friendly than Finale's error messages. Also available is the automatic spacing of notes, which saves a lot of editing time. This feature wasn't available in Finale until quite recently.

One major concern with this release is that there doesn't seem to be any way to switch between staves once they are added. The user must make sure that they are completely finished with a staff before they add another. Taking care of this flaw will greatly improve the usability of this program.

As far as development, both Denemo and LilyPond have a way to go before they can replace their Mac and Windows counterparts. Fonts and expressions are not quite manuscript looking, with beaming on 8th and 16th notes needing particular attention. Also, time signatures are written in a courier-like font rather than the more stylized numerals in printed music. The example above illustrates this, as well as Denemo/LilyPond's bizarre way of marking tuplets (note septuplets in the bass staff). This will surely improve with the program's graphics overall, but seems to be a symptom of LilyPond's text based roots.

Currently, developers are focusing on expanding the functionality of their program, providing mass editing options, repeat notation, and a point-and-click keyboard to assist note entry. The developers will also have to look at providing buttons for frequently used features, as well as giving more options to use the mouse on the score, for moving notes, placing expressions and the like. While this is an issue with any GUI frontend, it's more so with a music editor, since notation itself a graphic.

So for the time being, Denemo is best suited for quick musical examples and writing out individual parts, and it fills those requirements nicely. However, it is not yet a Finale replacement, and it will be a while before it is. But the areas in which this program excels makes it a very exciting project to watch, and one that I'll be rooting for.