![持久虚拟输出](https://linux22.com/image/893140/%E6%8C%81%E4%B9%85%E8%99%9A%E6%8B%9F%E8%BE%93%E5%87%BA.png)
我想要使用的声卡已被检测到并且可以工作(它最近才切换到虚拟输出并且不允许我返回)。
HDMI 不再列在音频和视频 - KDE 控制模块下;音频模块下的所有内容都设置为虚拟输出,并且它现在是列表中唯一的“声卡”。我可以在 alsamixer 中查看我以前的声卡,但从那里更改设置没有任何效果。
我怎样才能让我的真实声卡再次工作?
我已经尝试过以下答案,但没有成功:
编辑:
name@name-desktop:~$ lspci -vvv | grep -A8 Audio
00:01.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Kaveri HDMI/DP Audio Controller
Subsystem: ASRock Incorporation Kaveri HDMI/DP Audio Controller
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin B routed to IRQ 43
Region 0: Memory at ff764000 (64-bit, non-prefetchable) [size=16K]
Capabilities: <access denied>
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
--
00:14.2 Audio device: Advanced Micro Devices, Inc. [AMD] FCH Azalia Controller (rev 01)
Subsystem: ASRock Incorporation FCH Azalia Controller
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=slow >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 32, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 16
Region 0: Memory at ff760000 (64-bit, non-prefetchable) [size=16K]
Capabilities: <access denied>
Kernel driver in use: snd_hda_intel
这张图片可能有帮助吗?:
还有另一张声卡,但我不确定它是做什么用的,因为它从不输出声音,但它确实有很多设置:该声卡被标记为“HD-Audio Generic”。
因此我进入“附加驱动程序”选项卡下的“软件和更新”,然后看到了以下内容:
这是请勿使用所以我改变了它并应用了设置,但不幸的是即使重新启动后声卡也没有恢复。
答案1
我不知道问题是什么或者为什么会发生这种情况,但这对我有用。
pulseaudio --kill
pulseaudio --start
答案2
首先,替换所有以前的配置:
sudo apt update
sudo rm -R /etc/pulse/*
sudo apt-get -o DPkg::Options::="--force-confmiss" --reinstall install pulseaudio
然后运行以下命令:
sudo apt-get install --reinstall linux-image-$(uname -r)
sudo modprobe snd-hda-intel
rm -r ~/.config/pulse*
pulseaudio -k
如果 alsa 出现问题,则运行以下命令可能会解决问题:
sudo apt update
sudo apt -o DPkg::Options::="--force-confmiss" --reinstall install libasound2 libasound2-data libasound2-dev libasound2-plugin-smixer libatopology-dev libatopology2 alsa-utils pulseaudio
rm -r ~/.config/pulse*
pulseaudio -k
答案3
这个问题似乎没有解决办法,所以我只是重新安装了 Kubuntu,声音效果就完美了。
缺点:抹去了其他所有内容(但我的 SSD 上没有太多内容,所以没事)
答案4
对我来说,问题是由一个锁定了声音设备的应用程序引起的。在我的情况下,是mplayer
,但对你来说可能是其他原因。要获取这些应用程序的列表,请运行:
# fuser -v /dev/snd/*
USER PID ACCESS COMMAND
/dev/snd/controlC0: ... 899378 F.... mplayer
/dev/snd/pcmC0D0p: ... 899378 F...m mplayer
/dev/snd/timer: ... 899378 f.... mplayer
停止该应用程序后,我强制重新启动 pulseaudio:
/usr/bin/pulseaudio -k && sleep 1 && /usr/bin/pulseaudio --start
欲了解更多详情,请查看建筑维基,我在这里发现了诀窍:
显示的唯一设备是“虚拟输出”或未检测到新连接的卡
如果唯一的播放设备是虚拟输出,PulseAudio 将无法访问您的声音设备。登录授予权限可能存在问题,有关更多信息,请参阅常规故障排除#会话权限。
应用程序可能还未配置为与 PulseAudio 配合使用。例如,FluidSynth 就存在这种情况。要查看哪个应用程序负责通过 alsa 直接访问声卡,请运行以下命令:
# fuser -v /dev/snd/*
尝试关闭这些应用程序。如果正在运行,pulseaudio 应该再次优先于这些应用程序,并且所有依赖于 pulseaudio 的应用程序都应该像预期的那样再次工作。