使用HDMI输出后,内置扬声器没有声音。

我在Ubuntu 14.04上仍然遇到了与Mint 17.3相同的问题: 我的笔记本通过HDMI连接到电视。一切正常。 如果我关闭电脑并拔掉HDMI,某些视频文件将没有声音。有时候YouTube视频也会受到影响。其他声音(系统通知、警报和测试声音)都正常工作。
在声音设置中点击内置扬声器没有帮助。 重新启动也不起作用。
唯一的方法是回到电视,插入HDMI,然后选择内置扬声器输出。然后我可以再次拔掉HDMI。
但是如果我没有HDMI线怎么办?
谢谢你的帮助。 (笔记本是TUXEDO,使用的是Ubuntu 16.04)

我不明白你是如何期望在关机后还能有声音出来... 电脑开着的时候,你是否尝试在设置>音频中选择其他输出设备? - dadexix86
抱歉 - 当然我重新启动了电脑并尝试播放视频。在那次重新启动之后(无论我重新启动了多少次),输出被设置为内置扬声器。每个声音都正确地发送到内置扬声器,但视频的声音却没有。 - johkra
https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1633780 - johkra
5个回答

我用this修好了。
$ rm -rf /tmp/pulse* ~/.pulse* ~/.config/pulse
$ pulseaudio -k
$ pulseaudio --start

1clear_night_sky的解决方案在Mint 19.1上对我无效,但这个有效。 - Pavel Komarov

我有同样的问题,下面是如何在使用HDMI输出后允许内部声音的方法-这对我起作用了。
在您的主目录中的隐藏缓存文件夹中,将有一个名为event-sound-cache.tdb.641c9db826a44f28bb9596d6df3020c2.x86_64-pc-linux-gnu之类的文件。只需找到该文件并删除它。现在,您的内部声音应该可以正常工作。
在终端中,从主目录开始:
cd .cache
ls -a

现在寻找以event-sound-cache.tdb开头的文件。 对我来说,它是 event-sound-cache.tdb.641c9db826a44f28bb9596d6df3020c2.x86_64-pc-linux-gnu 现在,在终端中输入:
rm <file name here>

对我来说,我的输入是这样的:
rm event-sound-cache.tdb.641c9db826a44f28bb9596d6df3020c2.x86_64-pc-linux-gnu

请注意,event-sound-cache.tdb文件将与您的机器ID和操作系统唯一对应。
您的内部声音现在应该可以正常工作。如果声音仍然无法正常工作,请转到声音应用程序,并重新选择“扬声器(内置音频)”作为声音选项。

1很遗憾,对我来说没有起作用。 - vextorspace
1我在Ubuntu 18.04上尝试了这个解决方案,但对我来说没有起作用。 - Raghav Mittal

我在18.04也遇到了同样的问题,这有点烦人,因为当我注意到这个问题时,我当时无法访问HDMI显示器,所以无法进行重新连接的操作。

重启PulseAudio对我有用。

pulseaudio -k 

(停止PulseAudio)
pulseaudio -D 

重新启动PulseAudio作为守护进程,可能不必要,因为PulseAudio会自行重启。

如果这个能帮到你的话...
在断开HDMI线后,我让电脑保持待机状态直到电池耗尽,然后遇到了这个问题。
我尝试了上述方法,但没有起作用。成功的方法是: - 重新连接电视, - 然后再次选择两个输出之间的选项, - 选择内置扬声器, - 选择内置显示器, - 断开HDMI连接。

它又发生了。这次是在我正确关闭电脑之后再拔掉HDMI线之后。现在,在重新连接到电视并选择“内置扬声器”作为声音输出之前,声音将无法通过内置扬声器传出,尽管已经设置为这样。肯定有需要改进的地方。之前的版本没有这个问题。 - user114242

我不得不找到另一个解决方案,因为clear_night_sky的解决方案对我没有起作用。
我去了设置->声音,切换了“输入”和“输出”选项卡,然后声音就恢复了。希望这对其他人也有帮助。