ALSA有驱动程序的概念吗仅有的对于放大器/衰减器?我想在调节系统音量时控制放大器音量。我可以复制当前的声卡驱动程序并添加代码来处理我的放大器,但我希望避免维护整个驱动程序。
我的硬件设置如下:
Soundcard [analogue]-> Amplifier [analogue]-> Speaker
Alsa 已经可以完美地处理声卡了。我有一些代码能够直接控制放大器的增益;我想使用它而不是声卡驱动程序提供的软件衰减器,理想情况下不必分叉整个声卡驱动程序。
这不是一个高保真应用程序,如果pulseaudio 有正确的概念,我愿意接受其他方式。我已经可以从用户空间完美地完成此操作(我有一些volume(unsigned char val)
可以正确设置音量的 fn )。
有没有某种方法可以从概念上将放大器/衰减器内联起来,以便我只需编写控制代码的接口?
答案1
这个概念确实存在。然而,它只能服务于非常有限的硬件设备。
如果您正在寻找一个生态系统来投入时间,那么正如您可以从阅读上述链接中推断出的那样,I2C肯定会成为候选人。
注意:这个列表当然不是详尽的。仅受我自己的知识限制)
顺便说一句,如果您的设备没有 Alsa 驱动程序,pulseaudio 不会自动为您发明/伪造它。