X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fmidi-item.cc;h=a04553508fc660314c5d9a7452af6501ae0189b8;hb=f114e3c33f9c37c39c7a3fedf66ca5a074785118;hp=ab67947d553e67e99c80acfe2d474ef0b4e5890e;hpb=e5380f29f23e204a603f8398368d2a7dc0260aa0;p=lilypond.git diff --git a/lily/midi-item.cc b/lily/midi-item.cc index ab67947d55..a04553508f 100644 --- a/lily/midi-item.cc +++ b/lily/midi-item.cc @@ -181,7 +181,8 @@ Midi_time_signature::to_string () const Midi_note::Midi_note (Audio_note *a) : Midi_channel_item (a) , audio_ (a) - , dynamic_byte_ (0x5a) + , dynamic_byte_ (a->dynamic_ && a->dynamic_->volume_ > 0 + ? Byte (a->dynamic_->volume_ * 0x7f) : Byte (0x5a)) { } @@ -287,6 +288,10 @@ Midi_dynamic::to_string () const if (volume > full_scale) volume = (int)full_scale; + int const volume_default = 100; + if (audio_->volume_ < 0 || audio_->silent_) + volume = volume_default; + str += ::to_string ((char)0x07); str += ::to_string ((char)volume); return str;