Tue, May 4, 2021
Linux sheet music and MIDI authoring with Frescobaldi/Lilypond
An easy way to author music on Linux, with both sheet music and MIDI, is to use Lilypond, a text-based sheet music language. A GUI editor for Lilypond is Frescobaldi, which is available for all three major platforms.
Furthermore, you will need to install a MIDI player. I use Timidity++ for this.
If you want a more complex music studio, you might try Rosegarden.
This is an example Lilypond file, that covers
- Chords
- Lyrics
- Repeats
- MIDI player
- Transpose
\version "2.22.1"
\header {
title = "My Heart Will Go On"
composer = "Theme from Titanic (1997)"
tagline = \markup {
Engraved at
\simple #(strftime "%Y-%m-%d" (localtime (current-time)))
with \with-url #"http://lilypond.org/"
\line { LilyPond \simple #(lilypond-version) (http://lilypond.org/) }
}
}
vocal = <<
\new ChordNames \with {midiInstrument = "acoustic guitar (nylon)"} {
\chordmode {
\repeat volta 2 {
e1 b a e2 b
e1 b a
}
\alternative {
{ a1 }
{ a2 gis:m }
}
cis1:m b a b cis:m b a gis2:m fis:m
cis1:m b a b cis:m b a b2 a e1
}
}
\new Voice = "one" \relative e' {
\tempo 4 = 120
\key e \major
\repeat volta 2 {
e4. e8 e4 e
dis e2 e4
dis e2 fis4
gis2 fis
e4. e8 e4 e
dis e2 e4
b1(
}
\alternative {
{ cis1) }
{ cis2 cis4( dis }
}
\break
e1) fis2. b,4
b'2 a4 gis8 fis~
fis2 gis4 a
gis2 fis4 e
\break
dis e2 dis4
cis2.~( cis8 dis16 cis
b2 a2)
\break
e'1 fis2. b,4
b'2 a4 gis8 fis~
fis2 gis4 a
gis2 fis4 e
\break
dis e2 dis4
dis e2 fis4
gis2 fis e1
\bar "|."
}
\new Lyrics \lyricsto "one" {
<<
{
Eve -- ry night in my dreams
I see you, I feel you.
That is how I know you, go on.
}
\new Lyrics {
\set associatedVoice = "one"
Far a -- cross the dis -- tance
And spa -- ces, be -- tween us
You have come to show you, go on.
\skip 1
Near,
}
>>
far, wher -- e -- ver you are
I be -- lieve that the heart does, go on
Once more you o -- pen the door,
and you're here in my heart,
and my heart will go on, and on.
}
>>
\score {
\transpose e e {
\vocal
}
\layout {}
}
\score {
\unfoldRepeats {
\vocal
}
\midi {}
}
And, the exported PDF - my-heart-will-go-on.pdf.