Skip to content

In-line synth patch string doesn't work / num_oscs parameter #567

@dpwe

Description

@dpwe

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions