最近想说把客厅那台 HTPC 改灌 Fedora 可以比较方便,
所以昨天就进行重灌,而因为客厅电视 HDMI 有点问题,
他已经无法正常提供 EDID 给 GPU,故必须要强制指定,
过去用 Arch 时在 kernel 参数加入指定的 EDID 档案,
可成功输出 FHD60fps 画面与声音,不过只剩下左声道,
就是两个喇叭同时只会输出左声道的声音,至今还无解,
结果换到 Fedora 后一切都失效了,指定完剩 800x600,
除非改内建 edid/1920x1080.bin 才能输出 FHD 60fps,
但无论怎么调整都无法从 HDMI 输出音效,只剩下画面,
请问 Fedora 是否改了什么让原本可行的方案无效化呢?
以下补充我之前的方法与步骤:
1. 从另一台电脑或另外接萤幕取得 EDID。
$sudo find /sys/devices/pci*/*/*/*/*/*HDMI* -name "*edid*"
2. 复制 EDID 到 /usr/lib/firmware/edid
(edid 需要自己创建)
3. grub 中增加参数
GRUB_CMDLINE_LINUX_DEFAULT="drm.edid_firmware=edid/你的 EDID"
4. $sudo grub-mkconfig -o /boot/grub/grub.cfg
5. 重开机
以上经过今天重灌成 Arch 后实验过完全正常,
Fedora 到底变了什么魔法让一切都完全无效?
没声音不先怀疑一下其他东西吗?alsa/pulseaudio/pw
arch 上的方法试过了,还用 mpv 指定输出装置,也一样在 Arch 用我自己复制的 EDID 至少还有 1080P + 左声道,Fedora 套用我的 EDID 直接分辨率变 640X480至于两个发行版套用内建 1080p 的 EDID 皆没声音
Fedora 35 的话会是跟 WirePlumber 有关吗?
我是直接主板光纤输出给amp,交给amp处理比较简单。当年做HTPC安装Linux笔记完,真心觉得麻烦。
要不是电视没回传 EDID,要不然当初完全不用搞这些有的没的
把 arch 的 kernel 搬去 fedora 用
对一下各自的 kernel 打包时的编译参数差在哪以及哪些可能是 Fedora 默认不会装的驱动src.fedoraproject.org和archlinux/svntogit-packages各自都可以找
用 pipewire 一样 ok 呀,只是是用 plasma-pa 和 pipewire-pulse