GNU Music project - manifesto

Han-Wen Nienhuys and Jan Nieuwenhuizen

Table of Contents

1: Goal

2: Requirements

3: Components

4: Programs



1: Goal

The public deserves free tools for composing and printing.

2: Requirements

Emacs and TeX serve as useful examples of what programs by the GMP should be.

high-quality
The software should be of high-quality from the application view. For example, the notation should be high-quality from an engraving point of view, like TeX

high-quality
The software should be of high-quality point of view, like all GNU software, it should have no limits, be fast, etc.

tweakable
Printed music has a lot of styles, and special symbols. It may be unfeasible to provide and maintain lots of code that is hardwired into the system. The tools should be extensible/programmable like Emacs and TeX.

easy to use.
That is, for technical users (that can read a manual). The learning curve should be as flat as possible but not at the expense of comfort of use and power.

3: Components

A set of music fonts
In development, the Feta font.

A typesetting engine
In development, included in LilyPond. A system with rules on how to set properties of items to be printed (up/down directions, breaking, dimensions, etc) It should be suited to interactive typesetting (so, incremental algorithms are needed)

A display engine
which can display clear notewriting in (say) an X-window Ideally the system should cooperate with the typesetting engine

An ASCII language
In development, LilyPond has a language. Having an ASCII format which enables urtext, and easy sharing (via mail and news forums) encourages cooperation and exchange of music.

A printing engine
In development, included in LilyPond.

An input system
The natural way to enter composed music is singing or playing it. The GMP should have module which can take keyboard input or microphone input and convert it to computer data. (microphone input would be difficult)

sequencing
(have no clue about this)

A scanning system
Having a system which can produce mudela from printed scores, greatly simplifies creating a collection of music

A music-understanding system
(difficult) A system to generate accompaniments, figured bass, automatic accompaniment, etc.

A performing system
A system which can play credible performances of abstract music representations. LilyPond has a bare bones system, but it cannot (yet) be described as "credible".

4: Programs

  • A noninteractive typesetter, suited for batch jobs, and typesetting existing music. This would couple the ASCII language, the printing engine and the typesetting engine LilyPond is currently representing this section.
  • A GUI for composing. This would combine the display engine, the input system and the typesetting engine.
  • Libraries for reading and writing various audio/music/notation formats.

  • Return to GNU LilyPond's home page.

    Please send GNU LilyPond questions and comments to gnu-music-discuss@gnu.org.

    Please send comments on these web pages to (address unknown), send other FSF & GNU inquiries and questions to gnu@gnu.org.

    Copyright (c) 1997, 1998, 1999 Han-Wen Nienhuys and Jan Nieuwenhuizen.

    Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.


    This page was built from GNU LilyPond-1.1.57 by

    root <(address unknown)>, at Tue Jul 13 11:30:58 1999 CDT.