E 视界 (冬瓜 TV 的增强 / 重构版本):
一款基于 Node.js 和 Vue 3 构建的现代流媒体聚合播放器。经过全面重构和升级,引入了 Netflix 风格的沉浸式 UI、TMDb 数据驱动的动态榜单、以及智能的多源聚合搜索功能。

核心特性:
🎬 双引擎数据驱动
- • TMDb (The Movie Database):提供高质量的电影/剧集元数据(海报、背景图、评分、简介、演职员表)。
- • CMS 聚合源 (Maccms):集成 48+ 个第三方资源站 API,自动进行全网测速,智能过滤失效源,确保播放流畅。
🔍 智能搜索与聚合
- • 实时流式搜索 (SSE):采用 Server-Sent Events 技术,搜索结果边搜边显,即时反馈,无需等待所有源响应。
- • 自动分组与实时合并:同一影片的不同线路自动聚合,新搜索到的源实时合并到已有卡片,右上角源数量实时跳动。
- • SQLite 永久缓存:内置高性能 SQLite 数据库缓存,支持无限存储,读写速度极快,热搜词秒级响应。
📺 沉浸式播放体验
- • 影院模式:全新设计的播放详情页,采用暗色系沉浸布局,支持剧集网格选择。
- • 智能线路测速:支持用户端直连测速和服务器代理测速,真实反映视频可用性。
- • 自动故障转移:播放失败时自动切换到下一个可用线路,无需手动操作。
- • 投屏支持:集成 DLNA/AirPlay 本地投屏功能(需浏览器支持)。
🌏 大陆用户优化
- • 智能 IP 双重检测:采用 Cloudflare Trace + ipapi.co 双重检测机制,准确率高且无 API 速率限制,自动切换到 TMDB 反代模式。
- • 本地资源优先:核心依赖库(Vue, Bootstrap, DPlayer 等)均本地化部署,彻底解决 CDN 劫持或加载缓慢问题,秒开无压力。
- • 一键安装脚本:支持交互式配置 API Key、反代地址、运行端口。
📱 多端支持
- • Android TV / 盒子:提供专属 APK 安装包,完美适配电视遥控器操作,支持 Android TV 桌面启动 (Leanback Launcher)。
- • 移动端 App:基于现代 Web 技术封装,支持沉浸式状态栏 (Immersive Status Bar),顶部无黑边,内容自动适配刘海屏,体验原生级流畅。
- • PWA 支持:支持添加到主屏幕,即点即用。
🔒 安全与访问控制
- • 全局访问密码:支持设置全局访问密码,且支持记住登录状态长达 1 年,既安全又便捷。
- • 远程配置加载:支持从远程 URL 加载 db.json 配置文件,方便多站点统一管理。
免责声明:
本教程仅作为学习交流使用,使用前请务必遵守相关法律法规及平台协议,请勿用于商业用途及非法领域。
准备
需要准备两样东西,分别是:db.json 和 TMDb API Key
配置采集源
所有的采集源配置均存储在 db.json 文件中,采集源越多可以检索的资源也就越多。提供采集源可能会构成侵权违法行为,我就不提供了,大家只能各凭本事了。
项目初次运行时会自动生成 db.json,如果未生成,可以手动创建或使用模板(也有可能自动生成的是文件夹,所以建议还是直接手动创建一个 db.json 文件作为映射)。
{
"sites": [
{
"key": "unique_key1", // 唯一标识符(英文字母,不可重复)
"name": "站点名称1", // 显示在界面的名称
"api": "https://...", // Maccms V10/JSON 接口地址
"active": true // 是否启用 (true/false)
},
{
"key": "unique_key2", // 唯一标识符(英文字母,不可重复)
"name": "站点名称2", // 显示在界面的名称
"api": "https://...", // Maccms V10/JSON 接口地址
"active": true // 是否启用 (true/false)
}
]
}
获取 TMDb API Key
需要有 The Movie Database 提供的密钥,用于获取影视信息。具体详细的步骤之前也写过教程,可以看关联的“TMDB 获取 API”的文章,
来到 TMDB 官网,https://www.themoviedb.org/

