Re: Initial rests in MIDI not included?
On Wed 27 Sep 2023 at 10:22:04 (+0200), David Kastrup wrote: > David Wright writes: > > On Wed 27 Sep 2023 at 01:13:09 (+0200), Jean Abou Samra wrote: > >> After replacing “ ... ” with “ c' ”, I got the expected MIDI output with > >> LilyPond 2.24.2, i.e., lots of silence and four C notes at the end. > > > > I did the same, and I attach a screenshot of audacious playing the > > file, called mid.midi. The little white blip above the Play button > > is the equaliser graph displaying the first c' at 2 min 40 sec of > > playing time. (Yawn.) > > > > I also attach a screenshot of timidity playing the same file. Notice > > the length of the file: 4 seconds; and that's how long it plays for. > > That's all circumstantial evidence. Nobody so far has actually attached > the resulting MIDI file and/or the output of > > lilymidi --pretty > > on it. That would be way more informative. I dashed off my first reply before I dashed off to choir practice, just to give a (correct, as it turned out) hint to the OP to try playing the file with a different player. I didn't really look at the code as it involved repeats, and I know they've been changed in some way, which I haven't yet read up on. When I got back, I saw only Jean's reply, which still didn't mention how the file was being played, so I thought I'd give examples that showed the contrasting behaviour between two different players. Yes, like lilymidi --pretty, the evidence that there was silence at the beginning of the file is circumstantial, necessitating that the OP believed I sat through the 160 seconds of silence before any notes were played. BTW where is the output of lilymidi documented? Cheers, David.
Re: lilypond 'not recognized'
The word "install" has many different meanings. LilyPond is not "installed" in the way you think. At least for 2.24, if you followed the procedure in the learning manual, you have just downloaded it and put it somewhere (actual location doesn't matter) on your computer, then pointed Frescobaldi to it. If you want to have the program callable as "lilypond" in a terminal, you can't put it anywhere (I mean, imagine if just downloading a program made it the default in your terminal ... it would just be plain dangerous). You need to put it in a directory that is on the PATH variable. However, this is quite unnecessary since you should be able to execute it as C:\...\lilypond-2.24.2\bin\lilypond.exe file.ly signature.asc Description: This is a digitally signed message part
lilypond 'not recognized'
Hello all, I've got LilyPond 2.22.2 (and 2.24.2) installed on a Windows 11 box. If I try to call it from the command line I get: 'lilypond' is not recognized as an internal or external command, operable program or batch file. It runs just fine from Frescobaldi. I was trying to use lilypond-book but I was getting that message I quoted above. I don't recall ever trying to use lilypond-book on this installation. It was, and is, working fine on an XP machine but I really should retire/repurpose that hardware. -David
Re: Obscure message in Frescobaldi
I found the answer. See the Frescobaldi issue. signature.asc Description: This is a digitally signed message part
Re: Obscure message in Frescobaldi
Thank you for your answer, but I already put that question on Github on the Frescobaldi page, but the question has not been answered there either. So I had the idea to ask here... Am Mittwoch, dem 27.09.2023 um 13:35 +0200 schrieb Simon Albrecht: > Hello Hajo, > > I can’t answer your question, but I can say that the better place to > ask > it would be either the Issue tracker in the Frescobaldi project on > Github, or via the contact adress included in Frescobaldi at Help- > >About. > > Hope that helps! > Simon > > On 26.09.23 21:51, Hajo Baess wrote: > > This is not about a Lilypond problem, strictly speaking, but it is > > related indirectly, and since here there are very many LilyPond > > users > > around here, I also hope to address at least a couple of > > Frescobaldi > > users here with an unanswered question, hoping that someone can > > solve > > this for me: > > I am localising Frescobaldi, and I am stuck with an obscure message > > which I have never seen using it. It says: > > > > Clear Grab > > > > Since it is hard to translate something you don't understand: what > > is > > this about? What is the context? What has been grabbed and can be > > cleared? > > > > The message entry can be found in the messages.py file in the i18n > > folder of Frescobaldi: > > > > > _("QShortcut", "Clear Grab") > > Thanks a lot for any suggestions to help me understand... > > > >
Re: Alternating time signature with cue clef
On Tue, Sep 26, 2023 at 11:25 PM Michael Werner wrote: > Hi Knute, > > On Tue, Sep 26, 2023 at 3:27 PM Knute Snortum wrote: > >> TL;DR >> How do I engrave an alternating time signature and an initial cue clef? >> >> [snip] > > What about using a CueVoice, resetting sizes back to default? It seems to > work both visually and listening to the midi produced. I've attached some > code that engraves the first 7 measures of the Scriabin piece. Within the > CueVoice I did have to explicitly set the slur, stem and articulation > directions - apparently CueVoice either overrides or ignores voiceOne and > voiceTwo settings in those regards. Quite likely there are better ways to > go about this, but maybe this can at least get something going. > -- > Michael > > Thanks Michael for your work on my problem. I'm impressed that you figured out the prelude I was working on and wrote out two staves worth of music! I think I did myself a disservice by calling what I want a "cue clef". I believe what I want is a "change clef" -- it's bigger than a cue clef but smaller than a regular clef. It's what you get when you engrave this snippet: { c'4 4 4 4 | \clef bass 4 4 4 4 } ...or in markup: \markup \musicglyph "clefs.F_change" -- Knute Snortum
'festival' support, 'lilysong'
Folks, is anybody using the 'festival' support files that come with LilyPond? Or maybe the 'lilysong' script? If you do, please write back! Werner
Re: combining two whole notes into one
Thank you. It worked. С уважением,Виноградов Юрий.27.09.2023, 16:14, "Simon Albrecht" :Hi Yuriy,it is possible, yes, but it’s not correct, unless you have a very specific reason to make an exception from the rule. There’s a reason why Lily provides commands for merging differently headed or differently dotted notes, but only for notes with a stem. If you merge notes without stem (like whole notes) the result will be unclear.However, here’s two ways of doing it:<< { \once\override NoteColumn.ignore-collision = ##t c'1 } \\ { c'1 } >><< { \once\override NoteColumn.force-hshift = #0 c'1 } \\ { \once\override NoteColumn.force-hshift = #0 c'1 } >>Best,SimonOn 27.09.23 05:28, Виноградов Юрий wrote: Hello. I have two votes. And each one sings the same note. For example, F. When the notes are stylized, they are combined using the \mergeDifferentlyHeadedOn command. But whole notes are not joined together with this command. Please help me. Maybe someone knows how to do it. Юрий Виноградов
Re: combining two whole notes into one
Hi Yuriy, it is possible, yes, but it’s not correct, unless you have a very specific reason to make an exception from the rule. There’s a reason why Lily provides commands for merging differently headed or differently dotted notes, but only for notes with a stem. If you merge notes without stem (like whole notes) the result will be unclear. However, here’s two ways of doing it: << { \once\override NoteColumn.ignore-collision = ##t c'1 } \\ { c'1 } >> << { \once\override NoteColumn.force-hshift = #0 c'1 } \\ { \once\override NoteColumn.force-hshift = #0 c'1 } >> Best, Simon On 27.09.23 05:28, Виноградов Юрий wrote: Hello. I have two votes. And each one sings the same note. For example, F. When the notes are stylized, they are combined using the \mergeDifferentlyHeadedOn command. But whole notes are not joined together with this command. Please help me. Maybe someone knows how to do it. Юрий Виноградов
Re: Initial rests in MIDI not included?
Kevin Cole writes: > On Wed, Sep 27, 2023 at 8:28 AM Jean Abou Samra wrote: > >> Le mercredi 27 septembre 2023 à 08:22 -0400, Kevin Cole a écrit : >> > And... we have a winner! It's a timidity problem! >> >> From what I can read, it is the expected behavior of timidity, but there >> is a --preserve-silence option to change it. >> > > Yeah, I was getting to that. ;-) Once it became a timidity issue, I > suspected there would be an option to alter that behavior. It just > hadn't occurred to me that timidity would default to happily ignoring > the quiet bits. I have no idea why anybody would consider that a sensible default, to be honest. I have a hard time imagining a sensible use case at all. Possibly skipping initial silences in manually recorded MIDI files that aren't edited at all in a sequencer? But that does not really sound all that sensible. -- David Kastrup
Re: Initial rests in MIDI not included?
Jean Abou Samra writes: > Le mercredi 27 septembre 2023 à 08:22 -0400, Kevin Cole a écrit : >> And... we have a winner! It's a timidity problem! > > > From what I can read, it is the expected behavior of timidity, but there > is a --preserve-silence option to change it. I don't have timidity installed and consequently am also missing its manual pages or I'd have checked. -- David Kastrup
Re: Initial rests in MIDI not included?
On Wed, Sep 27, 2023 at 8:28 AM Jean Abou Samra wrote: > Le mercredi 27 septembre 2023 à 08:22 -0400, Kevin Cole a écrit : > > And... we have a winner! It's a timidity problem! > > From what I can read, it is the expected behavior of timidity, but there > is a --preserve-silence option to change it. > Yeah, I was getting to that. ;-) Once it became a timidity issue, I suspected there would be an option to alter that behavior. It just hadn't occurred to me that timidity would default to happily ignoring the quiet bits. Especially since most of my problems end up being a misunderstanding of LilyPond or music theory. So naturally, I defaulted to those as the source of my troubles.
Re: Obscure message in Frescobaldi
Le mercredi 27 septembre 2023 à 13:35 +0200, Simon Albrecht a écrit : > I can’t answer your question, but I can say that the better place to ask > it would be either the Issue tracker in the Frescobaldi project on > Github, or via the contact adress included in Frescobaldi at Help->About. See https://github.com/frescobaldi/frescobaldi/issues/1669 signature.asc Description: This is a digitally signed message part
Re: Initial rests in MIDI not included?
Le mercredi 27 septembre 2023 à 08:22 -0400, Kevin Cole a écrit : > And... we have a winner! It's a timidity problem! From what I can read, it is the expected behavior of timidity, but there is a --preserve-silence option to change it. signature.asc Description: This is a digitally signed message part
Re: Initial rests in MIDI not included?
On Wed, Sep 27, 2023 at 8:04 AM David Kastrup wrote: What is apparent is that it may be a bad idea to first pause a number of > bars and only then include \global with a different \tempo . > Oops. Good catch. Thanks. But the location of the tempo change aside your principal problem, like > before, seems to be that timidity as a player skips initial rests. > And... we have a winner! It's a timidity problem! Try fluidsynth -ia pulseaudio -n on your MIDI file as an alternative (on > my system, I get inexplicable problems with -ia pipewire or -ia alsa) > instead. > Thanks!
Re: Initial rests in MIDI not included?
Kevin Cole writes: > I just tried it again with the attached, and still do not get "The Sound of > Silence" ;-) > > $ cat mwe.ly > \version "2.24.2" > \language "english" > global = { > \time 4/4 > \key f \major > \tempo 4=150 > } > PartFour = \relative a { > \global > \clef "treble" > \partial 4 a4 > } > \score { > \new Voice = "PartFour" { > R1*32 R1*24 > \repeat unfold 4 { > \transpose c c,, { \PartFour } > } > } > \midi { } > } $ lilymidi --pretty /tmp/mwe.midi Filename: /tmp/mwe.midi MIDI format: 1 (one or more simultaneous tracks) Divisions:1536 per whole note #Tracks: 2 Track 1: Time 0: Text: creator: Text: LilyPond 2.24.2 Time signature: 4/4, metronome 1/4 Tempo: 100 msec/quarter Time 86016: Time signature: 4/4, metronome 1/4 Tempo: 40 msec/quarter Time 86400: Time signature: 4/4, metronome 1/4 Time 86784: Time signature: 4/4, metronome 1/4 Time 87168: Time signature: 4/4, metronome 1/4 Time 87552: End of Track Track 2: Time 0: Track name: \new:PartFour Time 86016: Key signature: F major Note on: Channel 0, A1(33)@90 Time 86400: Note off: Channel 0, A1(33) Key signature: F major Note on: Channel 0, A1(33)@90 Time 86784: Note off: Channel 0, A1(33) Key signature: F major Note on: Channel 0, A1(33)@90 Time 87168: Note off: Channel 0, A1(33) Key signature: F major Note on: Channel 0, A1(33)@90 Time 87552: Note off: Channel 0, A1(33) End of Track What is apparent is that it may be a bad idea to first pause a number of bars and only then include \global with a different \tempo . But the location of the tempo change aside your principal problem, like before, seems to be that timidity as a player skips initial rests. Try fluidsynth -ia pulseaudio -n on your MIDI file as an alternative (on my system, I get inexplicable problems with -ia pipewire or -ia alsa) instead. -- David Kastrup
Re: Obscure message in Frescobaldi
Hello Hajo, I can’t answer your question, but I can say that the better place to ask it would be either the Issue tracker in the Frescobaldi project on Github, or via the contact adress included in Frescobaldi at Help->About. Hope that helps! Simon On 26.09.23 21:51, Hajo Baess wrote: This is not about a Lilypond problem, strictly speaking, but it is related indirectly, and since here there are very many LilyPond users around here, I also hope to address at least a couple of Frescobaldi users here with an unanswered question, hoping that someone can solve this for me: I am localising Frescobaldi, and I am stuck with an obscure message which I have never seen using it. It says: Clear Grab Since it is hard to translate something you don't understand: what is this about? What is the context? What has been grabbed and can be cleared? The message entry can be found in the messages.py file in the i18n folder of Frescobaldi: _("QShortcut", "Clear Grab") Thanks a lot for any suggestions to help me understand...
Re: Initial rests in MIDI not included?
On 2023-09-27 4:20 am, Kevin Cole wrote: I just tried it again with the attached, and still do not get "The Sound of Silence" ;-) $ cat mwe.ly \version "2.24.2" \language "english" global = { \time 4/4 \key f \major \tempo 4=150 } PartFour = \relative a { \global \clef "treble" \partial 4 a4 } \score { \new Voice = "PartFour" { R1*32 R1*24 \repeat unfold 4 { \transpose c c,, { \PartFour } } } \midi { } } $ lilypond mwe.ly GNU LilyPond 2.24.2 (running Guile 2.2) Processing `mwe.ly' Parsing... Interpreting music... MIDI output to `mwe.midi'... Success: compilation successfully completed $ timidity mwe.midi Playing mwe.midi MIDI file: mwe.midi Format: 1 Tracks: 2 Divisions: 384 Text: creator: Text: LilyPond 2.24.2 Track name: \new:PartFour Playing time: ~5 seconds Notes cut: 0 Notes lost totally: 0 Loads into a sequencer as expected, so the MIDI file itself seems fine. -- Aaron Hill
Re: Initial rests in MIDI not included?
I just tried it again with the attached, and still do not get "The Sound of Silence" ;-) $ cat mwe.ly \version "2.24.2" \language "english" global = { \time 4/4 \key f \major \tempo 4=150 } PartFour = \relative a { \global \clef "treble" \partial 4 a4 } \score { \new Voice = "PartFour" { R1*32 R1*24 \repeat unfold 4 { \transpose c c,, { \PartFour } } } \midi { } } $ lilypond mwe.ly GNU LilyPond 2.24.2 (running Guile 2.2) Processing `mwe.ly' Parsing... Interpreting music... MIDI output to `mwe.midi'... Success: compilation successfully completed $ timidity mwe.midi Playing mwe.midi MIDI file: mwe.midi Format: 1 Tracks: 2 Divisions: 384 Text: creator: Text: LilyPond 2.24.2 Track name: \new:PartFour Playing time: ~5 seconds Notes cut: 0 Notes lost totally: 0 mwe.midi Description: MIDI audio \version "2.24.2" \language "english" global = { \time 4/4 \key f \major \tempo 4=150 } PartFour = \relative a { \global \clef "treble" \partial 4 a4 } \score { \new Voice = "PartFour" { R1*32 R1*24 \repeat unfold 4 { \transpose c c,, { \PartFour } } } \midi { } }
Re: Initial rests in MIDI not included?
David Wright writes: > On Wed 27 Sep 2023 at 01:13:09 (+0200), Jean Abou Samra wrote: >> After replacing “ ... ” with “ c' ”, I got the expected MIDI output with >> LilyPond 2.24.2, i.e., lots of silence and four C notes at the end. > > I did the same, and I attach a screenshot of audacious playing the > file, called mid.midi. The little white blip above the Play button > is the equaliser graph displaying the first c' at 2 min 40 sec of > playing time. (Yawn.) > > I also attach a screenshot of timidity playing the same file. Notice > the length of the file: 4 seconds; and that's how long it plays for. That's all circumstantial evidence. Nobody so far has actually attached the resulting MIDI file and/or the output of lilymidi --pretty on it. That would be way more informative. -- David Kastrup
Re: Suppressing a voice in the midi output
Karsten, a new answer to your question arrived 5 years later, thanks to Stephen. I thought it would be useful to share back in the mailing list :) Ref: https://lists.gnu.org/archive/html/lilypond-user/2019-12/msg00276.html On Sun, Sep 24, 2023 at 03:16:59PM -0700, Stephen Riddle wrote: > Hi Sandro > > I'm not a member of the news list where you posted this (five years ago) > > but this is what I would have answered, > > I have found either all on or all off midi settings kind of awkward myself. > > Use the \with command when you start a new voice or staff or chordNames or > whatever: chordProgression = \chordmode { c1:sus2 \( c1 c1:sus2 c1 \) } > > \new ChordNames \with { \remove "Staff_performer" }{ \chordProgression } > \new Staff \with { \remove "Staff_performer" } { \chordProgression } > \new Staff { c'4 d' e' c'' b' c'' b' e'' d'' c'' d'' c''1 } > > which shuts down midi output for a single context. > > > Stephen
Re: Alternating time signature with cue clef
Hi Knute, On Tue, Sep 26, 2023 at 3:27 PM Knute Snortum wrote: > TL;DR > How do I engrave an alternating time signature and an initial cue clef? > > Scriabin has a prelude where he has written a time signature as > alternating 5/8 and 4/8 time. After the initial one, no other time > signatures are written. I have figured out a way to engrave this with help > from a LSR entry. > > Also, the first notes in the right hand are in bass clef. I want to > engrave the initial clef in the right hand as treble, then after the time > signature have a cue bass clef. Lukas-Fabian Moser wrote a solution for > that (thanks!) > > The problem is those two solutions don't work together. (Looking at them, > I can see why they wouldn't.) I am not clever enough to merge the two > solutions or think of a third. Can anyone help me? > > I've attached a screenshot of what I'm trying to engrave. Also attached > is my attempt to use the two solutions, but without success. > What about using a CueVoice, resetting sizes back to default? It seems to work both visually and listening to the midi produced. I've attached some code that engraves the first 7 measures of the Scriabin piece. Within the CueVoice I did have to explicitly set the slur, stem and articulation directions - apparently CueVoice either overrides or ignores voiceOne and voiceTwo settings in those regards. Quite likely there are better ways to go about this, but maybe this can at least get something going. -- Michael \version "2.24.2" \language "english" %%% Alternating time #(define ((time-alternate-time upa downa upb downb) grob) (grob-interpret-markup grob (markup #:override '(baseline-skip . 0) #:number (#:line ( (#:center-column (upa downa)) (#:center-column (upb downb))) \header { title = "Twenty-Four Préludes" composer = "Alexander Scriabin" } upperUpper = \relative { \key bf \minor \new CueVoice { \set fontSize = #0 \override Beam.length-fraction = #1 \override Stem.length-fraction = #1 \override Beam.beam-thickness = #0.48 \override Script.direction = #UP \cueClef "bass" \stemUp \slurUp \partial 8 r8^\markup { \italic \small "sotto voce" } | bf4.-- bf8.-- bf16-- | bf4.-- r8 | df4. df8. df16 | df4. r8 | f4.( f8) r8 | e4.( e8) \cueClefUnset } % End CueVoice r8 | f4. r4 } upperLower = \relative { \key bf \minor \new CueVoice { \set fontSize = #0 \override Beam.length-fraction = #1 \override Stem.length-fraction = #1 \override Beam.beam-thickness = #0.48 \override Script.direction = #DOWN \cueClef "bass" \stemDown \slurDown \partial 8 \tuplet 3/2 { bf,16( c16 ef16 } | bf'8[ af ef gf df] | f[ c df]) \tuplet 3/2 {bf16( df16 gf16 } | df'8[ c gf bf f] | gf[ ef df]) \tuplet 3/2 { df16( gf16 bf16 } | f'8[ ef bf df]) \tuplet 3/2 { c,16( gf'16 bf16 } | e8[ df bf c]) \cueClefUnset } % End CueVoice \tuplet 3/2 { f,16( a16 df16 } | f8[ ef c df bf]) } lowerUpper = \relative { \key bf \minor \clef bass \voiceOne \partial 8 r8 bf,4.-- bf8.-- bf16-- | bf4.-- r8 | df4. df8. df16 | df4. r8 | f4.( f8) r8 | e4.( e8) r8 | f4. r4 } lowerLower = \relative { \key bf \minor \clef bass \voiceTwo \partial 8 \tuplet 3/2 { bf,,16(_\markup { \small "una corda" } c16 ef16 } | bf'8[ af ef gf df] | f[ c df)] \tuplet 3/2 { bf16( df16 gf16 } | df'8[ c gf bf f] | gf[ ef df]) \tuplet 3/2 { df16( gf16 bf16 } | f'8[ ef bf df)] \tuplet 3/2 { c,16( gf'16 bf16 } | ef8[ df bf c]) \tuplet 3/2 { f,16( a16 df16 } | f8[ ef c df bf]) } timeSignatures = { \override Score.TimeSignature.stencil = #(time-alternate-time "5" "8" "4" "8") \time 5/8 \partial 8 s8 \override Score.TimeSignature.stencil = ##f \time 5/8 s4. s4 | \time 4/8 s2 | \time 5/8 s4. s4 | \time 4/8 s2 | \time 5/8 s4. s4 | \time 5/8 s4. s4 | \time 5/8 s4. s4 } dynamicMarks = { \override DynamicTextSpanner.style = #'none \partial 8 s8\p s4. s4 s2 s4. s4 s2 s8-\cresc s2 s4. s4 s8-\dim s2\! } \score { \new PianoStaff << \new Staff << \tempo \markup { Misterioso \rhythm { { 8 } } = 160-168 } \mergeDifferentlyHeadedOn \mergeDifferentlyDottedOn \new Voice = "upperUpper" { \relative { \voiceOne \upperUpper } } \new Voice = "upperLower" { \relative { \voiceTwo \upperLower } } >> \new Dynamics { \dynamicMarks } \new Staff << \mergeDifferentlyHeadedOn \mergeDifferentlyDottedOn \new Voice { \lowerUpper } \new Voice { \lowerLower } >> \new Devnull \timeSignatures >> \layout { } \midi { } }