lilypond-user
[Top][All Lists]
Advanced

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

Re: Adding lyrics to basic drum beat


From: Thomas Morley
Subject: Re: Adding lyrics to basic drum beat
Date: Fri, 6 Feb 2015 23:31:59 +0100

Hi Kevin,

I cc David Kastrup, he recently worked on addlyrics and the like.

2015-02-06 9:11 GMT+01:00 Kevin Tough <address@hidden>:
> Hi Again,
>
> I thought I better be a little clearer. Lilypond states it cannot find
> voice. The pdf includes the high hat notes. The high hat notes are
> missing from the midi file???
>
> Namaste,
> Kevin
>
> On Fri, 2015-02-06 at 09:04 +0100, Kevin Tough wrote:
>> Hi Joram,
>>
>> I've been reading and trying to get this to work, experimenting.
>> In order to output midi and pdf your code must be put in a score block
>> with a layout and midi block inside. As soon as I enclose the code in
>> the \score block Lilypond says it cannot find voice "voice". I tried
>> using quotes around "voice" as in the documentation, no improvement. I
>> changed voice to voicehh thinking perhaps voice is a keyword, no
>> improvement. I took my \include statements for my favorite printing
>> scheme in and out. Nothing appears to work so far. Why should the \score
>> block effect Lilypond to find this voices name??

It doesn't.
It's \midi {} in \score triggering the problem.

>>
>> Here is my minimal code as it now stands. I've commented out the \score
>> block and the *.pdf is fine but no midi.
>>
>> \version "2.18.2"
>>
>> %\score {
>>   <<
>>     \new DrumStaff  <<
>>       \new DrumVoice = voice { \stemUp \drummode { hh4 hh hh hh }}
>>       \new DrumVoice { \stemDown \drummode { bd4 sn bd sn }}
>>     >>
>>     \new Lyrics \lyricsto voice { One Two Three Four }
>>   >>

In general better use a \score for printing and another \score for \midi

>>   \layout {
>>   indent = 0.0\cm
>>   }
>>   \midi {
>>     \tempo 4 = 120
>>   }
>> %} % End of score block
>>
>>
>> On Fri, 2015-02-06 at 01:27 +0100, Noeck wrote:
>> > Hi Kevin,
>> >
>> > is this something you like?
>> >
>> > \version "2.18.2"
>> >
>> > <<
>> >   \new DrumStaff  <<
>> >     \new DrumVoice = voice { \stemUp \drummode { hh4 hh hh hh }}
>> >     \new DrumVoice { \stemDown \drummode { bd4 sn bd sn }}
>> >   >>
>> >   \new Lyrics \lyricsto voice { One Two Three Four }
>> > >>
>> >
>> > If the text does not follow a name voice (= voice in the example) using
>> > \lyricsto, the syllables need duration like notes do.
>> > I think addlyrics is a short-hand that only works with normal Staffs or at 
>> > least
>> > not with multiple voices:
>> > http://lilypond.org/doc/v2.18/Documentation/notation/common-notation-for-vocal-music#automatic-syllable-durations

\addlyrics used to work with Voice-context only.
I think with latest devel-version other contexts are accepted, iirc.

>> >
>> > Cheers,
>> > Joram

Here a minimal example demonstrating that lyricsto can't find the
DrumVoice-context in midi:

\version "2.19.15"

 \score {
   <<
     \new DrumVoice = "DV" \drummode { hh4 hh hh r hh }
     \new Lyrics \lyricsto "DV"  { One Two Three Four }
   >>
   \midi { }
 }

returns:
warning: cannot find Voice `DV'

     \new Lyrics
                 \lyricsto "DV"  { One Two Three Four }

Coding \layout instead of \midi (or commenting it) will show correct
assigned lyrics, though.

%%%%

Trying to code as shown here:
https://code.google.com/p/lilypond/issues/detail?id=4097#c10
and compiling with a build from latest master:

\version "2.19.16"

 \score {
   <<
     \new DrumVoice = "DV" \drummode { hh4 hh hh r hh }
     \new Lyrics \lyricsto DrumVoice = "DV"  { One Two Three Four }
   >>
   \midi { }
 }

returns:

GNU LilyPond 2.19.16
Processing `tiny.ly'
Parsing.../home/harm/lilypond-git/build/out/share/lilypond/current/scm/lily.scm:1041:21:
In procedure module-lookup in expression (ly:parse-file file-name):
/home/harm/lilypond-git/build/out/share/lilypond/current/scm/lily.scm:1041:21:
unbound variable: lyric_combine

%%%%

I'm not aware of a workaround in 2.18.2, with 2.19.15 you can do:

\version "2.19.15"

\paper { ragged-right = ##f }

m =
  <<
    \new DrumStaff
      <<
       \new DrumVoice \drummode { \voiceOne hh4 hh hh r hh }
       \new DrumVoice = "dv" \drummode { \voiceTwo bd4 sn bd r sn }
      >>
    \new Lyrics
      \with {
        associatedVoiceType = #'DrumVoice
        associatedVoice = "dv"
      }
      \lyricsto "dv" { One Two Three Four  }
  >>

\score {
  \m
  \layout { }
}

\score {
  \m
  \midi { }
}

The need to do both:
associatedVoice = "dv"
_and_
\lyricsto "dv"
is strange, though.


HTH a bit,
  Harm



reply via email to

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