更新音频调试日志和修复脚本,添加 HDMI 监控工具
This commit is contained in:
@@ -3,15 +3,10 @@
|
||||
--
|
||||
-- 若仅启用 use-ucm 而不固定 profile,栈常会默认选 stereo-fallback,界面只剩模拟/耳机,HDMI 消失。
|
||||
--
|
||||
-- 重要(policy-device-profile.lua / findBestProfile):若下面 KAISA_WP_DEVICE_PROFILE 设为 "HiFi",
|
||||
-- 但 PipeWire 的 EnumProfile 里还没有名为 HiFi 的条目(pactl「配置文件」仅有 off / pro-audio),
|
||||
-- WirePlumber 无法匹配 device.profile,最终会把活动配置留在 off,且 pactl set-card-profile HiFi
|
||||
-- 报「无此实体」。此时请保持 "pro-audio" 先恢复输出;待 install-kaisa-ucm-overlay + 重启后 pactl 已出现
|
||||
-- HiFi: 时,再把本变量改为 "HiFi" 并重启用户 pipewire 栈。
|
||||
--
|
||||
-- 当前仓库主交付为 UCM/HiFi;当你已验证 `pactl list cards` 的「配置文件」里出现 `HiFi:`,
|
||||
-- 就应默认固定为 "HiFi",避免重启后回退到 stereo-fallback(只剩 3.5mm)。
|
||||
local KAISA_WP_DEVICE_PROFILE = "HiFi" -- 或 "pro-audio"(仅用于临时排障对照)
|
||||
-- 交付策略:必须由 UCM/HiFi 管理音频(Jack-driven ports)。
|
||||
-- 若某台机器在 PipeWire/ACP 枚举阶段暂未暴露 HiFi profile(pactl「配置文件」里看不到 HiFi:),
|
||||
-- 这是安装/时序/内核问题,应修复根因,而不是回退到 pro-audio。
|
||||
local KAISA_WP_DEVICE_PROFILE = "HiFi"
|
||||
|
||||
table.insert(alsa_monitor.rules, {
|
||||
matches = {
|
||||
@@ -20,10 +15,39 @@ table.insert(alsa_monitor.rules, {
|
||||
},
|
||||
},
|
||||
apply_properties = {
|
||||
["api.alsa.use-acp"] = true,
|
||||
-- 交付策略:仅使用 UCM/HiFi,避免 ACP 注入 pro-audio 等通用 profile。
|
||||
-- 这会让系统枚举中不再出现 pro-audio(仅保留 UCM 定义的 HiFi / off 等)。
|
||||
["api.alsa.use-acp"] = false,
|
||||
["api.alsa.use-ucm"] = true,
|
||||
["api.acp.auto-profile"] = false,
|
||||
["api.acp.auto-port"] = true,
|
||||
-- ACP disabled; keep these unset to avoid confusing policy.
|
||||
["device.profile"] = KAISA_WP_DEVICE_PROFILE,
|
||||
},
|
||||
})
|
||||
|
||||
-- Default route among HDMI: WirePlumber policy-node picks highest priority.session.
|
||||
-- Stock UCM tends to give pcm=2 (HDMI1) the highest value, which matches observed
|
||||
-- defaults and a flaky pcm2 path (SOF ipc -5 / set_hw_params). Prefer pcm 3/4.
|
||||
table.insert(alsa_monitor.rules, {
|
||||
matches = {
|
||||
{ { "node.name", "matches", "alsa_output.*HiFi__hw_sofrt5682_4__sink*" } },
|
||||
},
|
||||
apply_properties = {
|
||||
["priority.session"] = 900,
|
||||
},
|
||||
})
|
||||
table.insert(alsa_monitor.rules, {
|
||||
matches = {
|
||||
{ { "node.name", "matches", "alsa_output.*HiFi__hw_sofrt5682_3__sink*" } },
|
||||
},
|
||||
apply_properties = {
|
||||
["priority.session"] = 850,
|
||||
},
|
||||
})
|
||||
table.insert(alsa_monitor.rules, {
|
||||
matches = {
|
||||
{ { "node.name", "matches", "alsa_output.*HiFi__hw_sofrt5682_2__sink*" } },
|
||||
},
|
||||
apply_properties = {
|
||||
["priority.session"] = 700,
|
||||
},
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user