FX introspection

Is there a way to iterate on the results of fx_names and see all the options, value types/ranges, and defaults? I’d like to put together an FX/options composer/randomizer/preset generator. :sunglasses:

My brute force backup plan is to stroll through the source code – just thinking there might be a more delightful option.

sonic-pi/etc/synthdefs/designs/sonic_pi/synths/fx.clj

actually, this looks better…

sonic-pi/app/server/ruby/lib/sonicpi/synths/synthinfo.rb

quick example of grabbing defaults for gverb:

fx_details = SonicPi::Synths::SonicPiSynth.get_all
gverb_arg_defaults = fx_details[:fx_gverb].arg_defaults

iterate on all the fx to further brighten your day! check under the hood here should you be so inclined