-
Notifications
You must be signed in to change notification settings - Fork 22
Description
AMY has a lot of internal state - principally the configuration of synths, voices, and oscs that determine the audio that will result from MIDI or other note-on events. Although this state is implicitly configured by the code calling the library, there could be scenarios in which the code doesn't want to have to track an exact sequence of events (for instance, when the setup is in response to user-interface objects like knobs and buttons), but would still like to be able to read and restore the current state, for instance to restore after a reboot.
To support this, the AMY API could be extended with something like size_t amy_dump_state(uint8_t *buf, size_t max_size) and void amy_load_state(uint8_t *buf, size_t size) to read and write a binary blob that captures all the current configuration of synths, voices, and oscs (and global things like echo, chorus, and EQ).