At the Sounding Edge: LilyPond, Part 2
Last month we looked at some of the the basic operations of the LilyPond music typesetting software. We saw that LilyPond is a TeX-based language specifying the complexities of Western music notation and capable of producing excellent PostScript printable output. This month, we look at three GUI front-ends for LilyPond: the Rosegarden sequencer, the NoteEdit music notation editor and the Denemo LilyPond file preparation utility. I've also appended a brief account of the music and sound topic presentations made at this year's Libre Software Meeting. But first we return to the 'Pond.
Rosegarden is an advanced audio/MIDI sequencer with support for music notation. You can compose your music in Rosegarden by digitally recording audio, by recording MIDI sequence data, by entering Western music notation symbols or by any combination of these three methods.
The ability to enter music in standard notation always has been central to Rosegarden's design. Rosegarden does not pretend to provide a complete notation editing environment in the manner of Finale or Sibelius, but its notation editor supplies most common Western music notation symbols and directives, facilitating the creation of basic conventional scores. When your work is ready, Rosegarden can export your notation data in the Mup and MusicXML formats and, of course, LilyPond too.
Where a GUI is concerned, one screenshot saves many words. Figure 1 shows off Rosegarden's notation editor with the beginning measures of a piece written with the tools available from the palettes and menus seen in the screenshot. The notes, rests, articulations and other markings are selected from the symbol palettes and entered on the virtual staves. Edits can be made to single notes or groups of notes. Rosegarden automatically renders the notation into MIDI sequence data, so with the proper MIDI sound set up, you can audition your work at any time, from any point in the music.
Let's open Rosegarden's File/Export dialog to save the example in Figure 1 as a LilyPond file named lj-test-01.ly. During the export process, the LilyPond options dialog seen in Figure 2 opens. After setting our preferences, click on the OK button to complete the export.
Now we can process the exported file with LilyPond. This simple command lilypond lj-test-01.ly converts the LilyPond file exported by Rosegarden into the high-quality printable PostScript output seen in Figure 3. Of course, we can edit the LilyPond file to add many other symbols and signs, but for this example, I wanted to illustrate the simplest export and conversion procedure.
Joerg Anders' NoteEdit is a dedicated music notation editor, designed to provide notation-literate composers with a familiar working environment. Like Rosegarden, NoteEdit supplies various symbol palettes and editing functions to facilitate the entry of notes and other musical signs on a staff or staves. Work can be auditioned at any time, but NoteEdit does not offer a MIDI sequence editor as Rosegarden does. Finally, NoteEdit offers a broad range of export targets, including MusiXTeX, PMX, ABC, MusicXML and LilyPond.
Figure 4 shows NoteEdit's main display with two staves prepared for guitar and bassoon. I exported this work as a LilyPond file named lp-test-ne.ly. I then processed it with the LilyPond binary. The screenshot in Figure 5 is NoteEdit's LilyPond options dialog, similar to what we saw in Rosegarden. I clicked the Start Export button in that dialog, and voilá, I had a new LilyPond file from NoteEdit. Alas, my versions of NoteEdit and LilyPond were not in sync, so I used the convert-ly utility to bring the file format up to date. See last month's installment of this article for details on how to do that. Next, I ran this familiar command sequence lilypond lj-test-ne-converted.ly to create the PostScript output seen in Figure 6. Obviously, a little manual touch-up is required; Figure 7 demonstrates the results after some manual edits to the LilyPond file.
Similis sum folio de quo ludunt venti.
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Sponsored by AMD
If you already use virtualized infrastructure, you are well on your way to leveraging the power of the cloud. Virtualization offers the promise of limitless resources, but how do you manage that scalability when your DevOps team doesn’t scale? In today’s hypercompetitive markets, fast results can make a difference between leading the pack vs. obsolescence. Organizations need more benefits from cloud computing than just raw resources. They need agility, flexibility, convenience, ROI, and control.
Stackato private Platform-as-a-Service technology from ActiveState extends your private cloud infrastructure by creating a private PaaS to provide on-demand availability, flexibility, control, and ultimately, faster time-to-market for your enterprise.
Sponsored by ActiveState
| Non-Linux FOSS: libnotify, OS X Style | Jun 18, 2013 |
| Containers—Not Virtual Machines—Are the Future Cloud | Jun 17, 2013 |
| Lock-Free Multi-Producer Multi-Consumer Queue on Ring Buffer | Jun 12, 2013 |
| Weechat, Irssi's Little Brother | Jun 11, 2013 |
| One Tail Just Isn't Enough | Jun 07, 2013 |
| Introduction to MapReduce with Hadoop on Linux | Jun 05, 2013 |
- Containers—Not Virtual Machines—Are the Future Cloud
- Non-Linux FOSS: libnotify, OS X Style
- Linux Systems Administrator
- Validate an E-Mail Address with PHP, the Right Way
- Lock-Free Multi-Producer Multi-Consumer Queue on Ring Buffer
- Senior Perl Developer
- Technical Support Rep
- UX Designer
- Introduction to MapReduce with Hadoop on Linux
- RSS Feeds
- user namespaces
1 hour 30 min ago - yea
1 hour 56 min ago - One advantage with VMs
4 hours 25 min ago - about info
4 hours 58 min ago - info
4 hours 59 min ago - info
5 hours 20 sec ago - info
5 hours 2 min ago - info
5 hours 3 min ago - abut info
5 hours 5 min ago - info
5 hours 6 min ago
Featured Jobs
| Linux Systems Administrator | Houston and Austin, Texas | Host Gator |
| Senior Perl Developer | Austin, Texas | Host Gator |
| Technical Support Rep | Houston and Austin, Texas | Host Gator |
| UX Designer | Austin, Texas | Host Gator |
| Web & UI Developer (JavaScript & j Query) | Austin, Texas | Host Gator |
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?










