之前群晖不支持HDMI视频输出,无法像HTPC那样直接播放,这让许多想“一机多用”的用户感到遗憾。但别担心,办法总比困难多!本文就来教你如何突破限制,在群晖上成功运行Kodi并实现HDMI输出,让你的NAS变身真正的家庭影院中心。
本文是wjz304手把手教的,仅作为群晖开启HDMI输出的示例,并不讨论Kodi功能使用。
前提准备
在开始部署前,请确保满足以下条件:
1、最新的RR引导
2、核显或者独显已正常驱动
3、USB DAC声卡(暂时不支持HDMI音频)
4、开机前已插入HDMI输出(不支持启动后开启)
5、矿神SPK源提前安装 alsa-utils 套件(用于音频)
Docker部署Kodi
RR引导开发者 wjz304 制作的 syno-kodi 镜像,该镜像已针对群晖的 HDMI 输出做出优化。
在 Docker 中使用以下 docker-compose.yml 配置:
version: '3.8'
services:
syno-kodi:
image: wjz304/syno-kodi:latest
privileged: true
stdin_open: true
tty: true
restart: "no"
volumes:
- /dev/dri:/dev/dri
- /dev/snd:/dev/snd
- /dev/input:/dev/input
- /run/udev:/run/udev:ro
- /volume1/docker/syno-kodi/root:/root
# network_mode: "host"
ports:
- "8080:8080"
- "9090:9090"
- "9777:9777/udp"
该配置已完成显卡、声卡和输入设备(如 USB 键盘、鼠标、遥控器)的映射,网络可使用 host 或 bridge 模式。
默认是特权模式,- /dev/dri:/dev/dri 和- /dev/snd:/dev/snd 这两项可以不写,stdin_open: true 和 tty: true也是非必要项。
端口号 | 协议 | 主要用途 | 典型应用场景 |
---|---|---|---|
8080 | HTTP | 网页远程控制界面 | 浏览器遥控、媒体库管理、远程投送 |
9090 | TCP/JSON | 程序自动化接口 (JSON-RPC) | 智能家居集成、脚本控制、第三方App |
9777 | UDP/Events | 接收输入设备事件 | 红外遥控器信号转发 (LIRC) |
还有个8200 应该是DLAN投屏的
Kodi界面
默认是英文可以自己去设置里面修改,集成了插件商店
视频播放展示。。。教你如何挑选南瓜
一些说明
1、Web界面
访问NAS:8080端口可以打开web管理界面,默认用户名密码:kodi
页面基本是白屏,建议 设置--服务--控制 里面安装Web界面主题 比如AWXi
2、Web遥控浏览器插件
Cast Kodi:https://github.com/regseb/castkodi,Chrome插件商店安装,Edge插件商店安装
3、HDMI诱骗器,应该可以解决启动后无法开启HDMI输出的问题。平时一直插着,需要连接真实显示器时再换上即可。
HDMI输出开发
当前群晖专用 Kodi 镜像由社区开发者 wjz304 维护,基于 RR 引导深度定制,实现了对 /dev/dri 和 /dev/snd 的设备直通。
syno-kodi只是个功能示例,对群晖HDMI输出感兴趣的开发者可以再研究研究。
另有支持HDMI输出的纯净终端容器 wjz304/syno-kmscon
version: '3.8'
services:
syno-kmscon:
image: wjz304/syno-kmscon:latest
privileged: true
stdin_open: true
tty: true
restart: "no"
volumes:
- /dev/input:/dev/input
- /run/udev:/run/udev:ro
- /volume1/docker/syno-kmscon/tmp:/tmp
network_mode: "host"
总结
虽然群晖 NAS 原生不支持 HDMI 输出,但借助 Docker + RR引导 + 社区镜像 的组合,我们完全可以突破限制,将 NAS 变身为一台真正的 家庭影音中枢。