如何让 HDMI 音频在 Intel NUC8i5BEH 上运行

如何让 HDMI 音频在 Intel NUC8i5BEH 上运行

我有一台 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

  1. 打开终端(如果尚未打开)
  2. 编辑 PulseAudio 的default.pa文件:
    sudo vi /etc/pulse/default.pa
    
    笔记:随意使用您选择的文本编辑器。它不需要 vi但您需要编辑该文件 root
  3. 找到以下行:
    load-module module-udev-detect
    
    附加tsched=0到该行,使其看起来像这样:
    load-module module-udev-detect tsched=0
    
  4. 重新启动 PulseAudio:
    systemctl --user restart pulseaudio
    

希望这个解决方案也适用于你

相关内容