Dan Ellis
Dan Ellis
I feel like a bus is a bus and an output is an output. Oscs are assigned to buses, each bus has effects parameters. Then outputs are mixed down from...
Oh I think maybe there's a difference in how we specify the final mixdown. Your `bus_output=1,2` suggests you set the output as a property of some signal source. For me,...
Hi Roman - I'm sorry this is so obscure, we haven't been able to put a lot of thought into this. You can use [`run('learn_midi_codes')`](https://github.com/shorepine/tulipcc/blob/main/tulip/shared/py/learn_midi_codes.py) to set the lists of...
Yes, how long until the ESP32-P4 is available for this kind of thing?
BTW, I made `synth.note_on(note)` take a default velocity of 1.0 in the recent `midi.py` updates, so you can have symmetric `synth.note_on(note)` and `synth.note_off(note)`.
I have an idea for how to fix this, which I think also improves the rationality of the whole thing. Right now, we squirm a little in the tutorial when...
This was fixed in 9b3199b7b34cb97f205274d8b192ca5226643aa7
Brian's idea is to use the `voices` system to allocate a voice that holds down the needed oscs. For instance, to reserve 4 voices you can do something like `amy.send(voices=NEW_NUMBER,...
The [`wave=amy.PARTIALS`](https://github.com/shorepine/amy?tab=readme-ov-file#partials) functionality is related to this. However, to some extent `PARTIALS` is a throwback to an earlier time when oscs were grabbed without care .. the patches simply grab...
The current operation is that there is a parent osc with `wave=amy.PARTIALS` that retrieves a preset partials set, which specifies the total number of partials required. It then grabs the...