Closed kasimok closed 1 year ago
Looks like the problem is with lines like this: ProxyAudio: error: failed to start device 202
The proxy device actually does something fairly naughty which is to open a connection to an output device. Core Audio plugins aren't supposed to actually use the CoreAudio API. Normally this would create a deadlock, but the proxy device does it from a separate thread, which seems to work in practice.
However, on line 210 of AudioDevice.cpp, the call to AudioDeviceStart
is failing. My debug logging is apparently not very good because I didn't bother to actually have it print the status code being returned from this function. I recommend changing line 213 to:
syslog(LOG_WARNING, "ProxyAudio: error: failed to start device %u with error %d", id, err);
so that it prints the error code, and seeing what kind of failure you're getting. At this point I can't say why this line is working in a release build of the proxy device and not for you, but hopefully that'll give you a clue.
@briankendall Sure, thanks I'll try it later on. Another interesting thing is that the same self-compiled version runs OK on another mac, which is x86_64 arch. So at first, I thought it may have something to do with different architecture.
Hi @briankendall Nice Audio Driver. I download your release build, works like a charm. It can smoothly proxy my built-in speaker's sound.
However when I did "sign to run locally" in Xcode. The app client was able to set its proxy parameters to the driver. But the sound proxy is not working(there is no sound at all).
Note I'm testing on an M1 MBP 2020, with SIP disabled as apple suggested when developing an Audio Server Plugin. Also, I can see the device listed in the MIDI app. So I guess it's not the signing issue.
I checked the log of my Proxy Audio Device:
One more strange thing I witnessed is that when I switched back to the normal built-in speaker the sound became abnormal, it had small chokes.
Do you have any suggestions?