这个项目能做什么

OTT-play FOSS 是一款围绕本地 Rust HTTP 服务器构建的 IPTV/OTT 播放器。它可运行在智能电视(LG WebOS, Samsung Tizen, Panasonic, Sony)、机顶盒(Infomir MAG, Dune HD, Enigma2, Android TV)以及桌面浏览器上。播放功能通过 HLS.js 和 Shaka Player 覆盖 HLS、DASH 和纯 HTTP 流,并在发生致命 HLS 解析或网络错误时支持软实时重连。 该播放器提供具有模糊频道匹配功能的 XMLTV EPG、时移/回看、更紧凑的指南行、节目标题搜索以及定时提醒。其他功能包括带有家长控制 PIN 码的多列表收藏夹、JSON 格式的设置和收藏夹导出/导入、继续观看存档恢复书签,以及对 M3U 播放列表、Xtream Codes API 和 Stalker 中间件的支持。它支持 24 种设备类型(每种设备具有独立的遥控器按键映射)和 21 种语言。 基于 Webhook 的推送命令系统允许播放器每 10 秒轮询一个本地 URL。命令为 JSON 对象,包括弹出消息、通过编号/名称/随机选择切换频道以及更改提供商。设备 UUID 实现了针对单个设备的路由,而可选的本地代理允许在没有中央服务器的情况下实现完全本地的自动化。当电视和手机处于不同网络时,远程文本输入 (swop) 可以通过 Cloudflare Worker 使用手机键盘;该 Worker 要求将设备 UUID 加入白名单。出于安全考虑,中央服务器的 Webhook 轮询和通知端点已被禁用,建议在可信的家庭网络中使用本地代理。 调试支持可通过 URL 查询、localStorage、窗口属性或服务器配置端点选择性开启。启用后,HUD 可显示播放详情。移动端应用使用 Capacitor 将 TypeScript 前端封装为 iOS 和 Android 版本。针对 Mode B 测试,提供了 Tauri 桌面端和 Capacitor 设备的冒烟文档及脚本。 安装包随标签版本发布:macOS (.dmg/.app.zip,未签名,含 Gatekeeper 隔离移除步骤)、Windows (.msi/.exe)、Linux (AppImage/.deb/.rpm)、iOS (.ipa,通过 AltStore, TestFlight 或 Xcode 侧载) 以及 Android (.apk,直接安装或通过 ADB)。Docker 多架构镜像 (amd64/arm64) 以 alvit/ottplay-foss 名义发布,基于 musl/Alpine 构建,以便在 Synology DSM Docker 等旧版 glibc 宿主机上运行。从源码构建使用 npm 构建播放器包,使用 cargo 构建 Rust 服务器;README 文档记录了关于 companion、stream-proxy 标头、logo 并发、XMLTV 缓存刷新、Mode A E2E 播放路径、Capacitor 设备和 Tauri 桌面的冒烟脚本。