🎬 nowen-video — 你的私人家庭影音中心 | 专为NAS打造的轻量级媒体服务器
一句话介绍: 一个基于 Go + React 构建的轻量级家庭媒体服务器,类似 Emby / Jellyfin,专为 NAS 部署优化。单二进制 + SQLite,Docker 一键启动,零配置即可使用。
🤔 为什么又造了个轮子?
用过 Emby、Jellyfin、Plex 的牛友们应该都有体会:
- Emby 要付费解锁硬件转码,钱包不太友好
- Jellyfin 功能强大但配置复杂,偶尔还会翻车
- Plex 强制走云端认证,NAS 断网就歇菜
nowen-video 就是为了解决这些痛点而生的 —— 完全免费开源、零配置开箱即用、NAS 低功耗友好。
✨ 核心亮点
🪶 极致轻量,NAS 友好
- 单二进制 + SQLite,没有 Java/Mono/.NET 运行时的沉重负担
- Docker 镜像基于 Alpine 3.19,体积极小
- 内存占用 512M-2G 可控,不会拖垮你的 NAS
- 前端内嵌到后端,单端口 8080 同时服务 API + 页面,不占额外端口
⚡ 智能播放 + 硬件加速转码
- MP4/WebM 直接播放,零延迟秒开
- MKV/AVI 等格式自动 HLS 转码,支持多码率(360p/480p/720p/1080p)自适应
- 自动检测硬件加速:Intel QSV / VAAPI / NVIDIA NVENC 全支持
- 群晖 NAS 的 Celeron/Pentium 核显直接用,转码不吃力
- 转码缓存机制,同一质量只转一次
🎨 六大数据源自动刮削
采用 Provider Chain 多数据源调度链,按优先级自动匹配:
| 数据源 |
说明 |
| TMDb |
主力数据源,电影/剧集元数据 |
| 豆瓣 |
中文补充源,TMDb 失败自动回落 |
| TheTVDB |
剧集增强,电视剧详细信息 |
| Bangumi |
番剧/动画专项,追番党福音 |
| Fanart.tv |
高质量海报、ClearLogo、背景图 |
| AI 兜底 |
所有源都失败时,AI 生成简介和标签 |
刮削全自动,也支持手动搜索匹配、在线编辑元数据、批量操作。
🧠 AI 加持,不只是播放器
集成大语言模型(支持 OpenAI / DeepSeek / 通义千问 / Ollama 本地部署):
- 🔍 AI 智能搜索 — "找一部关于太空的科幻片",自然语言直接搜
- 💡 AI 推荐理由 — 个性化推荐文案
- 📝 AI 文件重命名 — 智能分析乱码文件名,一键规范化
- 🤖 AI 助手 — 对话式管理媒体库,分析错误分类、批量重分类
- 支持 Ollama 本地部署,数据不出 NAS,隐私无忧
👨👩👧👦 全家人一起用
- 家庭成员独立账号,管理员/普通用户角**分
- 每人独立的观看历史、播放进度、收藏夹、播放列表
- 播放进度自动上报(每 15 秒),换设备无缝续播
- 细粒度权限控制:按用户设置可访问的媒体库、内容分级(G/PG/PG-13/R/NC-17)、每日观看时长
- 儿童模式 + 家长控制,给孩子一个安全的观影环境
📺 更多实用功能
- 剧集合集智能识别 — S01E01 / 第01集 / EP01 等命名格式全支持,自动归集
- 字幕全支持 — 外挂字幕(SRT/ASS/VTT)+ 内嵌字幕自动提取
- 投屏 — DLNA/Chromecast 设备发现与控制
- 直播 — IPTV 直播源管理与播放
- 家庭空间 — 家庭成员之间推荐和分享
- 云同步 — 多设备配置和进度同步
- 多语言 — 中文/英文/日文界面
- 定时任务 — 定时扫描/刮削/清理,支持 Cron 表达式
- 数据备份恢复 — JSON/ZIP 导出导入,数据安全有保障
🚀 飞牛NAS 部署指南
Docker Compose 一键部署(推荐)
version: '3.8'
services:
nowen-video:
image: nowen-video:latest
container_name: nowen-video
ports:
- "8080:8080"
volumes:
- ./data:/data # 数据持久化
- ./cache:/cache # 转码缓存
- /vol1/1000/视频:/media:ro # ← 改成你的飞牛媒体目录
devices:
- /dev/dri:/dev/dri # 硬件加速(飞牛NAS Intel核显)
environment:
- NOWEN_APP_PORT=8080
- NOWEN_APP_HW_ACCEL=auto
- NOWEN_SECRETS_JWT_SECRET=改成你自己的密钥
- TZ=Asia/Shanghai
restart: unless-stopped
deploy:
resources:
limits:
memory: 2G
reservations:
memory: 512M
三步搞定
- 创建目录:在飞牛 NAS 上创建一个项目目录,放入上面的
docker-compose.yml
- 修改路径:例如:把
/vol1/1000/视频 改成你实际的媒体文件夹路径
- 启动服务:
docker-compose up -d,然后浏览器访问 http://NAS地址:8080
🔑 默认管理员账号:admin / admin123(请登录后立即修改密码!)
📊 与同类产品对比
| 特性 |
nowen-video |
Emby |
Jellyfin |
Plex |
| 完全免费 |
✅ |
❌ 硬件转码收费 |
✅ |
❌ 高级功能收费 |
| 开源 |
✅ MIT |
❌ |
✅ GPL |
❌ |
| 零配置启动 |
✅ |
❌ |
❌ |
❌ |
| 单文件部署 |
✅ |
❌ |
❌ |
❌ |
| 内存占用 |
极低 (512M起) |
高 |
中 |
中 |
| 硬件加速 |
✅ 免费 |
❌ 付费 |
✅ |
❌ 付费 |
| AI 智能功能 |
✅ |
❌ |
❌ |
❌ |
| 多数据源刮削 |
✅ 6源 |
有限 |
有限 |
有限 |
| 豆瓣数据源 |
✅ |
❌ |
插件 |
❌ |
| Bangumi 动画源 |
✅ |
❌ |
插件 |
❌ |
| 离线可用 |
✅ |
✅ |
✅ |
❌ 需云端 |
| 中文优化 |
✅ 原生 |
一般 |
一般 |
一般 |
🛠️ 技术栈一览
- 后端:Go 1.22 + Gin + GORM + SQLite (WAL模式)
- 前端:React 18 + TypeScript + Tailwind CSS + Zustand + HLS.js
- 转码:FFmpeg(QSV/VAAPI/NVENC 硬件加速)
- 部署:Docker Alpine 3.19,多阶段构建
🗺️ 项目状态
目前已完成 v0.8 版本,正在向 v1.0 生产就绪版本 迈进。核心功能稳定可用,包括:
- ✅ 智能播放 + HLS 转码
- ✅ 剧集合集 + 多数据源刮削
- ✅ 多用户权限 + WebSocket 实时通知
- ✅ AI 智能功能 + AI 助手
- ✅ 文件管理 + 刮削管理
- ✅ 音乐库 + 图片库 + 直播 + 云同步
- 🔄 移动端适配优化(进行中)
💬 写在最后
这个项目是我在飞牛 NAS 上折腾家庭影音的过程中,一步步打磨出来的。从最初只是想简单看个视频,到现在支持 AI 智能搜索、多数据源刮削、硬件加速转码……功能越做越多,但初心不变:让 NAS 上看片这件事变得简单、好用、省心。
项目完全开源免费(MIT 协议),欢迎各位牛友试用、提建议、提 Issue,一起把它做得更好!
📦 项目地址:GitHub - nowen-video
📖 详细文档:见项目 README
🐛 问题反馈:GitHub Issues
如果觉得有用,欢迎给个 ⭐ Star 支持一下!

