User Tools

Site Tools


lilypond:start

Lilypond Music Notation

Lilypond is FOSS Music Engraving. I ignored it for quite a while. When I eventually evaluated it, it turned out that it was exactly what I needed for annotating musical ideas.
<iframe src="http://homepages.abdn.ac.uk/j.t.montgomery/pages/journal/svg/reading_1.svg" width="900" height="300" style="overflow:hidden; border:0;"></iframe>
It can output MIDI files and beautiful SVG music engraving simultaneously.
<object type="audio/x-midi" data="http://homepages.abdn.ac.uk/j.t.montgomery/pages/journal/svg/reading_1.mid" width="200" height="50" align="absmiddle"> <param name="src" value="http://homepages.abdn.ac.uk/j.t.montgomery/pages/journal/svg/reading_1.mid" /> <param name="autoplay" value="false" /> <param name="autoStart" value="0" /> alt : <a href="http://homepages.abdn.ac.uk/j.t.montgomery/pages/journal/svg/reading_1.mid">reading_1.mid</a> </object> Snippet 1<br/> <object type="audio/x-midi" data="http://homepages.abdn.ac.uk/j.t.montgomery/pages/journal/svg/reading_1-1.mid" width="200" height="50" align="absmiddle"> <param name="src" value="http://homepages.abdn.ac.uk/j.t.montgomery/pages/journal/svg/reading_1-1.mid" /> <param name="autoplay" value="false" /> <param name="autoStart" value="0" /> alt : <a href="http://homepages.abdn.ac.uk/j.t.montgomery/pages/journal/svg/reading_1-1.mid">reading 2</a> </object> Snippet 2
The scripting for above looks like this:

\version "2.14.1"

\markup { 
\override #'(font-name . "Lucida Calligraphy") {
 These are some lines from my notebook } }

\markup {
\override #'(font-name . "Lucida Calligraphy") {
 They don't neccessarily make sense since they are written when I have no access to an instrument. } }

\markup {
\override #'(font-name . "Lucida Calligraphy") {
 The pitches are therefore imagined. } }
\score {

\relative c' {
	\time 6/8
	\tempo 4. = 120
	r2 e8 g | a g e4 e8 g | a g e4 e8 g | a g e d c a | 
	a2 c8 d | d e c a4. | g8 a a2 |
	}
\layout { }
\midi { }
}	

\markup { 
\override #'(font-name . "Lucida Calligraphy") {
This is the second snippet. } }
\score {
\relative c' {
	\time 3/4 
	\tempo 4 = 140
	\partial 4
	%\key g
	e4 | d2 e4 | e8 g e4 e | d2 e4 | e8 g  e4 g8 a |
	b2 c8 b | a g f e d4 | e2 a8 g | f d a4 c |
	}
\layout { }
\midi { }
}

… simple text file scripts. There is a medium learning curve - one has to learn the terms, which are not always obvious, and the script ordering, following the scheme programming language takes some familiarisation. But in about two hours one can be writing leadsheets.

I believe there is an add-on for emacs, which I should check out.

Since it generates both SVG and MIDI from the script, the possibilities are enormous. You can open the music in Inkscape and add furether commentary or graphics. You can take the MIDI into Processing and/or Csound, and further manipulate it. Of course you could use C Programming too, for algorithmic composition, etc.


The Lilypond website
Lily - A little confusing, a sequencer using SVG for control and a (different) Lily grapfic-scripting plugin for Firefox, and more like PureData. It speaks OSC, and Arduino. So it might prove handy.
PureData - Interested in evaluating this some day.
Apple's HTML Scrpting Guide for Quicktime (Needed to get the above MIDI embedded correctly, and took ages to find.)
Under the Oleander leaves
Some tips from a hymn setter
Lilypond MIDI Notes
Marking impro sections

lilypond/start.txt · Last modified: 2020/04/08 00:23 (external edit)