14.04 版搭载 Skylake (Z170) 主板的新电脑未检测到音频输出设备

14.04 版搭载 Skylake (Z170) 主板的新电脑未检测到音频输出设备

没有输出设备

我猜问题在于我的主板太新了;它是技嘉GA-Z170X-Gaming 7使用新的 Z170 (Skylake) 芯片组。

输出lspci -v显示两个“音频设备”块,但我认为其中一个可能是用于我的集成显卡 HDMI,另一个用于我的显卡(Nvidia GTX 980 Ti)HDMI:

00:1f.3 Audio device: Intel Corporation Device a170 (rev 31)
    Subsystem: Gigabyte Technology Co., Ltd Device a036
    Flags: bus master, fast devsel, latency 32, IRQ 16
    Memory at da140000 (64-bit, non-prefetchable) [size=16K]
    Memory at da120000 (64-bit, non-prefetchable) [size=64K]
    Capabilities: <access denied>
    Kernel driver in use: snd_hda_intel

01:00.1 Audio device: NVIDIA Corporation Device 0fb0 (rev a1)
    Subsystem: Gigabyte Technology Co., Ltd Device 36b7
    Flags: bus master, fast devsel, latency 0, IRQ 17
    Memory at dc080000 (32-bit, non-prefetchable) [size=16K]
    Capabilities: <access denied>
    Kernel driver in use: snd_hda_intel

15.04 上的类似提问者通过安装 ALSA 每日构建解决了他们的问题。我试过了,但什么都没变。不知道是不是因为我使用的是 14.04,它可能有一个较旧的内核。我的下一步应该是更新内核吗?

答案1

显然,这是一个内核错误,由 Intel Skylake 架构、3.19 Linux 内核(ubuntu 14.04)和(可能是)Realtek ALC887 音频芯片组(snd-hda-intel Linux 驱动程序)组合而成,以某种方式搞砸了 alsa 驱动程序。

下列程序列于https://wiki.ubuntu.com/Audio/UpgradingAlsa/DKMS但它与 ubuntu 14.04 不是最新的(尽管它完全等效):

确保 dkms 包已安装:

sudo apt-get install dkms

然后从最新的 Vidual Alsa 版本下载并安装(例如使用 Ubuntu 软件中心).deb 文件 https://code.launchpad.net/~ubuntu-audio-dev/+archive/ubuntu/alsa-daily/+packages

当我这样做时,它是以下构建:

oem-audio-hda-daily-lts-vivid-dkms - 0.201509251531~ubuntu14.04.1

其中 2 个关键字是“lts-vivid”和“ubuntu14.04”。这就是您要查找的内容。

我的系统如下:配备 b150 芯片组(ALC887 声卡)的 Asrock MB 和配备 8GB RAM 和 NVidia GTX960 的 Intel i5-6500K(Skylake)。我也没有看到任何音频设备,除了视频卡 hdmi 输出。非常讨厌的错误,因为 ubuntu 中的声音系统(alsa 和 pulseaudio)显然非常混乱,因此很难找到相同的错误报告。

我知道这正是 Abe 最后评论的,但我希望将其视为答案,无需浏览评论就能立即更清楚地看到。

答案2

我找到了问题所在。只需像这样安装这个新驱动程序:

sudo apt-add-repository ppa:ubuntu-audio-dev/alsa-daily
sudo apt-get update
sudo apt-get install oem-audio-hda-daily-lts-vivid-dkms

它适用于 Ubuntu 14.04 和 Asus Z170-p(Realtek ALC887)

答案3

也适用于我的技嘉 z170x gaming g1 主板。我使用 ubuntu xenial 16.04,但它几乎是相同的命令。对于任何特定问题,我还需要添加这个:

首先,创建 /etc/modprobe.d/hda-jack-retask.conf,其中包含:

# This file was added by the program 'hda-jack-retask'.
# If you want to revert the changes made by this program, you can simply erase this file and reboot your computer.
options snd-hda-intel patch=hda-jack-retask.fw,hda-jack-retask.fw,hda-jack-retask.fw,hda-jack-retask.fw model=generic

(对于已经尝试使用 hdajackretask 的人来说,最后的 model=generic 是声音发挥作用的必要条件)

其次创建 /lib/firmware/hda-jack-retask.fw 包含:

[codec]
0x11020011 0x1458a046 0

[pincfg]
0x0b 0x41014111
0x0c 0x414520f0
0x0d 0x01014010
0x0e 0x41c501f0
0x0f 0x42214010
0x10 0x41214010
0x11 0x41012014
0x12 0x37a790f0
0x13 0x77a701f0
0x18 0x500000f0

这将禁用大多数端口,但光纤端口右侧的端口将正常工作。我也禁用了光纤端口,但如果您需要,您可以尝试使用 hdajackretask 激活它。

根据我的经验,每次你弄乱端口时,你都需要重新启动 Windows 一次,以按照你想要的方式设置卡,然后才能让声音在 Linux 上再次工作。如果你尝试让耳机端口工作,另一个将停止工作,你需要再次重新启动 Windows。相信我,只需购买 3.5 毫米 Y 型分线器就容易得多。无论如何,这块板上的增益已经足够了。

您还需要编辑 /etc/pulse/daemon.conf 并添加以下内容:

default-sample-format = s24le
default-sample-rate = 192000

既然我们正在讨论如何修复 Z170X-Gaming G1 的问题,我也应该指出如何修复 WiFi:

从 bug 复制 board-2.bin 文件 https://bugzilla.kernel.org/show_bug.cgi?id=111111 直接链接:https://bugzilla.kernel.org/attachment.cgi?id=224831 进入 /lib/firmware/ath10k/QCA6174/hw3.0/

然后建立链接或将 /lib/firmware/ath10k/QCA6174/hw3.0/firmware-4.bin 复制到 /lib/firmware/ath10k/QCA6174/hw3.0/firmware-5.bin。

就是这样,现在声音和 WiFi 可以正常工作了,我用 17.04 测试了这一点,没有问题,我不需要更新 alsa。请记住,从 Linux 到 Linux 的任何重启都会弄乱声音,每次都需要关机。

答案4

我按照 #2 中的 MttG 操作但没有用,它只显示 HDMI 卡,我的系统:core i5 6500 skylake、realtek ALC887 并使用带 HDMI 的 gtx 950 进行监控,因此,经过很长时间我发现:

sudo gedit /etc/asound.conf

这就是如何:

defaults.pcm.card 1
defaults.pcm.device 1

但是我的设备 1 是 HDMI,设备 0 是 REALTEK,我将其编辑为:

defaults.pcm.card 1
defaults.pcm.device 0

并且成功了。因此,只需按照 MttG 的指示编辑 asound.conf,它便可在 Ubuntu 14.04 上运行。感谢 MttG。

我的声音设置配置后显示Realtek

声音设置截图

相关内容