# qixing-zhuiju **Repository Path**: fjcq/qixing-zhuiju ## Basic Information - **Project Name**: qixing-zhuiju - **Description**: 基于 Electron 的 Windows 桌面影视播放应用,支持苹果CMS资源站的视频播放。 - **Primary Language**: JavaScript - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 1 - **Created**: 2025-08-07 - **Last Updated**: 2026-03-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 七星追剧 - Qixing Zhuiju 基于 Electron 的 Windows 桌面影视播放应用,支持苹果CMS资源站的视频播放。 ## 🚀 快速开始 ### 开发环境 ```bash # 使用pnpm(推荐,项目已迁移) pnpm install # 安装依赖 pnpm start # 启动开发服务器 # Windows批处理启动(智能检测npm/pnpm) dev.bat # 开发启动器 ``` ### 编译发布 ```bash # 使用pnpm(推荐) pnpm run pack # 推荐:使用electron-packager编译 pnpm run dist # electron-builder编译 ``` #### 智能编译器(Windows批处理,自动检测包管理器) ```powershell # 交互式菜单(推荐) .\build.bat # 或直接指定模式 .\build.bat quick # 快速编译 .\build.bat full # 完整编译(包含环境检测) .\build.bat portable # 便携版Node.js编译 .\build.bat test # 环境兼容性测试 ``` #### 编译模式说明 - **快速编译**: 适合日常开发,直接使用pnpm run pack - **完整编译**: 包含完整的环境检测和多种编译方式尝试,适合首次编译或遇到问题时使用 - **便携版编译**: 兼容便携版Node.js环境,支持自定义Node.js路径 - **环境测试**: 全面检测编译环境的兼容性 ## 📦 编译输出 编译完成后,可执行文件位于: ```text dist/七星追剧-win32-x64/七星追剧.exe ``` ## 📁 项目结构 ```text 七星追剧/ ├── src/ # 源代码目录 │ ├── config/ # 配置文件目录 │ │ ├── version.js # 版本号全局配置 │ │ ├── changelog.js # 更新日志配置 │ │ ├── sync-version.js # 版本同步脚本 │ │ └── README.md # 版本管理说明 │ ├── dlna/ # DLNA投屏功能 │ │ ├── dlna-client.js # DLNA客户端 │ │ └── simple-discovery.js # 设备发现 │ ├── renderer/ # 渲染进程 │ │ ├── index.html # 主界面 │ │ ├── player.html # 播放器界面 │ │ ├── css/ # 样式文件 │ │ │ ├── components.css # 组件样式 │ │ │ ├── player.css # 播放器样式 │ │ │ ├── routes.css # 路由样式 │ │ │ └── style.css # 主样式 │ │ ├── js/ # JavaScript模块 │ │ │ ├── api.js # API服务 │ │ │ ├── app.js # 主应用逻辑 │ │ │ ├── components.js # UI组件 │ │ │ ├── danmaku.js # 弹幕系统 │ │ │ ├── enhanced-danmaku.js # 增强版弹幕 │ │ │ ├── player.js # 播放器逻辑 │ │ │ └── storage.js # 本地存储 │ │ └── logo.png # 界面Logo(162*58) │ └── preload.js # 预加载脚本 ├── assets/ # 资源文件 │ ├── icon.ico # 应用图标(256*256,Windows编译用) │ ├── icon.png # 应用图标(256*256) │ └── logo.png # 应用Logo(162*58) ├── main.js # 主进程 ├── package.json # 项目配置 ├── build.bat # 编译工具 ├── dev.bat # 开发启动 ├── quick-build.bat # 快速编译 ├── CHANGELOG.md # 版本更新日志 └── README.md # 项目文档 ``` ## ⚡ 功能特性 ### 🎬 核心播放功能 - ✅ **多站点支持** - 苹果CMS API,支持JSON/XML格式 - ✅ **视频搜索** - 关键词搜索和分类浏览 - ✅ **在线播放** - 支持m3u8格式,基于HLS.js引擎 - ✅ **播放历史** - 自动记录观看历史和播放进度 - ✅ **自动播放** - 智能播放下一集功能 - ✅ **多窗口** - 独立播放器窗口,支持全屏播放 - ✅ **窗口置顶** - 播放器窗口可设置为始终在最前面 - ✅ **投屏功能** - 支持将视频投屏到电视等大屏设备 - 🆕 **实时弹幕** - 观看同一视频的用户可通过弹幕实时互动 ### 💬 弹幕互动功能 - 🆕 **实时弹幕** - 基于WebSocket的实时弹幕系统 - 🆕 **多彩弹幕** - 7种颜色、3种大小的弹幕样式 - 🆕 **智能房间** - 根据视频自动分配弹幕房间 - 🆕 **悬停输入** - 鼠标悬停播放器窗口显示弹幕输入框 - 🆕 **智能定位** - 输入框自动居中显示在进度条上方 - 🆕 **双弹幕模式** - 支持实时弹幕和时间轴弹幕 - 🆕 **多服务器** - 自动切换多个公共弹幕服务器 - 🆕 **一键开关** - 可随时开启/关闭弹幕显示 ### 🛠️ 站点管理功能 - 🆕 **站点配置** - 添加/编辑/删除视频站点 - 🆕 **线路屏蔽** - 支持屏蔽指定播放线路(逗号分隔) - 🆕 **线路别名** - 自定义线路显示名称 - 🆕 **智能过滤** - 自动忽略被屏蔽的播放线路 ### 💾 数据管理功能 - 🆕 **配置导出** - 一键导出所有设置和数据 - 🆕 **配置导入** - 支持合并/覆盖两种导入模式 - 🆕 **数据迁移** - 跨设备快速同步配置 - 🆕 **选择性备份** - 可选择导出特定数据类型 ### 🎨 界面体验 - ✅ **响应式设计** - 适配不同屏幕尺寸 - ✅ **深色主题** - 护眼的暗色界面 - ✅ **无菜单栏** - 简洁现代的UI设计 - ✅ **智能交互** - 直观的操作体验 ## 🛠️ 技术栈 - **Electron 27.x** - 桌面应用框架,已禁用硬件加速解决GPU问题 - **HLS.js 1.4.12** - 视频播放引擎,支持m3u8流媒体 - **Axios 1.5.0** - HTTP请求库,处理API通信 - **WebSocket (ws 8.14.2)** - 实时通信协议,支持弹幕互动功能 - **LocalStorage** - 本地数据存储,支持配置持久化 - **原生Web技术** - HTML5/CSS3/ES6+ JavaScript - **pnpm** - 包管理器,更高效的依赖管理 ## 🔧 开发特性 - **模块化架构** - 清晰的代码组织和职责分离 - **错误处理** - 完善的异常捕获和用户反馈 - **性能优化** - 已禁用硬件加速,避免GPU崩溃 - **多窗口支持** - 主窗口 + 独立播放器窗口设计 - **现代化UI** - 支持Windows亚克力效果和macOS暗色主题 - **自定义标题栏** - 实现无边框透明窗口设计 - **开发友好** - 支持调试模式和详细日志记录 - **自动版本同步** - 版本号全局配置和自动同步系统 ## 💬 弹幕使用指南 ### 基本操作 1. **激活弹幕输入**:将鼠标移动到播放器窗口内 2. **输入弹幕**:在窗口中间下方的输入框中输入内容 3. **发送弹幕**:点击发送按钮或按回车键 4. **隐藏输入框**:将鼠标移出播放器窗口 ### 功能特点 - **智能定位**:输入框自动显示在播放进度条上方 - **双模式支持**:实时弹幕和时间轴弹幕 - **全屏兼容**:全屏模式下自动调整输入框位置 - **样式自定义**:支持颜色和大小调节 > 📖 详细使用说明请参考 [弹幕功能说明.md](弹幕功能说明.md) ## 🎯 发布说明 ### 编译步骤 1. **环境准备**:确保已安装 Node.js 16+ 和项目依赖 2. **执行编译**:运行 `build.bat` 选择编译模式,或直接使用 `pnpm run pack` 3. **文件打包**:将 `dist/七星追剧-win32-x64/` 整个文件夹打包 4. **用户分发**:用户解压后即可直接运行 ### 🔧 便携版Node.js支持 针对使用便携版Node.js的用户,可以使用 `build.bat` 的便携版编译模式: #### 使用方法 1. 运行 `build.bat` 2. 选择 `[3] 便携版Node.js编译` 3. 输入便携版Node.js的安装路径 4. 等待自动编译完成 #### 特性优势 - ✅ **自动路径检测** - 支持便携版Node.js路径输入 - ✅ **环境隔离** - 创建独立的pnpm缓存和配置 - ✅ **兼容性测试** - 内置环境检测功能 - ✅ **智能fallback** - 多种编译方式自动切换 > 📋 详细版本更新历史请参考 [CHANGELOG.md](CHANGELOG.md) ## 🔧 开发工具 ### 批处理脚本 - `dev.bat` - 智能开发启动器,自动检测运行环境(VS Code/独立终端) - `build.bat` - 智能编译器,集成多种编译模式: - 快速编译(推荐) - 完整编译(环境检测) - 便携版Node.js编译 - 环境兼容性测试 ### 开发模式 ```bash pnpm run dev # 开发模式(支持调试) pnpm start # 标准启动 dev.bat # Windows批处理启动(智能检测npm/pnpm) ``` ### 调试功能 - **开发者工具** - F12开启Chrome DevTools - **热重载** - 文件修改后自动重载 - **控制台日志** - 详细的运行时信息 - **错误追踪** - 完整的错误堆栈信息 ### 系统要求 - **操作系统** - Windows 10/11 (x64) - **运行时** - Node.js 16+ - **内存** - 建议 4GB 以上 - **存储** - 约 200MB 安装空间 --- ## 📄 使用说明 ### 基础操作 1. **添加站点** - 设置页面 → 站点管理 → 添加站点 2. **搜索视频** - 主页面输入关键词搜索 3. **播放视频** - 点击视频海报 → 选择剧集播放 4. **查看历史** - 设置页面 → 播放历史 ### 高级功能 - **线路别名** - 设置页面 → 线路设置 → 添加别名 - **弹幕互动** - 播放器内按回车键打开弹幕输入框 - **弹幕设置** - 支持颜色、大小调节和开关控制 - **窗口置顶** - 播放器右上角置顶按钮,保持窗口在最前面 - **DLNA投屏** - 播放器控制栏投屏按钮,投屏到智能电视和设备 - **屏蔽线路** - 站点管理 → 编辑站点 → 屏蔽线路 - **数据备份** - 设置页面 → 导出/导入配置,跨设备同步 - **在线更新** - 侧边栏集成更新检查,支持版本比较 --- **作者**: 止水制造 **版本**: v1.3.3 **更新**: 2025年12月4日 **协议**: MIT License