bug-lilypond
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Lilypond 2.19.82 with multiple voices seems to fail


From: Phil Holmes
Subject: Re: Lilypond 2.19.82 with multiple voices seems to fail
Date: Sun, 3 Mar 2019 17:30:14 -0000

"DaveAtkinson" <address@hidden> wrote in message news:address@hidden
Dear LilyPond folks

Thanks so much for taking an interest. First, I forgot two important pieces of information - yes, I am using Windows... (hangs head in shame) and it has
16 Gb of memory.. The OS is 64 bit, but I don't suppose that matters to
lilypond as compiled for windows..?

So interesting... it is clear that overuse of the << \\ >> construct causes issues. I would welcome comments about how to re-write the score without it.
If the correct way to do it is


then an affirmation would be sufficient rather than a tutorial, which would
be greatly appreciated otherwise ;-).

I can't see your example, but I would do your first two bars like this:

global = {
 \key f \major
 \time 3/4
}

rhnotesupper = \relative c' {
 \clef treble
 \global

 \tempo 4=83

 s4 s <f a>16-.( <f a>-. <f a>-. <f a>-.) |
\voiceOne <f' a>-.( <f a>-. <f a>-. <f a>-.) \oneVoice <f, a>16-.( <f a>-. <f a>-. <f a>-.) <f, a>-.( <f a>-. <f a>-. <f a>-.) |
}

rhnoteslower = \relative c' {
 \clef treble
 \global

 \tempo 4=83

 s1*3/4 |
 \voiceTwo <f c'>4 s s |
}

lhnotesupper =  \relative c {
 \clef bass
 \global

\voiceOne <a c f>16-.( <a c f>-. <a c f>-. <a c f>-.) <f' a>-.( <f a>-. <f a>-. <f a>-.) \oneVoice <f c'>4 |
 s <f c'> <f, c'> |
}

lhnoteslower =  \relative c {
 \clef bass
 \global

 \voiceTwo f,,4\sustainOn <f' c'> |
 s1*3/4 |
}

\score {
 \new PianoStaff \with { instrumentName = #"Piano" }
 <<
   \new Staff = "upper"
   <<
     \new Voice = "top" \rhnotesupper
     \new Voice = "next" \rhnoteslower
   >>
   \new Staff = "lower"
   <<
     \new Voice = "topLH" \lhnotesupper
     \new Voice = "nextLH" \lhnoteslower
   >>
 >>
 \layout { }
 \midi { }
}

The first, I confess to sometimes using lilypond to generate midi files from piano accompaniments so that I can practise the main part when I don't have
the luxury of a pianist (which is almost all the time). I am therefore
copying existing scores. In order to eliminate (!) mistakes, I do it a few
bars at a time, as corrections are much easier for me to do in the last few bars. If I were to use two voices for the whole of a staff, once I'd written
the first staff, going back and finding the places where two voices are
required, and filing in all the spaces, is tedious and taxing for me...

I create music (normally from renaissance polyphony) and simply have four voices and add a few bars to each at a time. I then compile, check and add a few more bars to each. My only other suggestion (which Kieren, a regular contributor and composer would agree with) is that you might find not using \relative means it's easier to keep track of which octave you're currently in.

The second reason, if I were to write a staff as two lines, all the parts
where there is effectively only a single voice look horrible, because all
the rests and note stems look wrong.

\oneVoice, \voiceOne, \voiceTwo etc. are your friends.

--
Phil Holmes





reply via email to

[Prev in Thread] Current Thread [Next in Thread]