Re: MIDI and Volta repeats in parallel music
Michael == Michael Ellis michael.f.el...@gmail.com writes: Well, in this case you don't have any conflicting music in the two Voice contexts (because the \structure isn't a printed music voice). So you can simply leave out the \voiceXXX commands and you're ready. What's more, is there a reason to have the structure in a different voice? If you have it in the *same* voice, voltas will get unfolded properly too: \score { \unfoldAllRepeats \new Staff = Music { \new Voice = Music \music \structure } ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: MIDI and Volta repeats in parallel music
On Sun, Nov 23, 2014 at 4:46 PM, pe...@chubb.wattle.id.au wrote: What's more, is there a reason to have the structure in a different voice? Good question. For me, it's mostly about the DRY principle (don't repeat yourself). I'm in the process of writing a program that tries to maximize one's opportunities to exploit the repetitive aspects of most compositions when entering the notation for multiple voices. It's a work in progress, but if you're curious it lives at https://github.com/Michael-F-Ellis/TransLily As for the whole \repeat unfold business, I'd love to understand why LP can merge repeats in the PDF but can't do it MIDI. I know the developers are really smart folks, so it must be way more challenging than I'm imagining. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: MIDI and Volta repeats in parallel music
Michael == Michael Ellis michael.f.el...@gmail.com writes: Michael On Sun, Nov 23, 2014 at 4:46 PM, pe...@chubb.wattle.id.au Michael wrote: What's more, is there a reason to have the structure in a different voice? Michael Good question. For me, it's mostly about the DRY principle Michael (don't repeat yourself). I'm in the process of writing a Michael program that tries to maximize one's opportunities to exploit Michael the repetitive aspects of most compositions when entering the Michael notation for multiple voices. It's a work in progress, but Michael if you're curious it lives at Michael https://github.com/Michael-F-Ellis/TransLily My point I think is that the structure is the structure of the voice, not the structure of the staff. Which is why, BTW, the MIDI repeats don't unfold. Visibly the structure voice shows the repeats, but the repeats aren't actually in the music voice. So when you unfold you get: \music { \structure \structure \structure } I Michael As for the whole \repeat unfold business, I'd love to Michael understand why LP can merge repeats in the PDF but can't do Michael it MIDI. I know the developers are really smart folks, so it Michael must be way more challenging than I'm imagining. t can't merge them in the PDF either. But when it prints them as repeat symbols, you can't tell from the printout. Try this: --- \version 2.18.0 music= \new Staff \new Voice \relative c' { c4 c c c } \new Voice \relative c' { \repeat volta 2 { s1 }} \score { \music } \score { \unfoldRepeats \music } --- And look at the PDF. The second system shows the unfolded structure. Peter C ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: MIDI and Volta repeats in parallel music
On Sun, Nov 23, 2014 at 10:33 PM, Peter Chubb pe...@chubb.wattle.id.au wrote: My point I think is that the structure is the structure of the voice, not the structure of the staff. Which is why, BTW, the MIDI repeats don't unfold. Visibly the structure voice shows the repeats, but the repeats aren't actually in the music voice. I do understand that and it makes sense for LP to support almost any crazy thing a composer might do. As practical matter, however, having volte in one voice and not another is extremely rare. I don't think I've ever seen that in a score. I haven't looked at the LilyPond code for \repeat, so I'm just guessing here, but it seems to me that maybe \repeat unfold is wrong tool for job since it operates at the level of music expressions. Maybe what's needed is lower level code that operates at the level of midi file timing. I think it's analogous to what LP has to do to put the repeat bars and other staff-level annotations from one voice in the right spatial location to relative to another voice's. That's a non-trivial task in itself, without even getting into what LP does to avoid vertical collisions. So it if were up to me (and it certainly isn't), I'd like to see some effort put into developing a new command to designated one voice as a 'master' in the midi block, so that one might write something like \score { \structure \\ voiceA \\ voiceB ... \midi { \master \structure } } to tell LP Keep track of the repeats in the master and copy/paste as needed in the other voices to make it so. This is a good discussion and I hope we can continue it. I'm going to be traveling for the next 2 days so if my responses aren't immediate it doesn't mean I'm not interested. Cheers, Mike ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: MIDI and Volta repeats in parallel music
On Wed, Nov 19, 2014 at 10:54 AM, Michael Ellis michael.f.el...@gmail.com wrote: I find it advantageous when working with multiple voices to keep 'structural' information (meter, tempo, etc.) in a separate voice that gets combined with the other voices as illustrated in the image and code below. In this example, the pdf layout is correct and the MIDI output honors the tempo change, but doesn't repeat the second measure despite using a separate score block with \unfoldRepeats. After some further research, it appears that there is no general solution (other than copying the volte into each voice) so I'm dropping the question. I have another question that's somewhat related. If my example contained notes above the middle line, you would notice that the stem directions would still be up because I designated \music as \voiceOne and \structure as \VoiceTwo. music = \relative c' { c4 d e | f g a b } structure = { \time 3/4 \tempo 4=60 s2. \time 4/4 \tempo 4=120 \repeat volta 2 { s1 } } \score { \new Staff = Music { \new Voice = Music { \voiceOne \music } \new Voice = Structure { \voiceTwo \structure } } } Is there a way to tell LilyPond to apply the usual single voice rules for stem direction to \music? ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: MIDI and Volta repeats in parallel music
Am 22.11.2014 17:12, schrieb Michael Ellis: I have another question that's somewhat related. If my example contained notes above the middle line, you would notice that the stem directions would still be up because I designated \music as \voiceOne and \structure as \VoiceTwo. music = \relative c' { c4 d e | f g a b } structure = { \time 3/4 \tempo 4=60 s2. \time 4/4 \tempo 4=120 \repeat volta 2 { s1 } } \score { \new Staff = Music { \new Voice = Music { \voiceOne \music } \new Voice = Structure { \voiceTwo \structure } } } Is there a way to tell LilyPond to apply the usual single voice rules for stem direction to \music? Well, in this case you don't have any conflicting music in the two Voice contexts (because the \structure isn't a printed music voice). So you can simply leave out the \voiceXXX commands and you're ready. using \voiceOne and \voiceTwo is not mandatory at all to manage two voices. These commands only give LilyPond the necessary clues how to deal with potential collision events and how to typeset the voices (e.g. the stem direction you noticed, but also which voice would move to which direction in case of collisions etc.). HTH Urs ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: MIDI and Volta repeats in parallel music
On Sat, Nov 22, 2014 at 11:16 AM, Urs Liska u...@openlilylib.org wrote: Well, in this case you don't have any conflicting music in the two Voice contexts (because the \structure isn't a printed music voice). So you can simply leave out the \voiceXXX commands and you're ready. using \voiceOne and \voiceTwo is not mandatory at all to manage two voices. These commands only give LilyPond the necessary clues how to deal with potential collision events and how to typeset the voices (e.g. the stem direction you noticed, but also which voice would move to which direction in case of collisions etc.). Works beautifully. Thanks, Urs! Mike ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
MIDI and Volta repeats in parallel music
I find it advantageous when working with multiple voices to keep 'structural' information (meter, tempo, etc.) in a separate voice that gets combined with the other voices as illustrated in the image and code below. In this example, the pdf layout is correct and the MIDI output honors the tempo change, but doesn't repeat the second measure despite using a separate score block with \unfoldRepeats. music = \relative c' { c4 d e | f g a b } structure = { \time 3/4 \tempo 4=60 s2. \time 4/4 \tempo 4=120 \repeat volta 2 { s1 } } \score { \new Staff = Music { \new Voice = Music { \voiceOne \music } \new Voice = Structure { \voiceTwo \structure } } } \score { \unfoldRepeats { \structure \\ \music } \midi { } } I can get the MIDI to repeat by copying the \repeat into the music variable, e.g. music = \relative c' { c4 d e | \repeat volta 2 { f g a b } } but that defeats the convenience of keeping the 'structural' info in a separate voice. Is there a way to get the repeats in MIDI without resorting to copying them into the notation for every voice? Thanks, Mike Ellis *TransLily https://github.com/Michael-F-Ellis/TransLily-- a minimal assistant for part transcription with LilyPond.* ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user