Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

DonJimmy

macrumors newbie
Original poster
Feb 18, 2021
21
4
I'm not getting the full 16 increments when adjusting sound on ventura.

Here's what happens when I increase the volume from zero, step by step.

Step 1: Audio output goes to 0.082 (As seen in audio menu in system settings or in midi app)
Step 2: Still 0.082
Step 3: 0.184
Step 4: 0.327
Step 5: Still 0.327
Step 6: Still 0.327
Step 7: 0.51
Step 8: Still 0.51
Step 9: Still 0.51
Step 10: 0.735
Step 11: Still 0.735
Step 12: Still 0.735
Step 13: Still 0.735
Step 14: 1.0
Step 15: Still 1.0
Step 16: Still 1.0

So as you can see, instead of the 16 incremental volume steps I should have, I only get 7, which is not enough.

Any idea why this is happening or how I could fix it? This problem does not happen if I use the internal speakers, so it seems to be related to usb-c.

Here's my system:

  • Mac mini 2020 (M1)
  • Ventura 13.3.1
  • KEF LSX II speakers (connected through usb-c).

 
Last edited:
I suspect it must have something to do with the USB connection, because not only do I not see that there is a 16-step limit, but I can't find anywhere that you can even see individual steps – my external speakers are plugged into the audio port directly, not USB. It could also be the difference between a laptop and desktop Mac – I am running a Mac Studio desktop Mac.

As a side note: You can adjust volume (no matter how it's connected) in quarter-step increments by holding down Shift+Option while hitting the Volume up & down keys on the keyboard).
 
Have you tried a different format?
I notice that mine is 2 ch 16-bit integer non-selectable, while yours is 2 ch 24 bit integer and you have the option to choose something else.
 
I can’t think of anything else to fix it using macOS options.
You could try the free version of eqMac https://eqmac.app It should provide better volume & balance.
 
If @bogdanw ’s command to set a specific volume percentage works, you an re-assign the volume up/down keys to execute 2 scripts.
There you can manually define the increment (5 in this case, so 20 steps).
Although with the workaround below, you lose the visual overlay.

In automator, create a new service that takes no input. Give it a single action: Run AppleScript Enter the following AppleScript:
AppleScript:
set x to get output volume of (get volume settings)
if x > 5 then
   set volume output volume (x - 5)
else
   set volume output volume 0
end if
Save the service with the name "Volume down", and bind the service to F11.
Create another new service that takes no input. Give it a single action: Run AppleScript Enter the following AppleScript:
AppleScript:
set x to get output volume of (get volume settings)
if x < 95 then
   set volume output volume (x + 5)
else
   set volume output volume 100
end if
Save the service with the name "Volume up" and bind the service to F12.

EDIT:
For the F-keys to actually trigger something different than Apples default function, one has to:
- press fn at the same time, or
- globally activate Use F1, F2, etc. keys as standard function keys in System Preferences > Keyboard
(Ventura: Use F1, F2, etc. keys as standard function keys in System Settings > Keyboard > Keyboard Shortcuts > Function Keys)
 

Attachments

  • 0_Quick.Action.png
    0_Quick.Action.png
    218.2 KB · Views: 72
  • 1_Script.png
    1_Script.png
    424.9 KB · Views: 72
  • 2_Key.png
    2_Key.png
    276 KB · Views: 68
  • 3_FN.png
    3_FN.png
    158 KB · Views: 75
Last edited:
  • Like
Reactions: bogdanw
@bogdanw @arw

Appreciate your input - unfortunately setting the volume through osascript, doesn't work. The volume changes of course, but it still sticks to one of the steps that are already available to me through the normal higher/lower volume buttons.
 
  • Sad
Reactions: arw
@bogdanw @arw

Appreciate your input - unfortunately setting the volume through osascript, doesn't work. The volume changes of course, but it still sticks to one of the steps that are already available to me through the normal higher/lower volume buttons.
I noticed in your video, the speaker only allows for increments of 6dB. So it seems like a specific issue/limitation of this model and macOS tries its best to map its 16 steps to that.
If you don't need the Mac minis HDMI output, maybe switching to a HDMI connection offers more steps.
BTW, those are some gorgeous speakers!
 
Last edited:
  • Like
Reactions: IngoX and DonJimmy
There are som speaker settings possible through the KEF Connect app. Page 74 in the manual:
14.8.3 Speaker Volume Sensitivity
This setting allows you to configure the number of volume steps for each single press of the physical volume buttons of your device.
There is also a setting to limit the maximum volume. Not shure if these settings apply when connected directly with USB, but you should check them out. Maybee also try a firmware update?
 
  • Like
Reactions: DonJimmy and arw
I noticed in your video, the speaker only allows for +6dB steps. So it seems like a specific issue/limitation of this model and macOS tries its best to map its 16 increments to that.
If you don't need the Mac minis HDMI output, maybe switching to a HDMI connection offers more steps.
BTW, those are some gorgeous speakers!
Had not realized the 6dB steps, thanks for noticing. Maybe that'll help in figuring out what's going on. I need the hdmi unfortunately :/


There are som speaker settings possible through the KEF Connect app. Page 74 in the manual:

There is also a setting to limit the maximum volume. Not shure if these settings apply when connected directly with USB, but you should check them out. Maybee also try a firmware update?
I've already tried out all those settings, they don't change anything unfortunately. The firmware is already up2date as well.
 
My guess: When connected via USB, the speakers act as a DAC (192kHz/24bit).
To maintain a bit-perfect digital signal, a DACs volume normally cannot be controlled from the Mac/PC but only on the DAC itself.
Apparently KEF managed to offer at least those steps of 6dB.
The "proper" way would be to control the volume on the speakers.
If the volume cannot be controlled via ssh or another open protocol, there is still one wild option:
Program and attach an IR-transmitter (Arduino) via USB to the Mac mini and map the volume keys to send the proper IR-signals to the speaker 🙈
Code Format: NEC Factory Code: 0x01 Volume Up: 0x60 Volume Down: 0xA0
Or you could contact their support...
 
I had this same stepped volume frustration. Was just living with it for a while and using a combination of my computers' volume control and the KEF remote for fine tune adjustments but found what I think is a better solution. I now have a USB>optical converter between my computers and speakers which allows both my Mac and Windows computers to control the volume with every increment (my multiple computers go through a KVM first but that doesn't apply unless you're using multiple computers for the same peripherals). I'm 95% sure this still uses the KEF's internal DAC but not sure how to absolutely confirm that. The speakers now stay at 100% of their volume in the KEF app and I can fully control the volume from the computer, confirmed in the Mac midi app and Windows equivalent. This is the one I purchased. The documentation isn't the best and I had to install some (included) drivers for my Windows machine but all works great now. I know this thread is a bit old but I hope people see this and it helps!
 
As an Amazon Associate, MacRumors earns a commission from qualifying purchases made through links in this post.
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.