DISTRHO / DPF

DISTRHO Plugin Framework
ISC License
670 stars 96 forks source link

Export presets for VST #76

Open falkTX opened 6 years ago

falkTX commented 6 years ago

Because VST spec is shitty, we need to save/cache the current state for all presets in memory. The current behaviour in DPF was just so I could skip having to do this. Losing presets is a bit painful too, need to see how much work it is to expose them properly. Or maybe just expose them in a kinda wrong way, the spec is broken and nobody follows it anyway.. hmm

SpotlightKid commented 5 years ago

I'm trying to understand what this ticket means and if it is related to the problem I'm seeing.

Are you saying that built-in presets do not show up in VST plug-ins at the moment?

Because that is what I'm seeing. Builtin preset show up in DSSI plugin and are exported as LV2 presets in the LV2 bundle, but VST always only have one preset "Default". I checked different hosts (Carla, Tracktion, Ardour).

Check the example plugin d_parameters, for example. It should have two preset "Default" and "Custom", but only "Default" shows up, whereas the DSSI version shows both.

falkTX commented 5 years ago

That is correct. The issue is that implementing the presets in the proper VST way is quite the pain. We have to maintain the full state for all exported presets, and save it as part of the chunk too...

Seeing as nobody follows VST spec anyway, and VST2 is dead now, I am not sure I care so much. Depends on what hosts do on Linux I guess. Which one supports VST but bot LV2 that we should focus on?

SpotlightKid commented 5 years ago

Tracktion/Waveform, for example, unfortunately. Saving and restoring FXP presets works well, though.

Reaper also doesn't have LV2 support yet, AFAIK, although it is reportedly planned.