可以先将语言设置为中文

没有账号的可以先注册

登录账号(注册比较简单这里就不说了)

点击“账户设置”

请求 API 密钥

点击创建“新增”

拉到最底部,点“接受”

按要求填写一下
应用简介随便填写:As an ordinary user, I hope to obtain tmdb API for better configuration of some personal audio-visual software.

这个就是我们需要的了 API 了

部署 TMDB 反代
这个不是必须的,建议先部署容器,如果网络有问题再配置。因为需要用到 TMDB 获取海报和影视信息,但国内有些地方是无法直接访问,就需要配置反向代理才能正常显示。如果平时都是家里用,直接修改路由器 Hosts 配置会更加方便,可以看关联的“Hosts 自定义修改”的文章。
安装
创建 donggua-tv 的目录

创建一个 cache.db 空白文件

将前面准备的配置采集源 db.json 也放到里面

创建项目,根据实际情况修改 TMDB_API_KEY 和 ACCESS_PASSWORD 两个环境变量的值

Docker Compose
services:
donggua-tv:
image: ghcr.io/ednovas/dongguatv:latest
container_name: donggua-tv
ports:
- 3000:3000
environment:
- TMDB_API_KEY=your_api_key_here
- ACCESS_PASSWORD=your_password
- CACHE_TYPE=sqlite
volumes:
- ./db.json:/app/db.json
- ./cache.db:/app/cache.db
- ./cache/images:/app/public/cache/images
restart: unless-stopped
参数说明(更多参数建议去看文档)
:::
TMDB_API_KEY(环境变量):TMDb API 密钥,用于获取影视信息
TMDB_PROXY_URL(环境变量,可选):TMDB 反代地址
ACCESS_PASSWORD(环境变量,可选):访问密码
PORT(环境变量,可选):自定义端口
CACHE_TYPE(环境变量,可选):缓存类型 ('json', 'sqlite', 'memory', 'none') - 默认 json
/app/db.json(路径):存储所有的采集源配置信息
/app/cache.db(路径):存储搜索结果和详情的数据库文件
/app/public/cache/images(路径):存储图片信息
:::
TIP:项目启动会自动创建文件夹,并且 cache.db 文件大小也会有变化

使用
浏览器中输入 http://NAS的IP:3000 就能看到界面

输入密码进行登录

界面 UI 相当不错,有点像打开了 EMBY 影音媒体(如果没有海报那些,大概率是网络问题或者密钥错了)

支持影片搜索功能,想要看什么直接搜索就行

添加的源越多,可以搜索出来的资源也就越多

打开播放都是完全没有问题的

底下除了有剧情介绍,还可以切换不同的播放源,以及很方便的选集播放

如果不知道看什么,下面也有很多榜单可以选择

可以看的电影资源都比较新,不过画质基本都是 1080P,手机和平板观看也还行吧

手机网页端也有做适配,体验很好

项目地址(https://github.com/EdNovas/dongguaTV/releases) 也有打包好的 APK 文件,有需要的可以自行安装试试

总结
相比之前推荐的 LibreTV、MoonTV、KatelyaTV 等流媒体聚合工具,个人感觉 E 视界的观影体验是最好的。访问的界面就很好看,有海报和相关介绍,不过没有后台配置信息会有点不方便。有轻度影音需求的用户,非常推荐部署试试,不用繁琐的整理电影,直接访问就能观看,大大低萌新的入门门槛。
综合推荐:⭐⭐⭐⭐⭐(轻度影音需求的用户,非常推荐)
使用体验:⭐⭐⭐⭐(体验非常不错,除了画质低一点)
部署难易:⭐⭐(简单)︎