Heikki Tauriainen <[email protected]> writes: > (About a year ago the project team was very kind to accept some MIDI event > handling patches of mine into the official sources, and create an issue > for tracking their status should this happen again, I'm happy to answer > any questions about what I've tried to do.) > > > In short, these patches will add the following three context properties > for controlling additional MIDI parameters: > > Staff.midiPanPosition [an integer from 0 to 127] > Pan position (0 = hard left, 64 = center, 127 = hard right)
Should be #LEFT hard left #CENTER center #RIGHT hard right. The range is not entirely symmetric. Pan has a fine control also where 0000 is left, 2000 is center, and 3fff is hard right. I think I'd use the conversion formula round ((dir+1)*max/2) where max is the available maximal value and round is the normal round-to-even rule. > Staff.midiReverbLevel [an integer from 0 to 127] > Reverb effect level (0 = no effect, 127 = full effect) > Staff.midiChorusLevel [an integer from 0 to 127] > Chorus effect level (0 = no effect, 127 = full effect) Effects should probably scale from 0 to 1 rather than 0 to 127. I don't see "Balance". > For simplicity, the integer values are simply passed directly into the > generated MIDI files without performing any calculations on them > (except for checking their range): for example, I didn't implement any > scaling for the values (which admittedly differs from how MIDI volume > is handled with midiMinimumVolume and midiMaximumVolume). But I think that should be done. -- David Kastrup _______________________________________________ lilypond-devel mailing list [email protected] https://lists.gnu.org/mailman/listinfo/lilypond-devel
