Change preset with .syx

Hi all,
I was thinking a nice way to share plugin presets with users might be to just send them .syx files which loaded changes to plug-in parameters . Users could then easily share their favorite presets on a forum.
Is there a JUCE class that does that?

Sysex is target specific, whether that be a hardware or software synth, so there is no standard way to create a .syx file from a given set of parameters.

The closes thing you’ll get to this out of the box is if you’re using an AudioProcessorValueTreeState for your plugin, you can convert the owned ValueTree to XML and then share this.

Thanks Leehu. I assume it’s still possible to write a custom class that would load a .syx

Not sure what point there is to use something like .syx when xml/base64/hex etc exist.

Hi. yes, you can write custom class, but as Xenakios mentioned, not sure why you’d really want to do that over XML, unless space is a premium for some reason…?

Thanks! Well the reason I am thinking of this is because I made the plugin with max without using a value tree. There are less than 20 settings in the plugin. A piece of paper and a postage stamp might do the trick to send presets around. I can probably write a method that converts the parameters into a value tree somehow by hand. I was thinking a .syx file might be less intimidating to end users.

I’d say XML is less intimidating for users as it’s readable, whereas .syx are binary files.
But either way, you’re not intending the users to open these files anyway I guess so that doesn’t really matter.
Sounds like you’re going to have to write code to do what you want, whichever you choose, so go with your preference I’d say

Thanks yes I might save writing that code for a rainy day!

If you want to look into intuitive ways to share settings have a look at what Goodhertz do. They create web link so you can view the settings online, for example: this is a nice short human readable (editable) bit of text that is very easy to share and can be pasted directly into the plugin to load the settings.

1 Like

Yes that’s a great idea !

A friend contacted me about my delay plugin and discussed changing the values of the sliders with midi controllers.
If the sliders accepted cc messages and could be changed by cc values then you could kind of kill 2 birds with one stone …
Perhaps users could just share midi files with a bunch of cc messages at the start ??