我将pulseaudio配置存储在 中/etc/pulse/default.pa
,但我想在外部创建新的配置,如中所述default.pa 手册页。我已经在 中创建了我的配置~/.pulse/default.pa
。据我从手册页了解,这应该在版本之前使用/etc/pulse
,但重新启动pulseaudio后,它仍然使用旧的配置。
我用下面的命令来启动pulseaudio:
pulseaudio --system --disallow-exit --disallow-module-loading
为什么不使用新配置?如何更改默认配置?
答案1
尝试通过环境变量设置配置,如下所述man pulseaudio
:
PULSE_CLIENTCONFIG=/home/username/.pulse/default.pa pulseaudio --system --disallow-exit --disallow-module-loading
答案2
如果您使用 systemd 将pulseaudio 作为系统范围的服务运行,并且您尝试重新映射接收器并将其设置为默认接收器,则该服务将忽略/etc/pulse/default.pa
.
例如
load-module module-remap-sink sink_name=mono master=alsa_output.usb-YOUR_DEVICE-00.analog-stereo channels=2 channel_map=mono,mono sink_properties="device.description='Mono'"
set-default-sink mono
您可以通过直接在 中设置默认设备来解决此问题/etc/pulse/system.pa
。
您可以通过运行以下命令并阅读底部的警告消息来检查是否正在运行系统范围的服务。
systemctl status pulseaudio
● pulseaudio.service - PulseAudio Daemon
Loaded: loaded (/etc/systemd/system/pulseaudio.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2022-10-04 14:42:02 BST; 16min ago
Main PID: 354 (pulseaudio)
Tasks: 5 (limit: 2059)
CPU: 25.745s
CGroup: /system.slice/pulseaudio.service
└─354 /usr/bin/pulseaudio --system --realtime --disallow-exit --no-cpu-limit
Oct 04 14:42:02 picroft pulseaudio[354]: N: [pulseaudio] main.c: Running in system mode, forcibly disabling SHM mode.
Oct 04 14:42:02 picroft pulseaudio[354]: N: [pulseaudio] main.c: Running in system mode, forcibly disabling exit idle time.
Oct 04 14:42:02 picroft pulseaudio[354]: W: [pulseaudio] main.c: OK, so you are running PA in system mode. Please make sure that you actually do want to do that.