在 Linux 麦克风静音时如何收听?

How to listen when the microphone is muted on Linux?

我正在 Python 中开发一个 Ubuntu AppIndicator,它显示麦克风当前状态(静音/打开)。

我可以 mute/unmute 我的 Python 脚本中的麦克风,但我还需要收听 Linux 事件以便在麦克风打开时更新指示器图标在我的应用程序外静音(例如,在 Ubuntu 声音设置中)。

我知道我可以轮询麦克风状态,但我想以被动/被动方式实现它。

有没有办法在 Linux 上收听 "microphone muted" 事件?

一种方法是使用 pacmd 轮询状态:

pacmd list-sinks | grep muted

如果您使用的是 pulseaudio,它包含在一个名为 pulsectl 的库中。