lilypond-user
[Top][All Lists]
Advanced

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

Re: MIDI export: \partial measure and volta repeats


From: Federico Bruni
Subject: Re: MIDI export: \partial measure and volta repeats
Date: Sat, 20 Jun 2009 17:02:36 +0200
User-agent: Thunderbird 2.0.0.21 (X11/20090318)

Graham Percival wrote:
On Thu, Jun 18, 2009 at 09:09:18AM +0200, Francisco Vila wrote:
2009/6/18 Federico Bruni <address@hidden>:
Unfortunately, I can't make it working: it says that \tag... is unexpected
string.
\include "english.ly"
\include "tablature.ly"
We have not this file.

More to the point, Federico, please create a minimal example which
demonstrates the problem you wish to demonstrate.  Such a minimal
example will almost never contain \includes.

Cheers,
- Graham


I hope this is simple enough (just \include english).

Partial and repeats are fixed now, it works great. Thanks for the precious suggestions.

But still Tuxguitar can't get polyphony.
I've tried the following for the midi score (please look at the attached file to see what I mean):

1) melody is upper plus lower

\score  {
        <<\context Staff   <<
        \set Staff.midiInstrument = "acoustic guitar (nylon)"
{ \clef "G_8" \key e \minor \time 4/4 \unfoldRepeats \keepWithTag #'rests \melody } >>
        >>

2) I tried to follow this advice by Francisco: ("Maybe you should try to \partcombine both on a single staff, only for
MIDI. Staves become MIDI channels with their voices merged.")

\score  {
        <<\context Staff   <<
        \set Staff.midiInstrument = "acoustic guitar (nylon)"
{ \clef "G_8" \key e \minor \time 4/4 \unfoldRepeats \keepWithTag #'rests \partcombine \upper \lower } >>
        >>

In both example, I have a monophonic tab in TG.

Also, in my previous tries I found out that, if I set the MIDI output to one channel per voice, then TuxGuitar will create two tracks: so TG thinks each channel as a different instrument.

So I guess I have to use one channel.
Now the thing is: if the voices in a staff are amalgamated, there's no way for TuxGuitar to tell a voice from another.

I'm just guessing.. any hint?
\version  "2.12.2-1"
\include "english.ly"

upper= \relative c' {
        \tag #'partial  { \partial 4 e8  fs-4  }
        \tag #'rests  { s2.  e8  fs-4  }
        \repeat volta 2  {
        \mark  \markup { \bold A } %1st section
        g4-4  fs8-2  e  ef4-4  e8  fs-2  |  b,4  cs8-2  ds-4  e4  d8-4  c-1  |  
b4  a8-1  g  fs4-4  g8  a-2  |  b  a  g  fs-4  e4-2  e'8  fs-4   \break |  
        g4-4  fs8-2  e ef4-4  e8  fs-2  |  b,4  cs8-2  ds-4  e4  d8-4  c-1  |  
b4  a8-1  g  fs4-2  d  }
                  \alternative { 
                          { < g,-2  b-1  d  g >2  < g  b  d  g >4   e''8  fs-4  
 \break }
                          { < g,,-2  b-1  d  g >2  < g  b  d  g >4  b'8  g }    
                  }
}

lower=  \relative c'    {
        %\set fingeringOrientations = #'(left)
        \tag #'partial  {  \partial 4  g,8-3  fs-3 }
        \tag #'rests  {  s2.  g8-3  fs-3  }
        \repeat volta 2  {  %1st section
        e4  a  b-1  a  |  g-3  fs-1  e  fs-2  |  g-2  a  b-1  a  |  g-3  b-1  
e,8  fs-1  g-3  fs-3  |
        e4  a  b-1  a  |  g-3  fs-1  e  fs-2  |  g-3  c-2  d2\5-3  }
                \alternative {
                        { s2.  g,8-3  fs-3 }
                        { s2.  g4-2  }
                }
}

melody=  <<  \upper  \\  \lower  >>

\score  {
        <<\context Staff  << 
        \set Staff.midiInstrument = "acoustic guitar (nylon)"
        { \clef "G_8"   \key e \minor  \time 4/4  \set fingeringOrientations = 
#'(left)   \keepWithTag  #'partial   \melody  }  >>
        >>
        \layout { }

}

\score  {
        <<\context Staff   << 
        \set Staff.midiInstrument = "acoustic guitar (nylon)"
        { \clef "G_8"   \key e \minor   \time 4/4   \unfoldRepeats   
\keepWithTag  #'rests  \partcombine  \upper  \lower  }  >>
        >>
        \midi {  \context  {
                        \Score
                        tempoWholesPerMinute = #(ly:make-moment 90 4)
                }
        }

}

reply via email to

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