
LunaTV 直播接入 IPTV一条 M3U 订阅变成高清频道列表的完整教程【免费下载链接】LunaTV本项目采用 CC BY-NC-SA 协议禁止任何商业化行为任何衍生项目必须保留本项目地址并以相同协议开源项目地址: https://gitcode.com/GitHub_Trending/lu/LunaTV收藏夹里躺着一堆 IPTV 订阅链接却找不到稳定的播放器LunaTV 直播能帮你把一条 M3U 订阅变成可分组、带节目单的频道列表在浏览器里直接开播。直播功能能做什么解析 M3U 订阅自动按 group-title 归类频道拉取 XMLTV 节目单EPG展示今日在播与预告多订阅源并行管理一键刷新频道列表内置 HLS 播放器支持换源与频道收藏最短上手路径部署项目git clone https://gitcode.com/GitHub_Trending/lu/LunaTV按 README 的 Docker Compose 拉起 LunaTV Kvrocks 两个容器。注意部署后是空壳不含内置直播源订阅要自己收集。进管理页的「直播源配置」点「添加直播源」填 M3U 链接、EPG 地址可选和 User-Agent再点「刷新直播源」频道数会自动回填。进直播页选择源、按分组浏览频道点任意频道即播下方节目单条会自动滚到正在播出的位置。参数速查四个字段各管什么参数作用默认值 / 来源M3U 订阅链接频道列表的来源核心解析逻辑在 src/lib/live.ts必填支持 http/httpsEPG 地址XMLTV 节目单M3U 头带 x-tvg-url 时可留空自动识别可选缺省回退到 x-tvg-urlUser-Agent模拟播放器身份部分源有防盗链校验默认AptvPlayer/1.4.10频道数量刷新后自动回填用于快速判断拉取成败显示 0 表示这次拉取失败容易被忽略的三个能力频道智能缓存。频道列表首次访问后会被存进内存缓存之后切换分组、刷新页面都是秒开不再重复拉订阅源变动后在管理页手动刷新即可刷新时会清掉旧缓存。节目单流式解析。EPG 的 XML 体积往往很大LunaTV 直播用 ReadableStream 逐行读取只保留订阅里实际出现的 tvg-id 对应节目把不相关频道直接标记跳过避免大文件撑爆内存。播放器换源⚡。基于 ArtPlayer 与 HLS.js右侧面板列出各资源的带宽与延迟哪个快切哪个频道可直接收藏备用。实现见 src/app/live/page.tsx。对照排障现象可能原因处理方式频道列表为空订阅源失效或需要特定 UA换有效订阅或调 UA 后重新刷新没有节目单EPG 地址填错或 tvg-id 对不上核对两个文件里同一频道的 tvg-id 字段是否一致部分频道无法播放源本身失效与 LunaTV 无关换源或把能播的频道加入收藏适合手头有 M3U 订阅、想开箱即看直播的用户下一步先把常用频道加入收藏再挑几个稳定的源固定下来日常看就省心了。【免费下载链接】LunaTV本项目采用 CC BY-NC-SA 协议禁止任何商业化行为任何衍生项目必须保留本项目地址并以相同协议开源项目地址: https://gitcode.com/GitHub_Trending/lu/LunaTV创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考