I figured out the problem - there is only one event that had significant delay, and it was because the place where System update was getting called was actually blocked from being called for a short time, while several systems in the engine were paused.
[facepalm]
Then, because of the one “real” delay, I wasn’t sure if the others were playing on time, but I think they’re fine.
I’m just glad to hear it’s all sorted out. It does raise a good point though. In the Studio API, commands are queued until the next system update. So it’s important to call Studio::System::update() regularly.
Thanks Graeme. Can you confirm that it’s “ok” to be creating the instances on the fly, as I am, as long as the banks are fully loaded, and the event descriptions have already been fetched?
Yes, it’s perfectly fine to create event instances on demand. In fact, that’s what we recommend. As long as the sound data is already loaded, there should be no extra delay.