-
Notifications
You must be signed in to change notification settings - Fork 23
Description
Maybe you want to set up a synth and rather than defining a user-defined patch, you just want to feed the setup directly, e.g.
amy.send(synth=1, num_voices=6, patch='v0w1Z')I think this is unambiguous and ought to work, but I think it doesn't work at the moment - the handling of patch (wire code u) is special-case and I think only works for storing to a user-defined patch. We should fix this?
In fact, this came up as part of amy.get_synth_commands(synth=X, dest_synth=Y), which is supposed to return series of wire commands to set up a synth from scratch to mirror the config of synth X. But before we can send the osc setup commands, we have to initialize the synth to have the right number of oscs. In stored patches, you do this just by referencing the last osc. But if this is all we want to do, maybe we should support doing it explicitly, e.g. with a num_oscs flag which would be a synth-level command e.g. in, so
amy.send(synth=1, num_voices=6, num_oscs=1)which becomes i1iv6in1Z, and sets up a synth with 6 voices each with one, unconfigured osc, ready for following osc config commands.