View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0001208||OpenMPT||Feature Request||public||2019-03-01 19:09||2019-03-04 20:41|
|Priority||normal||Severity||feature||Reproducibility||have not tried|
|Product Version||OpenMPT 1.28.03.00 / libopenmpt 0.4.3 (upgrade first)|
|Summary||0001208: Commands that automatically change parameters|
In order to change VSTi parameters slowly over the course of many patterns, i have to enter (or cut and paste) "blank" PC entries at the beginning of the modification and at the end, then use interpolate to create a series of values that emulate turning a synth knob. Could there be a quicker way to do this? Perhaps we could have MPT take over the action...
Is it possible to create a PC-type command which does this automatically? IOW, when encountering this new command, MPT modifies the value for that instrument for that controller CONTINUOUSLY until some other command or note event is reached in that channel.
Perhaps the command would allow the user to call the instrument and the parameter and simply change + or - the current value of the parameter by the given amount. So for example , you would place in the first row of the effect something like "<b>PC± 004 499 -03</b>," which would change controller 499 of plugin 4 by -3 at the beginning of every row until some other event is called in this channel. That is, you would not have to place this command in every row. The modification of course would also stop if the controller's value becomes 0 (and cannot be decreased) or 999 (and cannot be increased). It would also stop if you placed a zero value of this command, or maybe even a note stop "==".
|Tags||No tags attached.|
|Has the bug occurred in previous versions?|
|Tested code revision (in case you know it)|
I'd rather see automation envelopes happening than yet another hacky automation command. Especially for slow and long changes, an envelope that is always visible would work much better visually than a pattern command that is only found in a single spot and then continues to do its magic in seemingly empty pattern cells.
For what it's worth, you can already automate plugin parameters through instrument envelopes - see https://forum.openmpt.org/index.php?topic=3056.msg39765#msg39765 for more details.
No, i agree! — Envelopes assigned to plugin controllers is an even better idea! The only thing that would slow down development is the fact that a GUI would have to be created as well as the actual methods.
And i didn't know about macro adjustments with envelopes! I'll hafta check that out.
As you probably know by now, I'd rather implement something that takes a longer time to develop than something that may be quick to implement but will add a lot of complexity or legacy. In this particular case, commands that are active over the during of several rows would add quite some complexity to the playback engine and would be difficult to keep track off by the user, so I'd rather spend more time on a proper solution that is also easy to understand. We cannot get rid of existing complexity but I want new features to not inherit this complexity by restricting them to the existing UI - see for example the implementation of tempo swing, which was previously suggested by users to be based on stateful pattern commands, much like your suggestion.