On Thu, Jun 28, 2012 at 7:36 AM, Nils <l...@nilsgey.de> wrote: >> >> I thought maybe the simplest way would be to make, for example, a midi file >> for the wind parts, and a midi file for the string parts, and then play them >> simultaneously to two separate midi ports, but I can't seem to figure out >> how to get the files to play in sync. >> >> Suggestions? > > > We are dealing with midi here, that means 16 instruments max. at each given > time. > If you want more you need to use several players in sync, connected to > several samples/synths. One for each player. > Since that is hard to do manually this role is done by software called > "Sequencer". > > What lilypond needs to do is to export 16 instruments on 16 channels and then > import all to QTractor or similar, hook it up to several instances of > fluidsynth, timidity or Linuxsampler and play away. > > This is hard work and best automated. Lilypond is no sequencer and afaik > nobody wrote a script or program to automate the whole process.
For basic playback from Lilypond (like via Frescobaldi), I create a separate context for MIDI, and then will do something like put all horns on a single instrument, brass on a single instrument (brass ensemble), all strings on a single instrument (string ensemble), and so on, to keep it all on the single MIDI channel. Then yes, once I am done composing I bring the MIDI into Rosegarden or similar and then create a proper performance for it (which Lilypond is not good for, and was never intended to be a performance app). As an example: For a horn, I will have this for the notes: hornOneF = \transpose c g \relative c' { \global % Music follows here. ... } hornTwoF = \transpose c g \relative c' { \global % Music follows here. ... } % this is for the printed score hornOneFPart = \new Staff \with { \override InstrumentName #'self-alignment-X = #RIGHT instrumentName = \markup \right-column {"1,2"} shortInstrumentName = \markup \right-column {"1,2"} } \hornOneF hornTwoFPart = \new Staff \with { \override InstrumentName #'self-alignment-X = #RIGHT instrumentName = \markup \right-column {"3,4"} shortInstrumentName = \markup \right-column {"3,4"} } \hornTwoF %score layout \score { ... \new StaffGroup = "StaffGroupSquare_Horns" { << \set StaffGroup.systemStartDelimiter = #'SystemStartSquare \set StaffGroup.instrumentName = \markup {\left-align Horn in F} \set StaffGroup.shortInstrumentName = "Hn.F" \hornOneFPart \hornTwoFPar >>} And then the MIDI stuff: hornFMIDI = \new Staff \with { midiInstrument = "french horn" } << \new Voice = "horn 1" { \voiceOne \transpose g c \hornOneF } \new Voice = "horn 2" { \voiceOne \transpose g c \hornTwoF } >> %this score context does MIDI output \score { << \fluteMIDI \oboeMIDI \clarinetMIDI \englishHornMIDI \bassoonMIDI \contraBassoonMIDI \hornFMIDI \brassMIDI \timpaniMIDI \DrumsIMIDI \celesteMIDI \stringsMIDI \contraBassMIDI >> \midi { \context { \Score } } } -- Brett W. McCoy -- http://www.brettwmccoy.com ------------------------------------------------------------------------ "In the rhythm of music a secret is hidden; If I were to divulge it, it would overturn the world." -- Jelaleddin Rumi _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user