我有一台 Intel NUC8i5BEH,刚刚安装了全新 Ubuntu Desktop 20.04 LTS。除了使用安全模式图形 (nomodeset) 安装外,我不需要做任何特殊的事情。
一切似乎都运行良好,只是我没有通过 HDMI 获得音频。当我将某些东西插入 3.5 毫米插孔时,设置 > 声音中唯一的输出设备是“耳机 - 内置音频”。这是列出的唯一播放硬件设备。HDMI 音频已在 BIOS 中启用。关于如何使 HDMI 音频正常工作,您有什么想法吗?
$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC233 Analog [ALC233 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
$ hwinfo --short
cpu:
Intel(R) Core(TM) i5-8259U CPU @ 2.30GHz, 3604 MHz
Intel(R) Core(TM) i5-8259U CPU @ 2.30GHz, 3536 MHz
Intel(R) Core(TM) i5-8259U CPU @ 2.30GHz, 3522 MHz
Intel(R) Core(TM) i5-8259U CPU @ 2.30GHz, 3509 MHz
Intel(R) Core(TM) i5-8259U CPU @ 2.30GHz, 3555 MHz
Intel(R) Core(TM) i5-8259U CPU @ 2.30GHz, 3433 MHz
Intel(R) Core(TM) i5-8259U CPU @ 2.30GHz, 3546 MHz
Intel(R) Core(TM) i5-8259U CPU @ 2.30GHz, 3566 MHz
keyboard:
/dev/input/event4 Chicony Electronics KU-0833 Keyboard
mouse:
/dev/input/mice Logitech M90/M100 Optical Mouse
graphics card:
Intel Iris Plus Graphics 655
sound:
Intel Cannon Point-LP High Definition Audio Controller
storage:
Intel Cannon Point-LP SATA Controller [AHCI Mode]
network:
wlp0s20f3 Intel Cannon Point-LP CNVi [Wireless-AC]
eno1 Intel Ethernet Connection (6) I219-V
network interface:
lo Loopback network interface
eno1 Ethernet network interface
wlp0s20f3 Ethernet network interface
disk:
/dev/sda Samsung SSD 860
partition:
/dev/sda1 Partition
/dev/sda2 Partition
usb controller:
Intel Cannon Point-LP USB 3.1 xHCI Controller
bios:
BIOS
bridge:
Intel Cannon Point-LP PCI Express Root Port #1
Intel Cannon Point-LP LPC Controller
Intel Cannon Point-LP PCI Express Root Port #15
Intel 8th Gen Core Processor Host Bridge/DRAM Registers
Intel Cannon Point-LP PCI Express Root Port #9
Intel Cannon Point-LP PCI Express Root Port #5
hub:
Linux Foundation 2.0 root hub
Genesys Logic Hub
ASIX Electronics AX68004
Linux Foundation 3.0 root hub
memory:
Main Memory
bluetooth:
Intel Bluetooth Device
unknown:
FPU
DMA controller
PIC
Keyboard controller
Intel Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th Gen Core Processor Gaussian Mixture Model
Intel Cannon Point-LP MEI Controller #1
Intel Cannon Point-LP SPI Controller
Intel Cannon Point-LP Thermal Controller
Intel Cannon Point-LP Shared SRAM
Realtek RTS522A PCI Express Card Reader
Intel Cannon Point-LP SMBus Controller
/dev/input/event7 Chicony Electronics KU-0833 Keyboard
$ sudo dmesg | grep -i audio
[ 0.272840] ACPI: Added _OSI(Linux-Lenovo-NV-HDMI-Audio)
[ 64.564460] snd_hda_intel 0000:00:1f.3: couldn't bind with audio component
[ 64.587098] snd_hda_codec_realtek hdaudioC0D0: autoconfig for ALC233: line_outs=1 (0x21/0x0/0x0/0x0/0x0) type:hp
[ 64.587100] snd_hda_codec_realtek hdaudioC0D0: speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[ 64.587101] snd_hda_codec_realtek hdaudioC0D0: hp_outs=0 (0x0/0x0/0x0/0x0/0x0)
[ 64.587102] snd_hda_codec_realtek hdaudioC0D0: mono: mono_out=0x0
[ 64.587102] snd_hda_codec_realtek hdaudioC0D0: inputs:
[ 64.587104] snd_hda_codec_realtek hdaudioC0D0: Mic=0x19
[ 64.587106] snd_hda_codec_realtek hdaudioC0D0: Internal Mic=0x12
[ 64.660599] snd_hda_codec_hdmi hdaudioC0D2: No i915 binding for Intel HDMI/DP codec
[ 64.661679] hdaudio hdaudioC0D2: Unable to bind the codec
答案1
日常工作中有一个类似的 NUC(8i7HNK),在 HDMI 上存在音频问题。解决方案是tsched
在 PulseAudio 的default.pa
文件中禁用。来自文档
切德
自 0.9.11 起。使用基于系统计时器的模型(又称无故障模型)。默认为1
(启用)。如果您的硬件没有返回准确的计时信息(例如 Creative 声卡),您可以尝试设置tsched=0
为启用 0.9.10 及之前版本中使用的基于中断(原文如此)的计时。
对于 8i7HNK,尽管没有使用 Creative 声卡,但返回的时间信息也是不正确的。
更新文件的方法如下default.pa
:
- 打开终端(如果尚未打开)
- 编辑 PulseAudio 的
default.pa
文件:
笔记:随意使用您选择的文本编辑器。它不需要sudo vi /etc/pulse/default.pa
vi
,但您需要编辑该文件root
。 - 找到以下行:
附加load-module module-udev-detect
tsched=0
到该行,使其看起来像这样:load-module module-udev-detect tsched=0
- 重新启动 PulseAudio:
systemctl --user restart pulseaudio
希望这个解决方案也适用于你