AI时代真的给人带来了无限可能,之前不敢想的事情现在都可以做了。个人对 LunaTV 和 LibreTV 都不甚满意,
为什么要自己再做一个
其实很早之前我就自己搭建过影视站点,只不过用的都是传统的基于PhP的CMS模板,例如海洋CMS。
但是用户体验很不好,
LibreTV 和 LunaTV 事实上和传统的 CMS 站点不太一样,其本地不需要保存采集源,而是直接
LibreTV太简单
我不喜欢LibreTV的地方在于它的赛博朋克风格实在难以适应,个人更喜欢小清新和暖色调的网站,另一方面,LibreTV没有我想要的弹幕功能,而且早已经不再维护了。
LunaTV太复杂
LunaTV的功能太多了,就像一个百宝箱一样想要囊括万物,但是我只需要一个看剧的平台,这么多功能其实没必要。
我实现了哪些功能
我实现了我认为一个影视站应该具备的最最基础的功能,例如:
- 豆瓣推荐 - 首页展示热门和高分影视内容
- 红果短剧推荐 - 首页展示热门和高分短剧内容
- 多源视频搜索 - 支持自定义多个视频源 API,聚合搜索电影和电视剧
- 预测速 - 对搜索到的视频预测速和延迟,帮助用户选择最佳视频
- 高级播放器 - 基于 Artplayer,支持 HLS/M3U8 流媒体播放
- 快捷键支持 - 丰富的键盘快捷键,提升观看体验
- 弹幕系统 - 手动设置接口,实时抓取最新官网弹幕
- 去广告功能(实验功能) - 并不总是生效,因为采集站的广告片段特征越来越少
- 片头片尾跳过 - 自动跳过片头片尾,可自定义跳过时间点
- 播放历史 - 自动保存观看进度,随时继续观看
- 收藏管理 - 收藏喜爱的视频,方便快速访问
- 灵活配置 - 可视化管理视频源和弹幕源,支持导入导出
- 直链播放 - 直接播放OpenList的链接,畅享高清+弹幕体验
网站截图:




如何部署
无服务器部署
Vercel 和 EdgeOnePage 都可以很好的兼容Next.js的项目,所以Fork本仓库,然后一键部署即可,无需额外复杂的环境变量
Docker本地部署
也很简单,一行命令即可
1 | docker run -d --name nexttv -p 3000:3000 ghcr.io/seqcrafter/nexttv:latest |
然后就可以在http://localhost:3000观看了。
弹幕功能如何开启
LogVar:
上面这个仓库在原作者的基础上添加了直接根据douban_id获取弹幕的功能,因为很多的视频源自带豆瓣ID,这个就避免了错误匹配的可能性。
另外,如果视频源不带豆瓣ID或者是一些非国内平台的剧,那么返回弹幕也就没了意义了。
1 | https://{your project name}.netlify.app |
那么,在我们网站的设置页面,你的接口应该填写
1 | https://{your project name}.netlify.app/{token}/ |
然后就OK了,系统如果检测到你的视频有豆瓣的ID,就会自动抓取弹幕了!
多说一下,LogVar项目推荐的环境变量:
CONVERT_COLOR: 可以随机为弹幕生成颜色DANMU_LIMIT: 随机取样限制弹幕数量,弹幕数太多会爆炸ENABLE_EPISODE_FILTER: 避免抓取到错误链接
直链播放
必须提一下直链播放的功能!!
你会发现很多采集源的视频质量非常差,模糊不清或者帧率码率很低。所以我添加了这个功能,目的是为了匹配OpenList的资源。
OpenList可以解析夸克或者移动这些网盘资源获取直链,那么直接复制来自OpenList的播放链接到里面播放,就可以畅享高清+弹幕的体验了。
欢迎各位尝试!
演示站点
你可以访问
来体验我的影视站。
注意事项及免责声明
- 本项目为空壳播放器,自带唯一播放源不稳定,仅供学习使用,请自行更换播放源
- 本项目保持轻量(其实复杂的我也不会),不添加用户登录以及认证功能,不添加成人源隔离
- 本项目完全由 Claude Code 生成,仅作为学习参考,请勿用于商业用途