因为播放av1视频闪退 查询日志通过AI分析 缺少了 VA-API 驱动挂载和环境变量,这正是导致 AV1 硬解崩溃的原因 修改 docker-compose

services:
kodi:
image: wjz304/kodi:latest
container_name: kodi
restart: unless-stopped
# privileged: true # 启用特权模式(可选,注意安全风险)
# tty: true # 分配伪终端
# stdin_open: true # 允许交互式终端
environment:
- TZ=Asia/Shanghai
- LANG=zh_CN.UTF-8
# ========== 新增 VA-API 相关环境变量 ==========
- LIBVA_DRIVER_NAME=iHD # 强制使用 Intel 完整功能驱动
- LIBVA_DRIVERS_PATH=/usr/lib/x86_64-linux-gnu/dri
- XDG_RUNTIME_DIR=/tmp/runtime-root # 解决运行时目录警告
# ========== 以下为可选软件渲染(如不需要硬解可取消注释) ==========
# - LIBGL_ALWAYS_SOFTWARE=1
# - MESA_LOADER_DRIVER_OVERRIDE=swrast
devices:
- /dev/dri:/dev/dri # 显卡直通(必须)
- /dev/snd:/dev/snd # 声卡直通
- /dev/input:/dev/input # 输入设备直通(键盘、鼠标、遥控器等)
volumes:
- /run/udev:/run/udev:ro # 使容器能读取设备信息
- /var/apps/fn-kodi/shares/kodi/config:/root/.kodi # Kodi 配置文件
# ========== 新增:挂载宿主机 VA-API 驱动库(关键!) ==========
- /usr/lib/x86_64-linux-gnu/dri:/usr/lib/x86_64-linux-gnu/dri:ro
- /usr/lib/x86_64-linux-gnu/va:/usr/lib/x86_64-linux-gnu/va:ro
# 以下为可选音频支持(如需要 PulseAudio 可取消注释)
# - /run/user/1000/pulse/native:/run/user/1000/pulse/native
# - /run/user/1000/pipewire-0:/run/user/1000/pipewire-0
cap_add:
- SYS_ADMIN # 允许使用 ioctl 等操作 DRM 设备
- SYS_RAWIO # 允许直接访问硬件设备
# ========== 新增:添加 video 和 render 组权限 ==========
group_add:
- "44" # video 组
- "107" # render 组(常见于 Ubuntu 22.04+,若系统不同请用 `getent group render` 确认 GID)
network_mode: ${wizard_airplay_support:-bridge} # 使用宿主网络模式
ports:
- 8080:8080 # Web 远程控制端口
- 9090:9090 # JSON-RPC 远程控制端口
- 9777:9777/udp # Zeroconf/avahi 服务发现端口
shm_size: "1gb"