我有一个pulseaudio配置,我使用 module-rtp-send 将音频从我的系统发送到远程系统以进行输出。我不希望默认输出任何本地声卡。我已在 BIOS 中禁用了主板的音频,但 GPU(通过 HDMI/DisplayPort)提供的音频仍然存在。我在 ~/.config/pulse/default.pa 中放置了类似于以下内容的 Pulse 配置:
.include /etc/pulse/default.pa
# Create a null sink
load-module module-null-sink sink_name=DesktopSpeakers
# Give the sink a pretty name
update-sink-proplist DesktopSpeakers device.description="Desktop Speakers"
# Set it as default
set-default-sink DesktopSpeakers
# Create a connection to the network'd system, and send any audio from the null sink there
load-module module-rtp-send destination_ip="192.168.0.20" source=DesktopSpeakers.monitor format="s16be" rate=44100 channels=2
# Disable the AMDGPU's audio
set-card-profile alsa_card.pci-0000_0a_00.1 off
我遇到的问题是,即使在 PA 配置中添加“set-card-profile”后,GPU 的音频仍然启用,如上所示。这导致我第一次登录时(Xorg 上的 Plasma 桌面)我的网络音频接收器被忽略。如果我运行“systemctl --user restartpulseaudio”或运行“pactl set-card-profile alsa_card.pci-0000_0a_00.1 off”,网络音频接收器工作正常。
为什么我的 default.pa 中的 set-card-profile 行没有在启动时禁用 GPU 音频(但似乎仅在图形会话登录时启动脉冲时)?