I decided to create a new thread, as I didn’t want to confuse the other topics/conversations, though they’re all related IMO: this is in reference to various other threads in the forum…
- About presets…
Solution for user-made presets? - Sliders ‘meta’ control (and in my personal case, using sliders to create ‘monome-like’ grids)…
Mouse Grid - “State” save/set/write opcodes (and their antipodes) –– and possibly other JSON-related threads(?)
I followed the latter example from the Docs and merged all these ideas together into a patch/plugin that will save multiple states as discrete presets automatically, you can get an idea about it in the following animation…
And you can check out the plugin + csd file here:
InternalPresets.zip (2.5 MB)
So, many questions / things to report / ideas…
-
In the Docs example for “Channel State Save,” what’s the purpose of the k0k variable right in front of this opcodes (or how does it work)?
-
I noticed what might potentially be a bug in my grid patch: as soon as Cabbage runs the csd, the grid automatically updates with the hover of the mouse (it doesn’t respect the ‘if mouse == down’ instruction until a preset has been recalled). However, this doesn’t happen with the plugin inside the DAW environment.
-
Making changes to each preset is well remembered by the plugin/DAW – except for the first preset: if P1 is the last thing on screen, yes it will be remembered OK next time the session is opened; but if the plugin is left on some other preset, the 1st preset ‘forgets’ the last-saved state (not sure if this is a problem at init time and if it’s got something to do with my patch as instruments are called etc.).
-
As to the ‘managing user preset’ thread(s), it would be great to have the ability to update/save a specific preset (as opposed to appending and removing –– e.g., I’d like to update, say, ‘preset 3’ and only 3 and leave the others alone; presently, that seemed to require some cumbersome coding when working with the standard combobox+file button preset protocol. Also, notice that in this example, I’m attempting to ‘autosave’ the presets, so the user just has to go to any one preset, make changes and voilá.
-
Currently, these multiple widget/channel states are saved each into its own preset file (which is fine when working with a small number of presets ‘embedded’ in the plugin itself, as shown in the example). However, it would be great if one could save all of that data into a single JSON file (that would be part of the DAW’s standard preset mechanism or that can be easily archived/shared/etc.).
-
Following the last point –– this might already be implemented so apologies if it’s ignorance on my part –– it would be great if one could easily update not only a single preset (with any number of channel states), but if one could parse (read/write) specific ‘keys’ or channels within a preset. I noticed there were some articles about this (“Get/Set State Value”), but I couldn’t get these to work and anyhow, had a hard time understanding how they worked? Any insights or pointers will be greatly appreciated!
-
With all that said/to summarize: if there’s already a (more efficient) way to do: 1) what the example attempts to showcase: to have a few presets internal to the plugin but which can be updated by the user and remembered by the DAW/session; and 2) to save these into one ‘giant’ preset file (which would become the actual ‘plugin preset’ and one that can be archived/shared), well (almost) all my dreams will come true and we’ll have a whole veggie garden in heaven!