I would like to check whether one of my sound cards supports hardware volume control, and whether MacOSX has detected it. Under linux I would use:
cat /proc/asound/Audio/usbmixer
And I would get a response like:
USB Mixer: usb_id=0x262a10e1, ctrlif=1, ctlerr=0
Card: HiFimeDIY Audio SA9023 USB Audio at usb-musb-hdrc.1.auto-1, full speed
Unit: 9
Control: name="PCM Playback Volume", index=0
Info: id=9, control=2, cmask=0x3, channels=2, type="S16"
Volume: min=-14080, max=0, dBmin=-5500, dBmax=0
Unit: 9
Control: name="PCM Playback Switch", index=0
Info: id=9, control=1, cmask=0x0, channels=1, type="INV_BOOLEAN"
Volume: min=0, max=1, dBmin=0, dBmax=0
That shows I do have a hardware playback volume. Is there an equivalent command in OS X? I tried using system_profiler
command, but it returns more than 50,000 lines of response with tens of entries related to my sound card, and I don't exactly know what keyword I have to look for.
Best Answer
The
system_profiler
data type corresponding to audio device information isSPAudioDataType
, so you can run:But this won't yield much information about hardware volume control capability of your sound card.
A better way of checking for more specific hardware information is to use
ioreg
command. In order to check whether your sound card supports hardware volume control run the following and then check whether your sound card appears in the results:My Cambridge Audio USB DAC that doesn't have support hardware volume control does not appear on this list, while my other DACs and sound cards do appear on it.
If you are using an external USB device, you can also run the following to make sure your device is recognized as an audio device:
If your device supports hardware volume control, you will see one or more
IOAudioLevelControl
entries under your audio device's entry.But apart from all the command line mumbo jumbo you can as well check the OSX's volume control when using your sound card to see if it is disabled!