eiz / SynchronousAudioRouter

Low latency application audio routing for Windows
http://sar.audio/
GNU General Public License v3.0
1.02k stars 136 forks source link

Sometimes the registry filter causes "class not registered" errors #3

Closed eiz closed 8 years ago

eiz commented 8 years ago

When using the registry filter for default endpoint overrides, sometimes IAudioClient::Initialize will start returning REGDB_E_CLASSNOTREG, preventing any WASAPI client from playing audio. Uninstalling the driver on the live system makes the error go away without rebooting, so it clearly seems to be a problem with the MMDeviceEnumerator registry override.

eiz commented 8 years ago

This is caused by SarAsio trying to load into audiodg.exe, which fails because audiodg is a protected process. Workaround is to set DisableProtectedAudioDG registry key as described in https://msdn.microsoft.com/en-us/library/windows/hardware/ff538609(v=vs.85).aspx, but this is not satisfying. This registry filter should not affect system services.