获取有关当前使用的设备的独立音频信息

获取有关当前使用的设备的独立音频信息

我需要一种可靠的方法来从正在使用的设备获取音频信息并检查它是否静音。它必须是播放音频的设备。

可靠的方式是指独立于音频驱动程序的方式。我已经使用 amixer 尝试了不同的操作,但我总是必须更改命令才能使其在多个设备上工作。

这是一个输出主设备是否静音的on示例:off

awk -F"[][]" '/dB/ { print $6 }' <(amixer sget Master)

问题是这可以在我的笔记本电脑上运行,但不能在我的主 PC 上运行,在主 PC 上我使用带有 USB 耳机的pulseaudio,在那里我必须使用稍微修改过的代码:

awk -F"[][]" '/dB/ { print $6 }' <(amixer sget -c 1 PCM)

我不仅需要指定我正在使用的声卡,还需要指定设备名称(?)(称为 PCM 而不是 Master),但我现在必须使用完全不同的格式选项,因为输出并不完全不同。

现在,是否有更好、更可靠的方法来获取有关正在使用的音频设备的信息?

相关内容