briankendall / proxy-audio-device

A virtual audio driver for macOS to sends all audio to another output
The Unlicense
514 stars 33 forks source link

Something is missing in the PAD Setting App, is it? #26

Open MartinMajewski opened 1 year ago

MartinMajewski commented 1 year ago

Bildschirm­foto 2023-03-16 um 11 58 39

I want to run PAD on my M1 Max MacBook Pro with installed macOS Ventura 13.2.1 (22D68). The driver is correctly installed and PAD shows up as a virtual output device.

However, the app looks odd to me. There is no "Save" or "Apply" button, nor does the app do anything to the driver. Is this normal, or a bug? How to apply the settings?

briankendall commented 1 year ago

Settings are applied automatically when you change them. Do you see the device's name change when you edit it? And does changing the proxied device have an immediate effect?

MartinMajewski commented 1 year ago

Nope! That's why I'm asking.

When I start the settings app, I get the default PAD name (after uninstalling the plugin, the settings app is also not showing it anymore, so obviously, reading works). However, no changes are applied, not the name or the proxied device.

Does the settings app need admin rights, too?

briankendall commented 1 year ago

No, the settings app doesn't need admin rights. Which version of macOS are you using, and is it on an Intel or Apple Silicon mac?

MartinMajewski commented 1 year ago

See 1st post ☝️

briankendall commented 1 year ago

Well that speaks to my level of reading comprehension! I don't offhandedly have a guess as to why the settings aren't working for you. One more question: if you change one of the settings, for example the name, and then quit and restart the app, does it reset back to its default value?

MartinMajewski commented 1 year ago

Yes, it resets back to the standard values.

BrentWilkins commented 1 year ago

Same thing here on my M1 Pro running Ventura 13.2.1. I installed the v1.0.6 binary release. I noticed that the owner and group were different than everything else in the Plug-Ins directory, so I ran this:

$ sudo chown -R root:wheel /Library/Audio/Plug-Ins/HAL/ProxyAudioDevice.driver
$ sudo launchctl kickstart -k system/com.apple.audio.coreaudiod

The settings are now 'sticking' when I close and open Proxy Audio Device Settings, but my volume buttons don't work.

briankendall commented 1 year ago

@BrentWilkins I think you figured it out! I've confirmed I can reproduce the issue in Ventura if ProxyAudioDevice.driver is not owned by root. I'm also still able to use the volume keys on my keyboard. Are you sure you selected the proxy device as your main output device in System Settings or Control Center?

@MartinMajewski If you execute the two commands listed in BrentWilkins post, does it fix the issue for you?

BrentWilkins commented 1 year ago

@briankendall I wasn't choosing my virtual device in the main system settings. I had to fiddle with the buffer size and who knows what else to get the audio back on. What are the units of the buffer and what is a 'typical good setting'? Thanks for the awesome tool. I'm assuming it's lighter weight than some of the other options with more features. I hope to find time to look at getting this into Homebrew now that I have it working.

It looks like the issue was the command we used to install it:

sudo mv ./ProxyAudioDevice.driver /Library/Audio/Plug-Ins/HAL/

If I use sudo cp the owner and group changed for me; at least with a single empty test file.

briankendall commented 1 year ago

I updated the installation instructions to include changing the ownership of the driver to root, so hopefully that'll settle the issue.

The buffer doesn't really have units. It's just a count of how many samples are in it. And the higher the sample rate of the device, the smaller the length of time of the buffer will correspond to. A higher value means there's less chances of buffer overruns but high latency. I recommend setting it to one of the lower settings, but not too low. 64 is usually pretty good. If you get pops or clicks, then increase it to the next largest size.

I can't necessarily say this driver is lighter weight than other options. Certainly other solutions may have more features and more complexity, but they may be written more efficiently than my driver.

aikiharp commented 1 year ago

I set ownership of the driver as recommended on my 2020 MBP M1 running Ventura 13.2.1 and while the PAD settings app retains the settings, I don't have volume control keys working, except for mute. I've selected PAD in System Settings and can control volume there and in Control Center, but not via the keyboard

briankendall commented 1 year ago

@aikiharp Can you control the volume of other audio devices using the keyboard?