Pulseaudio set/check 默认源
Pulseaudio set/check default source
所以问题是,
- 如何设置默认源?
- 如何列出当前的默认来源?
详情
我的 linux 设备上有 4 个声音输入源。这是 pactl list sources
:
的结果
1 alsa_input.pci-0000_00_1b.0.analog-stereo module-alsa-card.c s16le 2ch 44100Hz SUSPENDED
2 alsa_input.usb-Generic_Rmoncam_HD_720P_200901010001-02.analog-stereo module-alsa-card.c s16le 2ch 48000Hz SUSPENDED
3 alsa_input.usb-Generic_Rmoncam_HD_720P_200901010001-02.analog-stereo.2 module-alsa-card.c s16le 2ch 48000Hz SUSPENDED
5 alsa_output.pci-0000_00_1b.0.hdmi-stereo.monitor module-alsa-card.c s16le 2ch 44100Hz SUSPENDED
我尝试通过多种方式将源 1 alsa_input.pci-0000_00_1b.0.analog-stereo 设置为我的默认源:
1.change /etc/pulse/client.conf,添加以下行:
default-sink = alsa_output.pci-0000_00_1b.0.hdmi-stereo
default-source = alsa_input.pci-0000_00_1b.0.analog-stereo
2.change /etc/pulse/default.pa,添加以下行:
### Make some devices default
set-default-source alsa_input.pci-0000_00_1b.0.analog-stereo
配置完成后,我尝试pulseaudio -D
并重启设备,但配置没有生效。我不知道如何列出当前的默认源和接收器,所以我使用以下命令来验证:
$> pactl load-module module-loopback latency_msec=500
$> pactl list sources short | grep RUNNING
3 alsa_input.usb-Generic_Rmoncam_HD_720P_200901010001-02.analog-stereo.2 module-alsa-card.c s16le 2ch 48000Hz RUNNING
pactl
仍然使用我的 USB 摄像头的麦克风作为默认来源。
系统信息
Linux内核:
Linux D2-A109 4.15.0-55-generic #60-Ubuntu SMP Tue Jul 2 18:22:20 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
PulseAudio 版本:
$> pulseaudio --version
11.1
欢迎任何建议!
最后..我发现它只是由麦克风引起的"unplugged"...并且设置默认源的方法是正确的。
找到Q2的答案"How can I list the current default source?":
$> pacmd list-sources | grep -e 'index:' -e device.string -e 'name:' -e 'available'
* index: 1
name: <alsa_input.pci-0000_00_1b.0.analog-stereo>
device.string = "front:0"
analog-input-front-mic: Front Microphone (priority 8500, latency offset 0 usec, available: no)
analog-input-rear-mic: Rear Microphone (priority 8200, latency offset 0 usec, available: yes)
analog-input-linein: Line In (priority 8100, latency offset 0 usec, available: no)
index: 2
name: <alsa_input.usb-Generic_Rmoncam_HD_720P_200901010001-02.analog-stereo>
device.string = "plug:front:1"
analog-input-mic: Microphone (priority 8700, latency offset 0 usec, available: unknown)
index: 3
name: <alsa_input.usb-Generic_Rmoncam_HD_720P_200901010001-02.analog-stereo.2>
device.string = "plug:front:2"
analog-input-mic: Microphone (priority 8700, latency offset 0 usec, available: unknown)
index: 7
name: <alsa_output.pci-0000_00_1b.0.hdmi-stereo.monitor>
device.string = "0"
对应PulseAudio wiki,索引前面的*表示当前默认输入
为了避免有人像我一样傻,我们可以通过检查sources打印结果中的'available'来判断麦克风(source)是否插入。
How can I list the current default source?
使用 pulseaudio 15.0,您现在只需 运行 pactl get-default-source
即可获取设备字符串,而无需在输出上求助于 运行ning sed/awk/grep 等。
所以问题是,
- 如何设置默认源?
- 如何列出当前的默认来源?
详情
我的 linux 设备上有 4 个声音输入源。这是 pactl list sources
:
1 alsa_input.pci-0000_00_1b.0.analog-stereo module-alsa-card.c s16le 2ch 44100Hz SUSPENDED
2 alsa_input.usb-Generic_Rmoncam_HD_720P_200901010001-02.analog-stereo module-alsa-card.c s16le 2ch 48000Hz SUSPENDED
3 alsa_input.usb-Generic_Rmoncam_HD_720P_200901010001-02.analog-stereo.2 module-alsa-card.c s16le 2ch 48000Hz SUSPENDED
5 alsa_output.pci-0000_00_1b.0.hdmi-stereo.monitor module-alsa-card.c s16le 2ch 44100Hz SUSPENDED
我尝试通过多种方式将源 1 alsa_input.pci-0000_00_1b.0.analog-stereo 设置为我的默认源:
1.change /etc/pulse/client.conf,添加以下行:
default-sink = alsa_output.pci-0000_00_1b.0.hdmi-stereo
default-source = alsa_input.pci-0000_00_1b.0.analog-stereo
2.change /etc/pulse/default.pa,添加以下行:
### Make some devices default
set-default-source alsa_input.pci-0000_00_1b.0.analog-stereo
配置完成后,我尝试pulseaudio -D
并重启设备,但配置没有生效。我不知道如何列出当前的默认源和接收器,所以我使用以下命令来验证:
$> pactl load-module module-loopback latency_msec=500
$> pactl list sources short | grep RUNNING
3 alsa_input.usb-Generic_Rmoncam_HD_720P_200901010001-02.analog-stereo.2 module-alsa-card.c s16le 2ch 48000Hz RUNNING
pactl
仍然使用我的 USB 摄像头的麦克风作为默认来源。
系统信息
Linux内核:
Linux D2-A109 4.15.0-55-generic #60-Ubuntu SMP Tue Jul 2 18:22:20 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
PulseAudio 版本:
$> pulseaudio --version
11.1
欢迎任何建议!
最后..我发现它只是由麦克风引起的"unplugged"...并且设置默认源的方法是正确的。
找到Q2的答案"How can I list the current default source?":
$> pacmd list-sources | grep -e 'index:' -e device.string -e 'name:' -e 'available'
* index: 1
name: <alsa_input.pci-0000_00_1b.0.analog-stereo>
device.string = "front:0"
analog-input-front-mic: Front Microphone (priority 8500, latency offset 0 usec, available: no)
analog-input-rear-mic: Rear Microphone (priority 8200, latency offset 0 usec, available: yes)
analog-input-linein: Line In (priority 8100, latency offset 0 usec, available: no)
index: 2
name: <alsa_input.usb-Generic_Rmoncam_HD_720P_200901010001-02.analog-stereo>
device.string = "plug:front:1"
analog-input-mic: Microphone (priority 8700, latency offset 0 usec, available: unknown)
index: 3
name: <alsa_input.usb-Generic_Rmoncam_HD_720P_200901010001-02.analog-stereo.2>
device.string = "plug:front:2"
analog-input-mic: Microphone (priority 8700, latency offset 0 usec, available: unknown)
index: 7
name: <alsa_output.pci-0000_00_1b.0.hdmi-stereo.monitor>
device.string = "0"
对应PulseAudio wiki,索引前面的*表示当前默认输入
为了避免有人像我一样傻,我们可以通过检查sources打印结果中的'available'来判断麦克风(source)是否插入。
How can I list the current default source?
使用 pulseaudio 15.0,您现在只需 运行 pactl get-default-source
即可获取设备字符串,而无需在输出上求助于 运行ning sed/awk/grep 等。