default pset, and script-supplied psets #1123
Comments
|
just some data points from it's interesting that the growth of the ecosystem + userbase has made "default states" more attractive -- that when someone loads a script, they either want it to be how they last saved it or they want to define the re-load state. it sorta feels like a Nintendo Switch, where norns is the main console but you want to pick up where you left off in an individual game. actually, thinking more about it, what if we offered a parameter class that persisted through reboots and reloads? sorta the way that a "fresh" session in a DAW doesn't require you to re-select primary settings. we offer this on a system-level, but it might be nice to let a dev define whether a parameter in their script is a primary performance setting (something a particular user might set to the same thing each time, though that "same thing" is different across users). for example, i have a "MIDI control" toggle in a script which enables or disables MIDI messages being used for control over certain parameters and a "MIDI port" setting. i want my end user to be able to set those once and reload the script, or enter into new presets, without those parameters being overwritten. right now, i'm committing those parameters to a separate data file (which is rewritten any time one of those few parameter changes) and adding a 1-shot 100ms metro at the end of my init() to recall those parameters if the script it reloaded. it's a really nice feature, to be able to reload without having these settings i know i'll just re-set the same way being nuked. |
|
cool! so we're talking about two issues:
if each param had an additional attribute to specify its save-level (global, normal, off) we could navigate all this. i've hesitated in the past because it is an additional UI challenge. |
|
maybe worth noting (to manage expectations) that since parameter actions are arbitrary functions, banging a preset doesn't necessarily restore state. |
params.read(1)The text was updated successfully, but these errors were encountered: