Alsa 驱动器仅用于放大器/衰减器?

Alsa 驱动器仅用于放大器/衰减器?

ALSA有驱动程序的概念吗仅有的对于放大器/衰减器?我想在调节系统音量时控制放大器音量。我可以复制当前的声卡驱动程序并添加代码来处理我的放大器,但我希望避免维护整个驱动程序。

我的硬件设置如下:

Soundcard [analogue]-> Amplifier [analogue]-> Speaker

Alsa 已经可以完美地处理声卡了。我有一些代码能够直接控制放大器的增益;我想使用它而不是声卡驱动程序提供的软件衰减器,理想情况下不必分叉整个声卡驱动程序。

这不是一个高保真应用程序,如果pulseaudio 有正确的概念,我愿意接受其他方式。我已经可以从用户空间完美地完成此操作(我有一些volume(unsigned char val)可以正确设置音量的 fn )。

有没有某种方法可以从概念上将放大器/衰减器内联起来,以便我只需编写控制代码的接口?

答案1

这个概念确实存在。然而,它只能服务于非常有限的硬件设备。

这里是基于 TAS575xM 的音频放大器的代码。

这是基于 SSM4567 的音频放大器的代码和实现细节。

如果您正在寻找一个生态系统来投入时间,那么正如您可以从阅读上述链接中推断出的那样,I2C肯定会成为候选人。


注意:这个列表当然不是详尽的。仅受我自己的知识限制)

顺便说一句,如果您的设备没有 Alsa 驱动程序,pulseaudio 不会自动为您发明/伪造它。

相关内容