使用命令行设置麦克风输入音量?

Ric*_*ick 10 command-line pulseaudio

我有一个 USB 麦克风,一直插入我的笔记本电脑底座。当我进入扩展坞时,我希望麦克风设置自动作为我当前的音频输入。我确实有一个我运行的“我已停靠”脚本来设置 xrandr/etc 项目,我只需要一些方法来执行以下操作:

gnome-volume-control,输入选项卡,选择麦克风

但是来自 cmd 行/脚本。

关于如何自动化/编写脚本的任何提示?

Gep*_*nzo 13

如果您使用 ALSA,amixer 可以帮助您进行脚本编程。

amixer --help在终端中删除命令时,您将看到如下内容:

在此处输入图片说明

根据您的声卡,级别可能与我的不同,但您可以alsamixer在终端中使用以检查声卡中的级别和功能,您可以调用命令来根据需要设置音量。

在此处输入图片说明

在我的示例中,使用我的主要声卡(我有 2 个:嵌入式声卡和一个 PCI 声卡),级别从 0 到 100,这样我就可以通过放入声卡来更改所需输入/输出的音量终端下一个命令:

amixer -c 0 set Front 50DB 
amixer -c 0 set Front 64DB 
Run Code Online (Sandbox Code Playgroud)

在第一个命令中,结果会将前面板输出设置为 78% 级别,第二个命令会将前面板输出设置为 100% 级别。

为了收集与您的混音器控件相关的信息,请删除amixer不带参数的命令,您将获得一个列表。或者指明您希望查看哪个音频设备的控件列表amixer -c X(其中“X”是您的音频设备的编号)。

顺便说一句:请记住,DB 值是按对数而非线性计算的。


小智 7

pacmd set-default-source如果您使用的是pulseaudio,则可能有效,例如:

pacmd set-default-source alsa_input.usb-046d_0819_9F13DC90-02-U0x46d0x819.analog-mono
Run Code Online (Sandbox Code Playgroud)

使用以下命令查找源名称:pacmd list-sources


txo*_*mon 6

我通过查看文档找到了更好的答案(可能是最近添加到 pacmd 的......)

使用pacmd list-sources以查看不同的输入设备,该一个与所述* index: ...是一种活性。

然后您可以使用pacmd set-source-volume <index> <volume>来设置音量,在我的情况下,50%作为参数使用失败,所以我只是尝试了不同的数字,直到它在 UI 中显示为 50%。

对我来说pacmd set-source-volume 1 30000是行得通的

干杯!