On Mon, 2015-10-05 at 22:07 -0500, msk...@ansuz.sooke.bc.ca wrote: > The discussion of MIDI in the manual refers to "volume" throughout. > It appears that at least some of the time, that actually means MIDI > velocity, which is not the same thing.
Based on my experience with the MIDI code (I'm not a core developer, but I've added support for a few context properties for adjusting values of some MIDI controls), I can confirm your observation: according to the change history, LilyPond has assumed a strict "velocity-as-volume" model since version 2.14 <http://lilypond.org/doc/v2.14/Documentation/changes/>. > For instance, dynamic marks like \f and \pp seem to set the velocity. Yes, this is correct. > Do *all* references to "volume" really mean velocity, To my understanding, I think it's safe to assume so (at least I've learned to interpret this term in the documentation in this way). > or are there also some LilyPond features that set the true MIDI > volume (control change 7)? I don't think that it's currently possible to control CC#7 using any input file level features. I've observed that LilyPond actually emits CC#7 events to a generated MIDI file on dynamic (MIDI velocity) changes created by the Dynamic_performer, but these CC#7 changes seem to always just set the MIDI volume to 100 (in the range from 0 to 127). To me this looks like a possible bug (and could be just a remnant of the implementation prior to 2.14), but this is only my personal opinion... That said, it wouldn't be too difficult to add support for controlling CC#7 via another Staff-level context property (similar to those available for controlling MIDI pan position, balance, expression, and chorus and reverb levels), but such a context property would certainly not work well without also disabling the emission of the automatically generated CC#7 events that I mentioned above. Do the core developers have any opinions (or knowledge) about the purpose of the automatically generated CC#7 events? -- Heikki Tauriainen _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user