Hello! Currently having an issue using FMOD in Unity; mainly with FMOD seemingly not recognizing the Realtek ASIO driver that comes with Windows. Looking at RegEdit shows me that the registry entries exist in HKEY_LOCAL_MACHINE\SOFTWARE\Realtek ASIO, containing a CLSID and description. When trying to get the driver info, FMOD gives me this error in the Unity console:
[FMOD] OutputASIO::enumerate : CoCreateInstance returned 0x80040154 for driver 1.
I installed ASIO4ALL and tried to see if FMOD recognized it in my Unity project, and it does. The registry entries for ASIO4ALL and Realtek ASIO seem to be very similar, so I’m not too sure why the Realtek driver isn’t being recognized.
What exact version of Unity and FMOD for Unity are you using? Also, in FMOD for Unity’s settings (FMOD → Edit Settings), could I get you to set the logging level to “Log”, enable API error logging, and upload a full log from Unity where the drive issue is occurring?
Thanks for the reply!
I am currently using FMOD for Unity 2.02.25. As for the logs, unfortunately, it seems like this is all that I am seeing that is pertinent to the issue; from the moment that the output is set to ASIO when the drivers are being initialized:
[FMOD] SystemI::setOutputInternal : Setting output to 'FMOD ASIO Output'
CoCreateInstance returning 0x80040154 indicates the REGDB_E_CLASSNOTREG error, meaning that something is wrong with the key-value pair for that driver. As far as I’m aware, the correct path should be HKEY_LOCAL_MACHINE\SOFTWARE\ASIO\Realtek ASIO, so I’d recommend moving the pair you’ve found to that directory, or reinstalling the Realtek ASIO driver, and seeing whether that resolves the issue.