在我的笔记本电脑上,我正在运行通过 HDMI 连接到电视的 kodi。
暂停并恢复后,我的音频不再从电视中发出,而是从笔记本电脑扬声器中发出。我读过多篇关于如何在唤醒后设置默认音频输出的帖子,但似乎不起作用。有人知道如何解决这个问题吗?
答案1
修复 PulseAudio 在挂起状态下从电视切换到笔记本电脑的问题
此“未记录的功能”出现在 Ubuntu 16.04 和新版本的 PulseAudio 8 中。
创建一个新文件/lib/systemd/system-sleep/tv-sound
并复制:
#!/bin/sh
case $1/$2 in
pre/*)
echo "Going to $2..."
# Place your pre suspend commands here, or `exit 0`
# if no pre suspend action required
sleep 1
;;
post/*)
echo "Waking up from $2..."
# Place your post suspend (resume) commands here, or `exit 0`
# if no post suspend action required
sleep 2
export PULSE_RUNTIME_PATH="/run/user/1000/pulse/"
sudo -u rick -E pacmd set-card-profile 0 output:hdmi-stereo
;;
esac
笔记:将用户名rick
(倒数第三行)替换为您的用户名。
然后使用以下命令将其标记为可执行:
sudo chmod +x /lib/systemd/system-sleep/tv-sound
output:hdmi-stereo
如果您的系统上的设备(对于大多数人来说)不同,则可能需要执行额外的步骤。
答案2
我有同样的问题。我尝试了 /lib/systemd/system-sleep 解决方案中的 tv-sound,但对我不起作用。我尝试了用户命令行中的 pacmd set-card-profile 0 output:hdmi-stereo,但对我不起作用。
奇怪的是,打开扬声器控制下的声音设置确实有效。我没有做任何更改,只是打开设置这一操作就让 HDMI 声音恢复了。它不是自动的,但不会强迫我重新启动。
我在打开设置窗口之前和之后进行了 pacmd 转储,输出没有区别。
顺便提一下,/run/user/1000/pulse 中的 1000 是用户 ID,需要与用户名匹配。当我尝试解决方案时,我登录了我妻子的帐户,该帐户的用户 ID 为 1001。