We’re using Unity Cloud Build to run some automated play mode tests but we’re running into this error when the tests start to run:
'[Error] [FMOD] OutputCoreAudio::init : No output sound devices found!'
The tests ran fine before when we were using Unity’s own audio so the issue seems to be related to FMOD integration. We have the FMOD settings as “Single Platform Build” with the assets going into Streaming Assets folder and have included those files in source control but that still did not resolve the issue.
Any help on what to try would be greatly appreciated.
What version of the FMOD Unity integration are you using?
Are you bale to provide the entire output log?
There may be some more useful information before or after the init error.
Here’s the error when the tests try to run:
SetUp : Unhandled log message: '[Error] [FMOD] OutputCoreAudio::init : No output sound devices found! '. Use UnityEngine.TestTools.LogAssert.Expect
Then further tests cannot find the FMOD events:
SetUp : Unhandled log message: '[Exception] EventNotFoundException: [FMOD] Event not found 'event:/SFX/Ambience/Ambient Multi''. Use UnityEngine.TestTools.LogAssert.Expect
Here is our FMOD Settings:
We also tried checking in the Streaming Assets folder into source control so the bank files are already there in the cloud build but that did not resolve it either.
I hope that helps and thanks for investigating!
This means that FMOD was unable to initialize the audio for the device. I’m not entirely sure what is involved with cloud build tests and how they are run, but Unity obviously handle it for their own audio.
Are you testing on a local device?
Yes, all the tests pass when run locally, only fail on the cloud build. We have Unity’s default audio switched off as per normal FMOD setup.
We did find a work around to just intercept the error messages before they get up to the test and use
to swallow the errors without failing the test but it’s not ideal.
We don’t currently have access to cloud builds so I am unable to test this. I am trying to get access to it at the moment, but I am unsure of how long that may take. Until then your workaround may be the best solution.