Hi!
I’m aware this is an issue that reappeared in this forum a bunch of times, but I believe I’ve tried everything to avoid it.
[FMOD] SoundSourceInstrumentInstance::startChannelIfReady : Loading delay exceeded. Instrument {cbbaac85-1769-4420-a07e-d70ffec27141} started 8.62ms later than expected, sound may play at incorrect time. SCHEDULE_DELAY: 10.23ms.
Here’s a video where I explain the issue in detail: https://youtu.be/zx8LCo_WX7M
I’ve got 10 instances holding the same reference. I set them up timely before playing using CreateInstance(), then I’m cycling through them on demand. On the first cycle, everything goes well. But once my pooling system cycles back to the first instance and starts replaying them, the warning appears. Streaming is turned off on the respective audio files.
Things I’ve tried:
- EventDescription::loadSampleData() at various code positions
- stopping instances timely using both stop modes (and not doing that)
- adding a cooldown within the pool’s code
- not assigning a new 3D position before start()
- checking “Load Bank Sample Data” in FMODStudioSettings
- turning on/off Max Instances and Stealing in the respective events
- making the events’ content longer
On the profiler everything looks as expected, biggest CPU spikes of the event go up to 2%, CPU (Mixer) totalling at 4%, CPU (Update) at 5%.
To clarify: I don’t wish to just get rid of the warning, I’d like to understand why it’s coming up on replaying only, and achieve for my sounds to be played consistently “perfectly” in time, even though at the moment I don’t hear actually the delay.
Is there a way I can prepare the instances to play the same event again soon?
Thanks for the help!