所有 ALSA 设备的默认音量

Bas*_*asj 13 configuration alsa audio

我想为所有将永远连接的 ALSA 设备设置一次默认音量

当然,我可以做amixer ...甚至alsamixer修改当前可用声卡的音量。
但我真的很想修改默认音量,即使是将来添加的声卡

我应该在哪个配置文件中设置这个默认音量?

我见过,/var/lib/alsa/asound.state但内容特定于当前连接的声卡。我想要的是一个适用于任何将连接的声卡的解决方案。


上下文:为什么我想要这个?我正在为我的项目SamplerBox提供一个现成的 Debian 映像。用户 #1 可能使用计算机的内置声卡,用户 #2 可能有一个 USB DAC,用户 #3 可能有另一个声卡......
我想提供一个默认的 -3dB 音量,适用于任何 ALSA 声卡人本来可以...


注意:我重新安装了一个全新的系统,似乎默认情况下,所有设备的音量都是 -20dB:

在此处输入图片说明

在此处输入图片说明

小智 18

我只是在这篇文章上徘徊,看到你和我一样正在为这个问题的答案而苦苦挣扎。这就是为我修复它的原因:

进入 alsamixer 并按照您想要的方式设置所有内容,然后退出并键入:

sudo alsactl store
Run Code Online (Sandbox Code Playgroud)

这将存储 alsamixer 的当前配置,它应该保留配置。


n.s*_*.st 4

中有一些通用和特定于驱动程序的配置文件/usr/share/alsa/init/,您可以在其中指定设置,如ENV{ppercent}:="75%"ENV{pvolume}:="-20dB"pvolume= 播放音量,cvolume= 捕获音量等)。/usr/share/alsa/init/default应该已经包含这些设置,因此您可以使用它作为示例。

您可以使用 强制 ALSA 重新初始化所有设备,alsactl init也可以使用alsactl -i /usr/share/alsa/init/foo init.

由于某种原因,ALSA 似乎忽略了我系统上的ppercentpvolume设置,但从您的评论来看,它们似乎对您有用。如果有人能启发我为什么配置可能被忽略,我很乐意修改这个答案。