Releases: Decohererk/DecoTV
v1.5.0
DecoTV v1.5.0
本次版本覆盖 v1.4.0 后从 e63460b 到 46c177f 的全部更新。
新功能
- 新增免登录家庭模式,支持
NEXT_PUBLIC_AUTH_MODE=public,前台页面和常用 API 可免登录访问。 - 新增番剧订阅管理,支持订阅条目维护、状态同步与前台入口联动。
- 集成弹弹play 开放平台,支持 API 凭证、弹幕搜索、手动匹配与托管中继配置。
- 新增 DecoDock 播放控制条,包含下一集倒计时、长按加速、环境光模式、快捷键覆盖和移动端横向滚动。
- 新增视频画质筛选、分辨率处理、HLS URL 检测和播放源优先级比较。
- 新增 M3U8 广告过滤、签名代理、后台开关、按源覆盖和环境变量阈值配置。
- 新增搜索结果触底加载/分页显示配置。
优化
- 优化 EpisodeSelector 视频源测速、延迟排序、测试反馈和源选择稳定性。
- 优化豆瓣代理 auto 模式、图片代理选择、封面失败降级和缓存刷新。
- 优化下载源规范化、请求头处理、CORS、FFmpeg 下载路径和 Docker 代理请求。
- 优化 TVBox 配置、豆瓣路由、搜索联动、导航表现和广告过滤兼容性。
- 优化注册管理,后台支持控制公开注册、默认用户组和配置迁移。
- 优化移动端播放控件、页面样式、文本对比度和过滤按钮体验。
修复
- 修复播放页未知年份匹配、搜索结果渲染数量和筛选统计异常。
- 修复 m3u8 代理在广告过滤、上游请求头、URL 重写和
?adfilter=false下的兼容问题。 - 修复豆瓣图片代理在 direct、自定义代理和
DoubanImageProxy*配置下的 fallback 行为。 - 修复视频源测速、HLS URL 识别、源优先级比较和 EpisodeSelector UI 反馈稳定性问题。
- 修复 TVBox 导航与广告过滤联动问题。
- 修复播放页面切换视频时播放速率未使用最新保存值的问题。
校验
pnpm typecheckpnpm test --runInBandpnpm build
Compare: e63460b...46c177f
v1.4.0
📺 DecoTV v1.4.0 Release Notes
✨ Highlights | 核心重构与新特性
- 🎬 私人影库 (My Library) 架构落地
提供完整的后台配置、连通性探测、智能扫描追踪及专属交互视图。 - 🔌 开放多媒体源无缝接入
原生集成 OpenList、Emby、Jellyfin 等核心连接器,并完美适配小雅 Alist。 - ⏭️ 智能跳过预设 (Skip Presets)
新增预设规则控制台,支持创建、编辑、全量导入/导出及冲突实时预览。 - 🏷️ 全景元数据深度整合
基于 TMDB 补齐全维数据,精准呈现超清海报、演职员信息及播放页动态扩展。 - 🎞️ 硬核流媒体解析引擎
攻克私有媒体流与 HLS 协议壁垒,实现多音轨精准解析、无缝切换与状态自适应重置。
⚡️ Improvements | 性能与体验升维
- 🔍 高可用搜索链路:强化 WebSocket 防御机制;即使在缺失标题、年份或集数等极端数据下,多维过滤与排序依然稳健输出。
- 🖼️ 渲染与并发优化:重写图片加载引擎(引入统一组件、骨架屏、异步解码与异常自动降级);大幅提升长列表虚拟化及源浏览器性能,告别滑动卡顿。
- 🧠 全局状态与调度:重构配置持久化及边界校验机制;全面增强 CMS 代理调度、成人源隔离与数据源智能归类能力。
- 🕹️ 交互细节打磨:精准化移动端进度条拖动预览;持久化弹幕与倍速偏好;深度优化影库鉴权、缓存及大体量分页检索调度。
🐛 Fixes | 稳定性修复
- 🛡️ 数据异常防御:修复极端残缺数据导致的搜索对比异常、排序错乱与视图崩溃。
- 💾 内存泄漏阻断:彻底解决由死链图片、无效返回或组件挂载引发的内存异常与列表白屏。
- 🔒 边界逻辑补全:修复空密码注册拦截失效、导入校验遗漏及配置存储不同步等漏洞。
- 🎵 播放链路稳固:修复 HLS 音轨切换卡顿及私人媒体流播放过程中的偶发性中断隐患。
- 💬 UI 反馈修正:修正状态反馈延迟及部分占位文案的语义歧义。
v1.3.0
🎉 DecoTV v1.3.0 发布说明
DecoTV v1.3.0 现已发布!此版本围绕 “播放、下载、弹幕、网盘” 四条主线完成了全面升级。我们引入了 Google Cast 网页投屏,重构了视频下载链路,增强了弹幕匹配与豆瓣爬虫的稳定性,并对全站性能进行了深度优化。与此同时,全新的 Logo 与视觉升级也将为您带来焕然一新的体验。
✨ 核心亮点
📥 下载引擎重构
下载功能迎来重大升级,不再只是简单的链接跳转。
- 链路补齐:完善了下载请求头(Headers)处理,支持防盗链下载。
- 稳定性增强:新增任务重试机制与超时处理,应对网络波动。
- 状态同步:下载任务状态实时同步,管理更加精准。
💬 弹幕体验增强
- 智能匹配:优化了模糊匹配算法,提高自动匹配成功率。
- 手动干预:新增手动匹配功能,彻底解决“对不上”的问题。
- 配置升级:支持多节点与自定义弹幕服务器配置,修复了配置面板的稳定性问题。
🎬 媒体库与爬虫 (Douban)
- 刮削增强:支持通过标题反查豆瓣 ID,新增并行抓取能力,大幅提升刮削速度。
- 反爬与代理:优化图片代理与防盗链处理,增强了缓存失效逻辑与反爬虫兼容性。
☁️ 网盘与直播
- 网盘集成:新增独立网盘页面,支持来源筛选;增强了 PanSou 远程代理与后台配置管理。
- 直播升级:优化直播源分页与分类切换体验,底层链路新增对
m3u8、flv、mp4格式的智能识别与处理。
⚡ 性能与架构
- 全站性能:引入虚拟化视频网格,大幅降低长列表内存占用。
- 加载优化:重构了分页、加载更多状态管理以及缓存命中逻辑,滚动加载丝般顺滑。
📺 交互与视觉
- 网页投屏:新增 Google Cast 支持,大屏观影更便捷(已补充 iOS 兼容性提示)。
- 视觉焕新:Logo 重新设计,首页登录背景图配置能力增强。
- 体验微调:优化了导航栏配置及页面浏览的回退体验。
感谢所有为 v1.3.0 版本提供反馈的用户与贡献者!
v1.2.0
🚀 DecoTV v1.2.0 - 性能与部署体验升级
发布日期:2026年1月30日
本次更新聚焦 性能优化 与 部署体验提升,彻底解决导航栏分页切换卡顿问题,新增直播直连模式可视化开关,并完善本地 Docker 部署方案实现数据持久化存储。
✨ 新功能
⚡ 直播直连模式
- 新增可视化快捷开关,位于直播页面标题栏右侧
- 一键切换「直连」/「代理」模式
- 直连模式减少延迟、提升流畅度,适合网络环境良好的用户
- 代理模式兼容性最佳,适合跨域受限场景
🗄️ 本地无数据库模式
- Docker 部署无需 Redis/PostgreSQL 等外部数据库
- 配置和用户数据持久化存储于浏览器 localStorage
- 大幅降低部署门槛,快速体验只需一条 Docker 命令
🔄 配置同步功能
- 本地模式下前端配置实时同步到后端内存存储
- 支持视频源、直播源的客户端直接更新
⚡ 性能飞跃
🚀 导航栏毫秒级响应
- 彻底解决 豆瓣页面分类切换时卡顿 1-2 分钟的严重问题
- PC 端分类切换改为新标签页打开,避免状态不同步
- 实现真正的毫秒级响应,用户体验质的飞跃
📦 全局缓存层优化
- 实现智能防抖机制,避免重复请求
- 使用
flushSync强制同步更新状态 - 优化数据加载体验,减少白屏等待时间
🔧 架构重构
🔐 认证系统统一
- 重构 localStorage 和数据库模式的认证处理逻辑
- 统一用户验证流程,代码更简洁可维护
- 支持本地模式与数据库模式无缝切换
📦 Docker 部署优化
- 完善本地部署方案文档
- 持久化存储体验全面升级
- 新增《本地无数据库模式说明》文档
🐛 问题修复
- ✅ 修复本地模式下用户名获取返回
undefined的问题 - ✅ 修复站长用户添加和密码覆盖逻辑,确保数据导出正确处理
- ✅ 修复分类切换时状态不同步导致的卡顿问题
- ✅ 修复豆瓣页面切换分类时卡顿 1-2 分钟的严重问题
📥 更新方式
Docker 用户
docker pull ghcr.io/decohererk/decotv:latest
docker compose down && docker compose up -dVercel 用户
推送代码到 GitHub 后自动重新部署
🙏 致谢
感谢所有提交 Issue 和 PR 的贡献者!
Full Changelog: v1.1.0...v1.2.0
Made changes.
v1.1.0
DecoTV v1.1.0 (2026-01-01) — Performance & UI Update
✨ 视觉与交互重构
- 移动端悬浮导航:iOS 风格磨砂胶囊,动态主题色 + 横向滚动
- 极光流体背景:PC 端 CSS 极光动画;移动端静态 Lite 版零功耗
- 数据源筛选器:重构为“单行横滑 + 模态框”
- UI 细节:移动端导航亮/暗色自适应,与 PC 端统一
⚡ 性能飞跃
- 主线程释放:移除 JS 粒子计算,解决导航栏卡顿/无响应
- 交互优化:禁用导航栏预加载 (
prefetch=false),点击更快 - 滚动优化:移除 Snap,修复分类栏“回弹死锁/点击穿透”
🐛 核心修复
- Docker 鉴权:未配置
AUTH_SECRET导致后台 401 的问题 - 豆瓣爬虫:演员头像缺失,补默认头像并替换高清图
- 构建:修复
MobileBottomNav类型错误导致的 CI 失败
🚀 及其若干Bug的修复和提议的实现
Upgrade notes
- 建议在 Docker 部署时设置
AUTH_SECRET(示例:-e AUTH_SECRET=\"$(openssl rand -base64 32)\")。 - 版本文件时间戳:
20260101172754(与内置版本检测兼容)。
v1.0.0
🎉 DecoTV v1.0.0 - Stable Release
首个正式稳定版本 — 底层架构重构 + 网络代理层增强 + 安全纵深防御 + UI/UX 全面改进
✨ 新功能
- 框架升级: Next.js 16.1.0 + React 19 + Turbopack
- 混合存储: 无 Redis 时自动降级为浏览器 localStorage,Docker 本地部署开箱即用
- CMS 全量代理: 根除 Mixed Content 和 CORS 问题,自动伪装 User-Agent 防拦截
- FilterBar 多行布局: Flex-Wrap 自动换行,PC 端信息展示更高效
- 自动选中首分类: 切换视频源后立即加载内容,消除"空白等待"
🛡️ 安全增强
- 纵深防御策略: 双重熔断隔离成人内容
- Layer 1: 配置接口白名单,物理剔除
is_adult源 - Layer 2: 代理层流量阻断,绕过配置也无法访问
- Layer 1: 配置接口白名单,物理剔除
- OrionTV Fix: 彻底解决客户端缓存导致的隐私泄露
🐛 修复
- Admin 面板本地模式
Unauthorized鉴权问题 - DndContext 嵌套导致的 SSR Hydration 崩溃
- 切换视频源后分类栏为空
- CMS 代理 500 错误 (Edge → Node.js Runtime)
- HTTPS 页面加载 HTTP 图片失败
♻️ 重构
- DoubanSelector 移除横向滚动,重写为卡片式多行布局
- 所有外部 URL 统一走
/api/proxy/cms
📦 部署
# 拉取最新镜像
docker pull ghcr.io/decohererk/decotv:v1.0.0
# 或使用 latest
docker pull ghcr.io/decohererk/decotv:latestv0.9.0
🚀 DecoTV v0.9.0 - 重大技术栈升级
⚡ 核心升级
| 依赖 | 旧版本 | 新版本 | 提升 |
|---|---|---|---|
| Next.js | 14.x | 16.1.0 | Turbopack 默认启用,开发热更新速度提升 10x |
| React | 18.x | 19.0.0 | 自动性能优化,低端设备运行更流畅 |
| Tailwind CSS | 3.4.x | 4.1.18 | CSS 原生配置,构建速度提升 5-10x |
| TypeScript | 4.9 | 5.8.3 | 更强的类型推断 |
| ESLint | 8.x | 9.28.0 | 全新 Flat Config 格式 |
🎨 UI/UX 改进
- ✨ 优化亮色模式下导航栏按钮的文字对比度
- ✨ 修复播放页详情区域文字过淡的问题
- ✨ 调整全局灰色色板,提升整体可读性
🔧 技术变更
- 📦 Tailwind 配置迁移到 CSS 原生
@theme指令 - 📦 ESLint 配置迁移到 eslint.config.mjs (Flat Config)
- 📦 启用 Turbopack 构建模式(开发环境)
- 🗑️ 移除
next-pwa(不兼容 Next.js 16,PWA 安装功能保留) - 🗑️ 移除
autoprefixer(Tailwind 4 内置)
🎉 及若干提议的实现
⚠️ 注意事项
- 由于移除了
next-pwa,离线缓存功能暂时不可用(对视频网站影响极小) - 首次部署需要完整重新构建镜像
📥 部署指南
# Docker 部署
docker pull ghcr.io/decohererk/decotv:v0.9.0
docker run -d -p 3000:3000 --name decotv ghcr.io/decohererk/decotv:v0.9.0v0.8.0
v0.8.0 - 移动端体验优化与核心 Bug 修复
📅 发布时间: 2025-12-12
🏷️ 版本: v0.8.0
本次更新主要集中在移动端体验优化和核心功能稳定性修复。重点解决了 iPhone 用户无法设置跳过片头片尾的问题,并修复了无数据库模式下的权限异常。
🌟 更新亮点
✨ 新增功能
- 📱 移动端体验优化
在播放页标题栏新增独立的 "跳过片头片尾" 设置入口。解决了 iPhone/小屏设备因菜单折叠导致无法找到设置的问题,现在触手可及。
⚡ 性能优化
- 🚀 响应速度提升
优化了 Spider JAR 抓取和搜索 API 的超时设置,大幅减少长时间等待,提升整体响应速度。 - 🔄 版本检测重构
重构了版本检测逻辑,修复了服务端读取本地版本失败的问题,确保更新提示更加准确可靠。
🐛 问题修复
- 🛡️ No-DB 模式权限修复
修复了在不使用 Redis/Kvrocks 的无数据库模式下,用户无法获取管理员权限及保存配置的严重 Bug。 - 📡 版本检测误报修复
修复了当远程版本获取失败时,系统错误地提示"已是最新版本"的问题,现在会正确处理网络异常状态。
📦 升级指南
Docker 部署
docker pull decohererk/decotv:latest
docker restart decotvv0.7.0
DecoTV v0.7.0 发布说明
- 发布版本: v0.7.0
- 构建时间戳: 20251126120000
变更摘要
- 搜索解析修复: 支持包含查询参数/签名的
.m3u8链接(例如index.m3u8?token=...),避免误判为不可播放导致结果为零。 - 搜索匹配优化: 收紧模糊匹配逻辑,保证字符顺序一致的子序列匹配,减少“ABC 匹配到 ACB”这类误命中;过滤 0 分结果。
- 移动端注册页改版: 提升验证码显示与交互,布局更适配小屏,整体视觉一致性提升。
- 及若干小问题、用户体验优化
升级与注意事项
- 镜像与部署:拉取或构建最新镜像后请重启服务,确保
VERSION.txt已同步到public/VERSION.txt(构建脚本会自动完成)。 - 缓存与存储:若使用 Redis/Upstash/Kvrocks,建议清理过期的搜索缓存以便新逻辑生效。
- 验证:移动端请实际打开注册页,确认验证码完整显示与点击刷新正常。
致谢
感谢社区的反馈,特别是关于搜索与移动端注册的使用体验问题,已在本次版本中集中改善。
v0.6.0
DecoTV v0.6.0
发布时间: 2025-10-30
版本号: 0.6.0
时间戳: 20251030125734
🎉 主要更新
新增功能
- 成人资源智能标记系统: 新增
is_adult字段,支持手动标记成人资源视频源 - 批量标记功能: 后台管理页面支持批量标记/取消标记成人资源
- 双重过滤机制:
is_adult手动标记 +yellowWords关键词检测,更精准的内容过滤
优化改进
- 移除 TVBox 配置页面的版本检查器组件,减少混淆
- 后台管理表格新增"成人资源"列,红色渐变开关一键切换
- 视频源导入/导出完整支持
is_adult字段 - 所有搜索 API 更新过滤逻辑,优先检查
is_adult标记
问题修复
- 修复版本历史面板只显示部分版本的问题
- 修复 changelog 转换脚本的字符串转义错误
📦 部署方式
Docker:
docker pull ghcr.io/decohererk/decotv:v0.6.0源码部署:
git pull origin main
pnpm install
pnpm build💡 使用说明
在后台管理 → 视频源配置中:
- 点击"成人资源"列的开关可标记单个视频源
- 选中多个视频源后使用"🔞标记成人"/"取消标记"批量操作
- 标记为成人资源的视频源会自动被过滤(无论是否关闭黄色过滤器)