ERR_OUTPUT_INIT when clean-building on a headless machine

we’re using an aws windows machine connected to jenkins to make builds of our game.

we’ve noticed that on a clean sync, the resulting build won’t function correctly, and will throw a ton of fmod errors, including not finding busses.

this error error in the output:
FMOD Studio: Encountered Error: ERR_OUTPUT_INIT Error initializing output device

if we remote into the server and open unity, subsequent builds will work, and won’t have the error.

we recently removed the fmodcache from source control, and rely on the server to generate it itself. we did this because we found everyone needed to check it out in perforce. I’m assuming there’s something about the headlessness of the build server that’s stopping it generating the cache the first time?

if we commit fmodcache again, but make it writable, when should it ever be committed, and by who? if we leave it out of source control, how do we properly generate it on a headless server?


There should be no need to track anything in Plugins/FMOD/Cache/ as this should be generated programmatically. You should be able to force cache creation with a call to FMODUnity.EventManager.RefreshBanks at the start of your build script. Can you please try adding that in and let me know if that helps at all?
If you could also please tick Enable API Error Logging, set your Logging Level to “Log” and send me the output of your build log, that might reveal some more information on what’s failing.

thank you, calling RefreshBanks within our build function seemed to fix things!