飞牛OS硬件转码兼容性问题反馈 - 铭凡N5 Pro(Radeon 890M)
提交日期: 2026年6月20日
问题概述:
在铭凡N5 Pro主机(搭载AMD Ryzen AI 9 HX 370处理器,集成Radeon 890M显卡)上,飞牛OS的硬件转码功能无法正常工作。尽管底层驱动和系统库已更新至最新,但 mediasrv服务在转码时因VPE模块初始化失败,导致硬解无法启用,系统回退到软件解码。
环境信息:
| 项目 |
详情 |
| 硬件 |
铭凡 N5 Pro (AMD Ryzen AI 9 HX PRO 370 + Radeon 890M) |
| 系统 |
飞牛OS (fnOS) 1.2.0010 |
| 内核 |
6.18.18.c788-trim |
| GPU驱动 |
Mesa 25.0.7-2~bpo12+1 (从Debian Backports安装) |
| VA-API |
已正确识别并加载 radeonsi 驱动 (vainfo 输出正常) |
| Vulkan |
已替换为系统驱动 (原 mediasrv自带驱动不识别890M) |
| 问题组件 |
mediasrv (版本0.8.35) |
详细问题描述:
- 故障现象:
-
在飞牛影视中播放视频并强制转码时,硬件加速失效。
-
系统日志 (journalctl -u mediasrv -f) 中反复出现以下错误:
text
SIVPE ERROR ../src/gallium/drivers/radeonsi/si_vpe.c:947 si_vpe_construct_blt Failed in checking process operation and build settings(9)
-
在飞牛OS的资源监控中,GPU利用率显示异常(0%或100%跳动),且 Encoder (编码器) 利用率始终为0,而 Compute 利用率高,表明系统在执行软件解码,但数据仍在通过GPU搬运。
-
后续 libplacebo 渲染器报告验证失败,进一步确认了渲染管线错误。
- 已尝试的修复步骤(均未生效):
- 从Debian Backports升级了完整的Mesa驱动栈 (25.0.7)。
- 将
mediasrv使用的 libva, libdrm, libvulkan_radeon等库替换为系统级新版库,并验证 vainfo和系统Vulkan可正常识别890M。
- 为
mediasrv服务配置了正确的环境变量 (LIBVA_DRIVER_NAME=radeonsi等)。
- 尝试通过环境变量
AMD_VPE_DISABLE=1 禁用VPE,但未生效。
- 问题根因分析:
- 根本原因:飞牛
mediasrv程序的转码模块在处理Radeon 890M (gfx1150, RDNA 3.5架构) 时,会强制初始化VPE(Video Processing Engine)。由于该模块与新版Mesa驱动的VPE实现存在兼容性问题,初始化失败。
- 关键点:
mediasrv将VPE初始化失败视为致命错误,直接放弃了整个GPU加速流程,即使VA-API驱动本身是正常的。这导致了硬解无法启用,系统被迫回退到软件解码。
建议的修复方向(向官方提议):
- 更新
mediasrv的GPU检测与初始化逻辑:增加对Radeon 890M (gfx1150) 以及未来AMD新款GPU的兼容性支持。
- 优化VPE模块的错误处理:当VPE初始化失败时,不应直接放弃整个GPU加速,而应具备容错能力,优雅地降级并继续使用基本的VA-API解码/编码功能。
- 提供禁用VPE的配置选项:在飞牛影视的设置或
mediasrv的配置文件中,提供一个可以手动禁用VPE模块的开关,方便用户或开发者进行调试和临时规避。