Comments
great
As an experienced amateur pianist and composer of classical music, I consider that, for those special cases, i.e. scores of low-to-intermediate complexity such as 4-part fugues for organ on 2-staves, use of the fine-positioning feature in Rosegarden makes it possible to get an equally high-quality of typesetting in Rosegarden as that available in Lilypond. Only in these special cases are the results equal,and I think that for some users it may be all they need.
Lilypond GUI for GNOME
So far I tried installing the three previous GUIs for Lilypond and only Denemo seems to be working. I used Ubuntu (Intrepid) therefore GNOME is the default environment. I would also include Kile as a GUI for Lilypond, I tried but I am still chewing the Lilypond TeX language.
Thanks for your post it's still very useful up to this date.
Denemo update (author's note)
I've been hacking around with Denemo and have some news to report. First, the GTK2 build supports a LilyPond text editing mode that is on-screen with the default Denemo notation display. It looks very cool, but alas, it's not working for me yet. The mode comes up fine, but I'm unable to actually edit text. Still a cool idea, I hope the developers work on it.
I also discovered that the dynamics weren't displayed due to a font locale setting. Setting LANG to C fixes it for me.
Btw, Denemo definitely needs developers. Adam Tee and Guenter Geiger are doing as much as they can, but both are obliged elsewhere. If anyone is looking for a worthy Linux music app coding project check out the Denemo sources.
Couple of Things...
Lillypond is the best type setter arround for unmetered choral music. This insistance upon adhereing to a metered scale in every other music notation editor under the sun makes creating sheet music impossible.
That said I have yet to try one of the GUI's, but I suspect the metered aspect is enforced.
Second, I really wish they would iprove their overall packaging. Compiling from source is VERY difficult due to dependancies etc... and their availibility of RPMs is very small. I wish I could help in that department but I have no clue when it comes to that sort of thing.
NoteEdit update (author's note)
Just a quick note to say that NoteEdit 2.7.x has fixed its sync problem with LilyPond version 2.2.x. The convert-ly step is currently not required, I can simply run the LilyPond binary on the NE-created LilyPond score file, and voila, I have a brand new PostScript file courtesy NE and LilyPond.
Best,
dp
Re: NoteEdit update (author's note)
This is true, so long as you're using Lilypond 2.2. The development branch (2.3) has changed the input file structure (again) and is close to being released as stable 3.0 I believe.
The other problem is that NoteEdit doesn't stay up with LilyPond terribly well -- this is part of the price of stability!
So to qualify your comment, if you're running current NE and stable LP, you probably won't have problems, but convert-ly is only a console away if it's needed!
How to get Lilypond quality inside Rosegarden
The small difference in quality of typesetting between Rosegarden and Lilypond can be eliminated if you are prepared to use the new manual "fine-positioning" feature in Rosegarden 0.9.9 with which it is possible to make adjustments to the positions of most types of notation object (shift-click on an object and drag it to the required position). In most places on scores of intermediate complexity, Rosegarden's typesetting quality is excellent meaning there is no need to do fine-positioning. When flaws in the typesetting do occur, they are usually limited to a relatively small number of notation objects and can be quickly fixed using the fine-positioning feature.
Re: How to get Lilypond quality inside Rosegarden
Typesetting is not just a matter of positioning objects at the right
X,Y locations. For example, sloping of beams and slurs should follow
rather complex rules, which would require more advanced positioning than
click & dragging with the mouse.
I suspect that you and I have a different idea of quality typesetting, so
I'd be interested to see a sample of this "fine-positioned excellent" print.
(Not trying to put down RG, -- I love it -- but I happen to think that it comes nowhere near LilyPond)
Han-Wen
(LilyPond author)
Re: How to get Lilypond quality inside Rosegarden
The process of music-typesetting clearly involves a range of layout issues that is not limited to the absolute position of each notation object. Indeed, Rosegarden and LilyPond both use algorithms which automatically determine layout in terms of a wide range of issues including beam slope, slur slope, stem length, etc. The layout algorithms used by LilyPond are in many cases certainly more sophisticated than those used by Rosegarden. Consequently, LilyPond nearly always does excellent typesetting for scores of any complexity. However, for scores of "low-to-intermediate" complexity, the essential differences in typesetting quality between Rosegarden and LilyPond are, in many cases, not very large - perhaps surprisingly - and those essential differences, though not all types of difference, can be eliminated by using Rosegarden's fine-positioning feature, in spite of the fact that this feature is limited to x,y positioning. For those special cases where a successful result can be achieved using Rosegarden's fine-positioning feature, there are, of course, still some remaining differences in typesetting between Rosegarden and LilyPond but these differences are what I consider to be matters of taste, not of quality. As an experienced amateur pianist and composer of classical music, I consider that, for those special cases, i.e. scores of low-to-intermediate complexity such as 4-part fugues for organ on 2-staves, use of the fine-positioning feature in Rosegarden makes it possible to get an equally high-quality of typesetting in Rosegarden as that available in Lilypond. Only in these special cases are the results equal. There are also, of course, many other cases, especially but not only scores of high complexity, in which the quality of Rosegarden's typesetting is significantly and uncorrectably lower than that of LilyPond, regardless of any usage of Rosegarden's fine-positioning feature. By the way, thank you very much for LilyPond; I think it is excellent software.
Re: How to get Lilypond quality inside Rosegarden
I meant to write, "Only in these special cases are the results of equal quality."
Author's reply
Hello Han-wen !
I think it's important to stress the great difference between LilyPond and Rosegarden, NoteEdit, Denemo, etc. : LilyPond is an engine, a powerful typesetting engine that has not necessarily been designed to be music composition software. RG and NE are clearly designed for music composition, and their notation capabilities will of necessity fall short of LP's greater resources. LP is very specific in its task orientation, the others are more general in their purpose and designs. I have tried to describe RG and NE as front-end GUIs for the creation of LilyPond scores, and hopefully I've indicated that LP provides many features not likely to be found in the general-purpose music programs. As you point out, music typesetting is an enormously non-obviously complicated art, and until someone really studies it (as have you and Jan) it's easy to assume it's easier than it really is. I'm glad RG continues to develop its notational facilities, and I think that for some users it may be all they need. However, for the very best printed results I'll still prefer to hand-edit LP scores, regardless whether I've produced them directly or in another application. The results are just so sweet...
Best regards,
dp
Re: At the Sounding Edge: LilyPond, Part 2
All respect for the great work of the programmers behind these music notation guis, but they still have an enormous lot of work to do in order to produce decent output.
LilyPond itself is the only program you can get decent (excellent) sheet music out of.
What I would love to see is some gui that accepts MusicXML input and that builds upon the LilyPond internals directly. Guess we'll have to wait for LilyPond to stabilise its file format even more, and for a Cairo-based GnomeCanvas...
Re: At the Sounding Edge: LilyPond, Part 2
LilyPond itself is the only program you can get decent (excellent) sheet music out of.
That's not strictly true. It is possible to use the "fine-positioning" feature in Rosegarden 0.9.9 to get Lilypond's quality of typesetting in Rosegarden's scores -- please read my other comment (Subject: "How to get Lilypond quality inside Rosegarden") attached to this article for more details.