[Top][All Lists]

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

request for advice, MIDI file organization

From: Keith OHara
Subject: request for advice, MIDI file organization
Date: Wed, 11 May 2011 19:56:32 -0700
User-agent: Opera Mail/11.10 (Win32)

Dear list,
 LilyPond produces MIDI output that is very useful for checking accuracy of the 
.ly file.

(A) We need a mechanism to put several Voices on one MIDI channel, because 
scores often have more than 16 voices, but a MIDI port has only 16 channels 
(and I don't know anybody with a multi-port MIDI synthesizer).

LilyPond through version 2.12 assigns (by default) one channel for each Staff.  
In the resulting type-1 MIDI file, there is a separate Track chunk for each 

(B) One of the LilyPond developers wants to preserve the separation between 
Voices in the MIDI file.

I suggested dividing the MIDI file into a greater number of Track chunks, and putting each 
Voice in its own Track.  This means that several Tracks store MIDI events for the same 
channel, and there is no defined order between events in separate Tracks with the same 
time-stamp.  For example, << {c' g e c} \\ {g e c c} >>  has g-note-on in the 
upper voice simultaneous with the g-note-off in the lower voice; Windows Media Player 
happens to cut off the upper-voice g.  This problem is probably solvable, but I don't know 
how many other subtle problems there might be with several Tracks per Channel.

Is there another way to have both (A) and (B) with standard MIDI file format?

reply via email to

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