Closed robbert-vdh closed 1 month ago
I think what I'd like to have from a plugin point of view to get the initial value for the modulation right would be this:
See also https://github.com/free-audio/clap/discussions/316
@abique what do you think?
Should be fixed for Bitwig 5.0 Beta 7.
Very excited to give that a try, should make a huge difference when using polyphonic modulation with extremer values!
@robbert-vdh did you have a chance to test this? BTW, I've changed a bit that code for the beta 9.
I tried testing this with Beta 9 but I'm running into audio engine crashes and I was getting out of bounds events at one point. I submitted a crash report. And here's the backtrace with no symbols if you have a way to retrieve those from the offsets:
@robbert-vdh I think it isn't crashing anymore. I'll double check that shortly.
@robbert-vdh please re-open if not fixed for you. I've just verified it and looks good to me.
Right now Bitwig always sends polyphonic modulation every 64 samples with no regard for note start times. This results in notes/voices potentially getting their first polyphonic modulation value up to 63 samples after the note start. Before that point the note ID doesn't technically exist yet, and Bitwig is sending invalid events for invalid note IDs. This looks a little something like this:
To fix this, Bitwig would need to (re)send the initial modulation value just after the
CLAP_EVENT_NOTE_ON
event.