Hi, I'm about to deal with https://github.com/LMMS/lmms/issues/280 however we have a little problem here. Notes at volume 100% equal MIDI events with maximum velocity (127). For notes above 100% we can't map the volume properly to a MIDI velocity. This leads to problems in two areas: test notes in piano roll which are sent to the instrument track as MIDI events and MIDI-based instruments. In both cases we can't play notes louder than 100%. The question now is how to fix that. IMHO there are three possible solutions:
- map volume 100% to MIDI velocity=63 and volume 200% to velocity 127. This would make no difference for the test notes as the MIDI velocity is mapped back to a volume with the same formula later. For MIDI-based instruments this would lead to sound at half the volume which could be normalized again in InstrumentTrack::processAudioBuffer() (v_scale is doubled if n == NULL). In terms of volume things would be the same as before except that we have a correct behaviour for notes with volume up to 200%. The only drawback here is that instruments may sound different at velocity=50% - imagine a good piano soundfont which would play a less bright sound. - make test note playback work at arbitrary volumes with a workaround/additional information and cap velocity at 127 for MIDI-based instruments. This would mean that any notes on e.g. an Sf2player or VST instrument track will have a maximum volume of 100% even if you set a higher value in piano roll. - remove support for setting a volume > 100% for notes in piano roll at all. Existing projects would load regularly so compatibility would be kept. This would be the cleanest solution. Any opinions? Toby ------------------------------------------------------------------------------ Flow-based real-time traffic analytics software. Cisco certified tool. Monitor traffic, SLAs, QoS, Medianet, WAAS etc. with NetFlow Analyzer Customize your own dashboards, set traffic alerts and generate reports. Network behavioral analysis & security monitoring. All-in-one tool. http://pubads.g.doubleclick.net/gampad/clk?id=126839071&iu=/4140/ostg.clktrk _______________________________________________ LMMS-devel mailing list LMMS-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lmms-devel