Open ijijn opened 1 year ago
What host did you try this with? It may be an issue with that host. If you check the code here there's nothing that could cause it to read the same buffer multiple times unless the host used the same pointer for each event: https://github.com/robbert-vdh/nih-plug/blob/b31bafdc4b32d8295100a022b42c99f1d8e8340d/src/wrapper/vst3/wrapper.rs#L1143-L1150
And this works just like you'd expect in REAPER 6.79 with multiple SysEx events sent as part of a single process call.
Ah, thank you for pointing out exactly where in the code this is all going on. As it happens, I'm experiencing this specifically with REAPER (x64) on Windows 11. Hmm, may have to do some further digging to get to the bottom of it ⛏️
Hello NIH-ers!
I've run into a problem case whenever more than one SysEx event is processed during the same block using VST3. Basically, the last event appears duplicated as many times as needed instead of each one having its own data.
In contrast, the CLAP version handles this just fine.
Here's some sample JSON debugging output for comparison, where [xx] is used for unprintable characters...
correct (CLAP):
incorrect (VST3):
Note the truncated trailing [f7] (line 2) and the extra [00] padding (line 3) where the buffer lengths don't match the repeated event. The reported lengths themselves are accurate, however.
Thanks in advance for any thoughts on this 🚀
Iain