I have a Macbook Pro Retina, running OS X 10.10.5, and a BenQ GW Series GW2765HT monitor, which does not allow audio adjustment via my computer. I've tried Soundflower, but find that it is buggy and crashes. Is there any other way to control volume from my computer?
You can't use your Mac's system volume control to manipulate the volume on an HDMI/DisplayPort interface.
Basically, the HDMI signal includes digital audio that was encoded in PCM (Pulse Code Modulation) format. There are two main components to PCM and those are bit depth (how much of the audio signal is sampled) and the sampling rate (how many times per second the data is sampled). There's nothing in there that handles volume.
To put it another way, does your HDMI source like an XBox, Playstation or Blu-Ray DVD player have a volume button or does your TV handle the volume for you?
In order for you to control the volume from your Mac, you would need to do one of two things:
- Obtain or develop software specific to your television/display that would embed control signals onto the HDMI signal (similar to Sony's Bravia Theatre Sync
- Use a [USB Infrared Transmitter] to send volume controls from your Mac to the TV/Display. Note: The only software I was able to find that works with USB IR transmitters is IR Control
However, based on the price alone, I would probably just stick to my universal remote and be done with it.
I'd recommend MonitorControl:
MonitorControl allows you to control your external monitor brightness, contrast or volume directly from a menulet or with keyboard native keys.
MonitorControl is available on GitHub and as a Homebrew Cask:
brew cask install monitorcontrol
A YouTube review is available here.
Tested on an "LG 27UK850-W 27" 4K UHD IPS" monitor with HDR10 and USB Type-C connectivity and FreeSync, white:
Have a try of Boom 2, it's a paid app that does exactly what you're looking for http://www.globaldelight.com/boom/index.php
To be honest, in my opinion, even though Soundflower is buggy and crashes, if you can get it working, it's the best solution to this annoying problem.
I found myself in a very similar situation a few months ago. Being a Computer Science student, I decided to make an app to solve the problem. It's called DisplayControl, and it's a great, non-intrusive app that runs in the background and hides in the menu bar.
Now most of these apps (like Boom 2) add another layer between the source and the output. That's not great, as this can only make it more distant from the source. However, my app connects directly to your display trough a protocol called DDC. Basically, what the app does is it simply changes the settings of your display. So say your display's volume is set to 80% and you need to turn down the sound quickly, all you need to do is hit the hotkey or tap the icon in the menubar and slide the appropriate slider down. No need to use your display's terrible built-in menu again. If you want to find out more about it, all you need to do is go to http://displaycontrol.netne.net. It's the website I created for the app. You can find out more about it there and of course download the app. Let me know what you think of it!
$ brew cask install soundflower $ brew cask install soundflowerbed
Remember to give Soundflower whatever permission it asks for in system preferences. Set system audio output to
Soundflower (2 chn) and the Soundflower audio output to that of your monitor, and you should be good to go.