如何从命令行更改默认音频设备?

Ubuntu的桌面gui非常适合更改音频设置(系统 – >首选项 – >声音),如默认输入/输出设备和设置音量。

但是,我希望能够从命令行执行这些操作。 gui在幕后使用什么工具?

您可以使用pacmdpactl命令通过命令行彻底控制PulseAudio。 有关选项,请参阅手册页或PulseAudio的wiki:

pacmd list-sinks (或pactl list short sinks ),用于可能的接收器的名称或索引号

pacmd set-default-sink "SINKNAME"设置默认输出接收器

pacmd set-default-source "SOURCENAME"设置默认输入

pacmd set-sink-volume index volume

用于音量控制的pacmd set-source-volume index volume (0 =静音,65536 = 100%)

还有很多CLI选项。


注意:通过命令行界面更改输出接收器只有在禁用流目标设备读取时才会生效。 这可以通过编辑/etc/pulse/default.pa的对应行来完成:

 load-module module-stream-restore restore_device=false 

有关如何执行此操作的更详细的教程,以及有关如何在播放期间更改接收器的说明, 请参阅此答案 。

是的终端中有类型alsamixer

替代文字

按 ,

F1 – 帮助

F2 – 系统信息

F6 – 选择声卡

Esc – 退出菜单

 pavucontrol 

不是实际的Ubuntu音量控制,但更好! 它允许您控制默认设备,甚至每个应用程序/流的设备。

您必须让应用程序实际上正在录制/播放才能显示在“播放”或“录制”标签中,但是一旦您选择该应用的设备,它似乎永远会记住它。

另外,(在旁注中),对于旧(非脉冲)应用,在padsp之后运行它们,例如:

 padsp some_old_app 

pavucontrol