如何从命令行切换 PulseAudio 输入和输出?

如何从命令行切换 PulseAudio 输入和输出?

在工作中,我经常使用 USB 耳机,该耳机被检测为单独的音频输出和输入(用于麦克风)设备。在家里,我使用传统的模拟耳机,将其插入带有耳机/麦克风插孔的笔记本电脑内置音响系统中。

每次我想在 USB 耳机和笔记本电脑内置音响系统之间切换时,我都必须打开 PulseAudio 控制面板并选择设备。

我不能只创建几个命令行快捷方式来进行切换吗?

更新:我刚刚想到了比手动使用基于 CLI 的快捷方式更有趣的想法 - 我认为可以在 USB 耳机连接/拆卸检测上触发它们的启动。

答案1

PulseAudio 有一个命令行界面。您可以在官方维基

您没有提到您使用的女巫发行版,但使用默认的包管理器应该很容易在 PulseAudio CLI 包之后进行搜索。

基本上,您搜索为您完成工作的命令,然后您可以在您的~/.bash_profile~/.bashrc使用以下命令创建别名命令:

# cs like change source
alias cs='<command>'

答案2

要从命令行连接蓝牙设备并将其设置为默认 PulseAudio 输出(“接收器”):

# List paired devices
$ echo "list devices" | bluetoothctl
...
[NEW] Device 01:23:45:67:89:AB MyDevice
...

# Connect
echo "connect 01:23:45:67:89:AB" | bluetoothctl

# List PulseAudio sinks:
$ pactl list sinks | grep 'Name: '
....
Name: bluez_sink.01_23_45_67_89_AB.a2dp_sink

# Set default to Bluetooth device
pactl set-default-sink bluez_sink.01_23_45_67_89_AB.a2dp_sink

请注意,这可能不会切换已运行程序的音频输出。

相关内容