GNU General Public License v3.0

技术解读

以下内容由 GitRead 中文社区 编辑团队基于项目 README 与官方资料整理, 结合中文开发者的常见使用场景补充技术选型建议。具体以项目官方文档为准。

深度解析:akiralereal/iptv —— 一站式 IPTV 直播源管理与分发系统

项目背景与痛点

在流媒体时代,IPTV 直播源的管理和分发一直是技术支持人员面对的一大挑战。传统的 IPTV 系统往往依赖于复杂的后台管理和维护,导致部署和维护成本高昂。同时,这些系统在动态源抓取和外部源管理方面的能力有限,使得用户难以轻松地获取丰富的直播内容。

akiralereal/iptv 项目正是为此类痛点而设计的解决方案。它提供了一站式 IPTV 直播源管理与分发系统,由 Docker 包装,便于快速部署和维护。通过咪咕源抓取与外部源管理,用户可以轻松获取到广泛的内容资源。

核心技术揭秘

该系统的设计精妙之处在于其简洁的技术栈和高效的数据流。核心组件使用 Python 和 Docker 技术栈实现,并封装了咪咕资源的抓取功能,支持体育赛事和 EPG 的实时更新。此外,系统还内置了对 m3u 和 txt 订阅的支持,便于用户管理和导出直播源列表。

技术架构分析

以下是项目的高阶技术架构图:

graph TD A[用户请求] --> B[Docker 容器启动] B --> C[Python 后台服务] C --> D{"数据处理模块"} D -->|"咪咕源抓取"| E[咪咕源解析] D -->|"外部源管理"| F[外部源编排] E --> G[内容存储] F --> G G --> H[订阅导出] H --> I[用户获取]

架构中,Docker 容器负责快速部署系统,用户请求进入后,通过后端的 Python 服务进行处理。数据处理模块则体现了系统的数据处理能力,分为咪咕源抓取和外部源管理两个分支,最终将解析后的数据存入库。用户可以通过订阅导出功能获取管理好的直播源列表。

功能亮点与差异

akiralereal/iptv 的杀手锏在于其丰富的内置直播源,其中包括纬来体育、Red Bull、4K 卫视及港澳台等热门频道。并且通过简单的订阅导出功能,用户可以轻松管理并使用这些资源。相比较同类产品,其主要的优势在于简洁的 Docker 包装、全面的直播源管理和易用的可视化后台。

应用场景与落地建议

该系统适用于多种 IPTV 直播源管理场景,包括但不限于体育赛事直播、节目更新、用户订阅管理等。在生产环境中使用时请注意以下配置和维护建议:

  • 预先部署 Docker 环境,确保依赖项齐全。
  • 考虑定时任务进行自动的源抓取和更新。
  • 根据实际需求调节咪咕源抓取与外部源抓取的优先级,确保内容的新鲜度。
  • 配置订阅导出策略,确保用户能够便捷获得稳定的直播流。

综合评价

akiralereal/iptv 项目在 IPTV 直播源管理和分发方面展现出了不俗的能力,提供了一种简洁高效的技术解决方案。它减少了系统部署的时间和维护成本,通过优秀的数据处理能力确保了直播源的实时性和丰富性。

当然,该系统也存在一定的优化空间:

  • 考虑增加自动维护和更新内容的机制,进一步提升用户体验。
  • 在多用户场景下,加强权限管理和数据隔离,确保系统安全。
  • 支持更多的外部源数据格式与订阅导出方式,增强系统的实用性。

总体而言,akiralereal/iptv 是一个值得推荐的 IPTV 直播源管理与分发系统,对于需要快速搭建并维护其 IPTV 平台的开发者和团队来说是一个不二之选。

README

📺 iPTV

把分散的直播源,变成一套真正属于你的频道系统

自托管 · 模块化 · 可视化 · NAS 友好

GitHub Stars Docker Pulls License Sponsor

Telegram 公告频道 Telegram 用户交流群

🐳 Docker 部署教程 · 前往 Docker Hub →

推荐通过 Docker 在 NAS / 服务器上部署,镜像:akiralereal/iptv:latest

当前版本:v4.62.0 · 产品预览 · 频道覆盖 · 内容来源 · 功能说明 · 更新日志

iPTV 是一个面向家庭影音与 NAS 用户的模块化 IPTV 直播源管理与分发系统。它内置央视频、咪咕、B站、抖音、虎牙、斗鱼及多地区广电等抓取模块,也能接入需要网页解析的内置源、维护者筛选的公开独立源、自定义直连地址和 M3U/TXT 订阅;所有来源统一完成聚合、去重、编排,再输出干净的播放列表与 EPG 节目单。

项目更新和社区公告请订阅 Telegram 公告频道(@iFansClub);使用问题、反馈和心得交流,欢迎加入 Telegram 用户交流群(@iFansClubChat)。Bug 反馈和功能建议也可以提交 GitHub Issue。

Important 重要

本项目是自托管的软件工具。除项目自制的使用公告短片外,不托管第三方音视频节目;仓库及运行时可能整理互联网上公开可访问的播放地址与频道元数据,但“公开可访问”不代表内容属于公有领域,也不代表已获得复制、转播或商业使用授权。请仅在获得合法授权的范围内使用;如你是权利人并认为相关条目侵权,请按版权与侵权处理提交下架通知。

🖼️ 产品预览

网页播放实况 · 在管理台直接预览频道

管理台内置播放器预览 Love Nature 4K 频道

我的频道 · 所有频道一处编排

我的频道:频道分组、央视频频道列表与订阅地址

源管理 · 每个内容来源独立、透明、可控

源管理:内置抓取模块分类、按地区展开的免账号模块、启用状态与频道数量

✨ 为什么选择 iPTV

📺 开箱即用 🧩 模块化源管理 🪄 可视化编排
默认聚合 1000+ 频道(含动态赛事),其中央视频模块提供 63 个公开高清频道及 10 个本人账号可访问的会员频道,另有 B站、抖音、虎牙、斗鱼直播抓取和经筛选的公开独立源 央视频、咪咕、B站、抖音、虎牙、斗鱼及各广电抓取模块都有独立开关、配置和健康状态,按需启用,互不干扰 分组、排序、重命名、隐藏与批量管理,都在浏览器中完成
🔗 自由接入 📡 稳定分发 👨‍👩‍👧‍👦 多端共享
支持 M3U8 直链、网页自动提取,以及 M3U/M3U8/TXT 订阅批量导入 自动生成 M3U、TXT 与 EPG;提供兼容版、全代理版应对特殊播放器 多配置档与用户令牌,让每台电视、每位用户拥有自己的频道组合
Tip 提示

默认配置即可使用免费频道;需要更高画质时,再到「源管理」为对应平台配置你本人合法持有的账号。凭据只保存在自己的部署中。

📡 频道覆盖

默认部署目前可聚合 1000+ 频道(含每天变动的动态赛事),并会随着平台模块、赛事内容和精选频道持续扩展。实际数量会因平台接口状态、地区网络和启用的模块而动态变化。

范围 当前覆盖内容
央视频直播 63 个免登录公开频道 + 10 个本人账号可访问的会员频道;公开台覆盖央视全套、CGTN 多语种和全国主要省级卫视,统一归入「央视频」分组
iPanda 直播 22 路免登录公开直播:成都与都江堰 2 个 24 小时总频道、18 个熊猫固定机位,以及江苏大丰麋鹿、云南白马雪山 2 路珍稀动物直播,统一归入「iPanda」分组
央视与卫视 CCTV 系列、CGTN、全国主要卫视频道
地方频道 北京、天津、重庆、四川(含成都及区县、绵阳、泸州、遂宁、内江、达州、巴中、甘孜、阿坝、广元、宜宾、凉山、雅安、乐山、眉山、资阳)、贵州、安徽、广东(含广州、深圳、梅州)、广西、福建(含泉州、晋江、石狮、德化、莆田、宁德)、江西、甘肃、青海(含西宁、格尔木、海东)、新疆、西藏、云南、吉林、黑龙江、内蒙古、宁夏、海南、河北、山西、陕西、湖北、辽宁(含沈阳、大连)、浙江(含杭州、宁波、嘉兴、台州天台、绍兴、东阳、衢江、江山)、江苏(含南京、苏州、无锡、扬州、南通、盐城)、山东(含青岛;16 个地市的区县台按地市分组,默认关闭)、河南、上海、湖南等省市卫视与地面频道,以及广电云平台上 20 个省区市的市县台(只显示正在推流的),并持续接入更多地区
景观直播 央视网「直播中国」当前在线信号,以及吉林风景、美丽河北、Live 南京、青岛城市直播、上海慢直播等景观频道,以及市县台模块里许昌、桐庐、乌镇、宣恩等地的 97 路慢直播;数量随平台在线状态动态变化
体育赛事 体育频道、赛事直播,以及昨天 / 今天 / 明天的动态赛事频道;手动开启 WebSports 模块后另有「赛事直播」分组;广东体育官方公开赛事按“广东体育 · 赛事名称”显示在「广东」分组并同时出现在「体育」分组,数量随开播与结束变化
自选 YouTube 直播 在「源管理 → 内置抓取模块 → 网络直播平台 → YouTube 直播」输入用户名、频道 ID、频道或视频分享链接,自动关注所属频道。订阅同一份 M3U 即可观看,频道未开播时仍保留在列表里
亚太与国际 精选列表提供 15 个经实验台验证的固定直连频道;独立模块另提供 YTN、NHK World 两个需要动态解析的公开频道,以及香港卫视、澳门莲花卫视两路官网直播;另有「海外频道」模块的 33 个海外免费频道、「澳门」模块的澳广视自办 6 套电视,默认关闭,需要时在后台打开
百视通 默认关闭,需手动开启;64 路可选,开启后默认只加入多彩文体4K、都市剧场、动漫秀场、乐游、法治天地、东方财经、生活时尚七路,单独归入「百视通」;其他频道按需勾选。百视通按地区下发频道,有的地区拿不到其中几路,会自动跳过。多彩文体4K 本次实际流为 1080p
综合内容 影视、文旅、教育、少儿、娱乐时尚等分类频道

播放列表首位默认提供项目自有的「公告」分组,内含三条自制短片:“欢迎使用 iPTV for iFansClub.com”展示使用方式、版权提醒和侵权联系说明;“央视频会员频道登录教程”演示 Docker / NAS 用户如何从浏览器复制 Cookie 把央视频登录态导入 iPTV;“「来源于网络」频道添加教程”演示如何在后台「🌐 源管理 → 👤 自定义源」用「🌏 添加「来源于网络」列表」卡片一键订阅仓库 from-the-web/from-the-web.m3u 里的网络第三方源。三者都不引用任何第三方节目素材。不想在电视上显示可以在后台「我的频道」逐条隐藏(随时可在「已隐藏」里恢复);只要显示,该分组就固定在第一位,不支持删除、移动、排序或重命名。

🧩 内容来源与抓取能力

iPTV 的重点不只是一份静态频道表,而是一套可独立开关、可观察状态、可持续刷新的内容接入体系。不同来源采用不同刷新、鉴权与代理策略,平台临时不可达时可在源管理中查看状态或关闭对应模块。

来源类型 已支持的典型内容 工作方式
央视频直播 63 个公开频道 + 10 个需登录/VIP 的频道 公开频道继续匿名动态取票、自动切换备用 CDN;会员频道复用部署者本人在央视频站点的持久登录态,由网页播放器签发并解扰成本机 H.264/AAC fMP4 HLS,解决普通播放器直接拿会员流时“有声无画”。桌面本机可从源管理自动打开登录窗口;Docker / NAS 等没有桌面的部署从自己电脑浏览器的开发者工具里复制整段 Cookie 导入(会话 cookie 是 HttpOnly,书签工具拿不到),服务端之后自动续期
iPanda 直播 成都、都江堰共 20 路熊猫直播,以及江苏大丰麋鹿、云南白马雪山 2 路珍稀动物直播 无需登录、无需配置;18 路固定机位使用支持网页直连的上游 CDN,2 个总频道和 2 路珍稀动物直播在播放时检查公开状态并自动切换上游 CDN,清单与媒体由本机安全代理。最高均为真实 720p,即平台所称“超清”
YouTube 直播 用户自选频道 默认关闭,初始订阅列表为空。可输入用户名(可省略 @)、频道 ID、频道主页、直播或视频分享链接;所有链接都转换为关注所属频道,同一频道自动去重。支持 watch?v=、youtu.be、/live/、/shorts/、嵌入链接、手机端和旧版频道地址。「查看场次」列出该频道正在直播和已预约的节目,播放时选择官方列表中的首场在播节目。服务端默认输出最高 HLS 视频档,可设画质上限,保留配套音轨和字幕;带宽不足时可能需要缓冲。旧版保存的固定场次继续保留,结束后可手动移除。服务端需能访问 YouTube 和 Google Video,大陆部署在「设置 → 系统配置 → 网络代理」填代理地址即可,播放设备不用设代理
平台直播抓取 B站、抖音、虎牙、斗鱼 可按分类自动收录当前直播间,也可手动指定房间;播放时处理短效地址、画质选择和平台要求的请求头。B站支持扫码登录以使用本人账号可访问的画质,抖音、虎牙、斗鱼支持匿名公开直播。抖音默认从「聊天」「生活」两个分类轮选 20 个、FLV 播放,分类和数量可在源管理里改,也可切换为公开网页「全部」页原始顺序(首批约 15 个)或 HLS;频道归入「抖音」,排在「B站」之后。虎牙和斗鱼可在「源管理 → 对应平台 → 选择分类」勾选「一起看」,按当前分区、已核验房号和节目标题筛选影视正片,仍按所设最低人气和每类数量导出。抖音的「分类轮选」可单独勾选「影视(一起看)」「音乐轮播」「综艺轮播」「动画轮播」。后三类每轮检查候选房间和对应公开分区首页,按当前节目筛选;新发现的房间需核对平台认证。下播、改播或无符合场次时,该类可以是 0 路
百视通 福建百视通官方目录中的 64 路已验证频道;默认选择七路现有来源未覆盖的专业台 模块默认关闭,在「源管理 → 百视通」手动开启并选频道;官方目录按地区下发,这台服务器拿到的目录里没有的频道自动跳过;每次刷新清单都复查当前播放地址,短效地址到期或提前失效时重新获取;默认只转发清单,视频分片直连官方 CDN;可选 IPv6 视频转发,也支持全代理订阅。官方台标随目录同步,默认七路中的五路接入官方今明节目单;地区、运营商与平台策略仍可能影响可用性
WebSports 赛事 第三方赛事网站的足球、篮球等比赛,每场一个频道,归入 赛事直播 模块默认关闭,在「源管理 → 网络直播平台」手动开启;播放时同时查各条线路,选分辨率最高的,视频由播放器直连。入口页只放行大陆和香港网络,未开赛或已结束的场次播不了
电视与赛事平台 咪咕、体育赛事 自动整理频道与节目单,并按账号权限、设备兼容性和平台接口状态选择可用画质;需要登录的能力仅使用部署者本人提供的凭据
广东体育官方赛事 官方「广东体育频道plus」「广东体育频道」当前公开在播的赛事,归入 广东,同时出现在 体育(赛事名带少儿、卡通、动漫的改放「少儿」,带教育、科教的改放「教育」) 无需登录、无需配置;从广东体育官方 H5 动态发现赛事,播放时复核官方状态并读取 HLS;本机只中继清单,视频分片由播放器直连官方 CDN(不看来源头、不带签名),也可用 ?relay=2 全代理。每场赛事独立标识,开播加入、结束移除;源管理有独立开关。广东体育电视频道仍由荔枝网模块提供
凤凰卫视 凤凰资讯、凤凰中文、凤凰香港,归入 香港 仅三个电视直播频道;游客 480p,登录普通凤凰秀账号可获取 720p / 25 帧,无需付费会员。后台支持导入 Token / Cookie 并持久保存,播放时取新签名,原始 HTTP-FLV 由本机转发。自己订阅的列表里有同名凤凰条目时,与本模块三台并列作备用线路,不合并、不顶替;播放器按名聚合时本模块源排在前面
香港卫视 香港卫视一路电视直播,归入 香港 无需登录、无需配置;播放时先问源站当前在播的是哪一路,再换这一路的 HLS 入口。服务端把入口清单拍平成媒体清单后只中继清单,媒体分片由播放器直连上游 CDN。实测为 1280×720、H.264/AAC;节目单取自官网节目单接口(今明两天)
澳门(澳广视) 澳广视自办的 6 套电视:澳视澳门、澳视葡文、澳门体育、澳门资讯、澳门综艺、澳门-Macau,归入 澳门 无需登录;播放时查询官网 CDN 路由(缓存五分钟)。在「系统配置 → 网络代理」配置代理后,官网取址、节目单、清单和媒体均由服务器代理,播放设备无需另设代理;没有生效代理时仍由播放器直连,服务端和播放设备都需能访问官方服务。默认关闭,需要时在后台打开;台标与节目单取自官网
澳门莲花卫视 澳门莲花卫视一路电视直播,归入 澳门 无需登录、无需配置;播放时从官网直播页的播放器配置读出当前带签名的 HLS 入口,入口在本机缓存五分钟、签名失效立即重读官网,每次播放都检查实时清单。服务端只中继清单,带独立签名的媒体分片由播放器直连上游 CDN,需要时也可用 ?relay=2 全代理;台标与节目单取自官网
北京广播电视台 北京卫视、BRTV 文艺 / 纪实科教 / 影视 / 财经 / 体育休闲 / i生活 / 新闻、卡酷少儿,以及北京时间当前公开活动或慢直播 公开直播免登录并自动排除失效项目;9 个电视频道需在后台导入本人北京时间 Cookie。凭据仅用于取流接口,不写入订阅、不发送到媒体 CDN;清单和分片由本机补齐防盗链请求头并代理
重庆广电 源站当前公开的 CQTV新闻 无需登录、无需配置;频道表自动同步,播放时匿名换取短效 HLS,清单、AES 密钥和媒体分片由本机全代理
四川广电 四川卫视、新闻、经济、文化旅游、影视文艺、妇女儿童、四川乡村、康巴卫视、四川卫视 4K 超高清 SDR,以及源站当前公开活动直播 活动直播有则显示、无则隐藏且无需登录;9 个固定电视台需使用部署者本人的四川源站登录态。后台提供书签工具读取源站 Token,服务端播放时动态换取短效地址,清单、密钥和媒体分片均补齐源站防盗链请求头并全代理
成都广电 成都新闻综合、经济资讯、都市生活、影视文艺、公共、少儿、蓉城先锋及 20 路区县电视,共 27 路,归入 四川 无需登录、无需配置;播放时从看度官方 App 接口获取签名地址,主频道优先高清,默认 302 跳转、播放器直连,不转码、不常驻浏览器。龙泉旧源不可用,暂不收录。新闻综合、公共带今明两天的央视网官方节目单,其余暂无;24 路使用官网新版图床的频道台标,3 路由内置台标包补齐(含资料库出处),不提供回看
四川市州 成都以外 18 个市州、25 路官方电视频道,归入 四川 无需登录、无需配置;播放时解析各台官网及官方 App 公开入口,动态续签并复用合法 CDN 会话。遂宁、达州、凉山、资阳七路全代理,其余十八路中继清单、分片直连;台标均有内置备份,凉山两套及攀枝花新闻综合带今明官方节目单,其余暂无 EPG,均不提供回看。详见 四川市州模块
江西广电 江西卫视、都市、经济生活、公共农业、少儿、新闻、移动电视、陶瓷共 8 路 无需登录、无需配置;源站当前公开的是单档 720p,服务端按源站公开算法获取匿名短效 token,并在播放器每次轮询时重新拉取滚动清单;清单、密钥和媒体分片均补齐防盗链请求头并全代理
贵州广电 贵州卫视、公共、影视文艺、大众生活、生态乡村、科教健康、经济、移动电视共 8 路 无需登录、无需配置;播放时从源站公开 API 获取当前短效签名地址,播放器每次轮询重新拉取只有三个 3 秒分片的滚动清单,清单和媒体全代理;家有购物明确不纳入频道表
甘肃广电 甘肃卫视、文化影视、移动电视、少儿、科教、公共应急共 6 路 无需登录、无需配置;播放时从源站公开接口动态获取当前入口,每次轮询重新拉取滚动清单并中继给播放器,视频分片由播放器直连上游 CDN;入口轮换或接口短时抖动会自动重试和兜底
黑龙江广电 黑龙江卫视、都市、新闻法治、文体、少儿、影视、农业科教共 7 路 无需登录;极光新闻 App 官方入口,默认由服务器直连官方 4430 端口并转发清单、分片,播放器只连接本项目。遇到 fake-IP、私网地址或 DNS 失败时,通过公共 DNS 查询真实地址,保留官方域名及 HTTPS 证书校验,不写死 IP。源管理可切回「播放器直连」,切换后刷新频道及播放器订阅。服务器转发占用其媒体带宽,可用性取决于服务器网络。2026-11-05 实测卫视 1920×1080,其余六路 1280×720,均为 H.264 / AAC、25 帧
云南广电 云视网云南卫视、都市、康旅、澜湄国际,以及七彩云端临沧、怒江、昭通共 7 路,统一归入 云南 无需登录、无需配置;省级四路由官网接口按「当前这档节目」签发 DVR 窗口地址,签名按路径签、无法预取,播放时重新换取,节目换档后下一次解析自然接上(分片序号连续,实测跨档不断流);地方三路按七彩云端目录取当前在线机位。两家回源要求不同,省级必须带官网来源头、地方不需要,清单与分片均由本机全代理。省级实测 1280×720 / 25 帧,地方分别为 720p25、1080p50 与 720×416
山西广电 山西卫视、黄河电视台、经济与科技、影视、社会与法治、文体生活 6 路省级频道,以及太原、朔州、忻州、阳泉、吕梁、晋中、长治、晋城、临汾、运城 10 路地市频道,共 16 路,统一归入 山西 无需登录、无需配置;省级频道的播放路径按官网播放器算法由「频道码 + 当天日期」算出,只认当天、零点即换,播放时按上海时区重算;地市频道播放前向官网签名接口换取短效地址。两家 CDN 都不校验来源与播放器标识,本机只中继清单,媒体分片由播放器直连官方 CDN,也可用全代理订阅。实测 16 路均为 1280×720、H.264 / AAC-LC,25 帧;节目单取自官网逐台节目单接口(今明两天),省级 6 路与太原、晋中、临汾有,另外 7 个地市台官方为空
陕西广电 陕西卫视、新闻资讯、都市青春、银龄、秦腔、体育休闲、农林卫视、移动电视共 8 路,统一归入 陕西 无需登录、无需配置;播放时现解官网看电视页下发的加密频道目录取当前地址——地址不带签名,但官网会整批换名、旧名立即失效,所以不写进播放列表;CDN 不校验来源与播放器标识,本机只中继清单,媒体分片由播放器直连官方 CDN(仅 HTTP),也可用全代理订阅。实测 8 路均为 720×404、H.264 / AAC-LC,25 帧(官网只有这一档);8 路都有官网当天节目单
西藏广电 西藏卫视、藏语卫视、影视文化共 3 路,统一归入 西藏 无需登录、无需配置;播放时从「珠峰云」App 的频道接口取当前带签名的 HLS 地址(签名只验清单,签发一小时后仍有效),频道表五分钟复用一次,清单被拒时立即重取。CDN 不校验来源与播放器标识、分片不带签名,本机只中继清单,媒体分片由播放器直连官方 CDN,也可用全代理订阅。实测 3 路均为 1920×1080、H.264 / AAC-LC,25 帧;官方没有节目单,西藏卫视与央视频同名,开着央视频时共用其节目单
天津广电 天津卫视、天津新闻、天津文艺、天津影视、天津都市、天津体育、天津教育 7 路,统一归入 天津 无需登录、无需配置;按津云 App 的 WiseTV 协议在播放时签发短效地址(App 内置应用参数,可用环境变量覆盖),签发接口每次在腾讯、网宿、百度三家 CDN 间轮换。网宿的播放会话绑定取清单那一方的播放器标识,播放器直连分片会被拒,所以清单与分片都经本机全代理;播放中直接轮询官方媒体清单,跨过 10 分钟的签名有效期也不断流、不换 CDN。台标用津云 App 的频道图标。实测 7 路均为 1280×720、H.264 High / AAC-LC,25 帧;节目单取自津云官方接口(今天、明天)
青海广电 青海卫视、青海经济生活、青海都市、安多卫视、格尔木新闻综合、海东综合频道共 6 路,归入 青海 无需登录、无需配置;四路省台取自长云网和青海藏语台官网,播放时换签、只中继清单,分片由播放器直连;格尔木与海东取自官方 App,每天更新官方长效签名地址,清单与分片均由播放器直连,无需额外请求头。两路同时保留在精选 IPTV.m3u,模块启用时自动去重。实测六路均为 1920×1080、H.264 / AAC,25 帧;省台官网、接口与 CDN 仅大陆可访问,新增两路未做海外测试。青海卫视节目单取自央视网,其余没有可用的官方节目单
宁夏广电 宁夏卫视、宁夏公共、宁夏文旅共 3 路,归入 宁夏 无需登录、无需配置;黄河云公开的官方直播入口,地址固定、不带签名,上游不校验来源也不挑播放器标识,播放器直连官方 CDN,本机不转发媒体;节目单取自黄河云官方接口(只有当天)
嘉兴广电 嘉兴新闻综合、文化影视、公共频道共 3 路,归入 浙江 无需登录、无需配置;频道入口来自嘉兴在线「看电视」页,播放时按频道向趣看的公开播放接口换取签名 HLS,本机只中继实时清单,媒体分片由播放器直连上游 CDN,清单与分片都限定在该频道的官方域名和路径;也可用 ?relay=2 全代理
台州(天台和合) 天台县和合频道 1 路,归入 浙江 无需登录、无需配置;入口来自和合天台 App,播放时向趣看公开接口获取签名 HLS,本机中继实时清单,视频分片直连官方 CDN,也可用 ?relay=2 全代理;实测 1080p;台标取自官方频道卡正中的风车标,由内置台标库提供,暂无可用官方节目单
绍兴广电 绍兴新闻综合、绍兴公共、绍兴文化影视共 3 路,归入 浙江 无需登录、无需配置;来自绍兴网官方直播页,每次播放从官方频道及播控接口自动发现地址;域名、路径、签名或 CDN 跳转变化时重新验证实时 HLS 和 TS 分片,详情旧源失效时从官网目录重新识别频道,本机中继清单、分片直连官方 CDN,也可用 ?relay=2 全代理;三路均为 720p,带各自官方台标和今明两天的官方节目单。保留官网实际下发的 HTTP(S) 地址,不关闭 TLS 校验;加密、分段 MP4 或独立音轨等媒体结构变化会明确提示需要适配
浙江地方台 东阳新闻综合、衢江综合、江山电视一套共 3 路,归入 浙江 无需登录、无需配置;从各台官方趣看托管播放器取流,每次播放核对频道身份、发布状态和当前播控后取得新签名;清单与视频分片由部署机器转发。东阳 720p,衢江、江山 1080p,均为 H.264/AAC;内置台标备份,官方节目表目前为占位或空表
杭州广电 杭州综合、西湖明珠、杭州生活、杭州影视、杭州青少体育共 5 路,归入 浙江 无需登录、无需配置;播放时向葫芦网(杭州文广集团官网)的频道接口取 2 小时有效的签名地址,本机缓存到过期前半小时,签名被拒时立即重签。官方 CDN 的清单和分片都只认官网来源头,所以清单与分片由本机带来源头全代理;只放行该频道在官方 CDN 上的路径。台标取自官方频道接口。实测 5 路均为 1280×720、H.264 / AAC-LC,25 帧;官网节目表只有整点「精彩节目」占位,暂无节目单;频道接口只对大陆网络开放,部署在大陆以外(含香港)时取不到
宁波广电 宁波新闻综合、经济生活、都市文体、影视剧共 4 路,归入 浙江 无需登录、无需配置;按宁波广电网直播页播放器的流程(直播页 → 播放器配置 → 频道资料 → 官方签名接口)取 1 小时有效的签名地址,频道资料缓存 6 小时、签名缓存到过期前 15 分钟,签名被拒时立即重签。CDN 不看来源头,本机只中继清单,媒体分片由播放器直连官方 CDN;也可用 ?relay=2 全代理(后台网页播放时自动走全代理)。实测 4 路均为 1280×720、H.264 / AAC-LC,25 帧;官网节目单是每周的图片,暂无节目单;签名接口只对大陆网络开放,部署在大陆以外(含香港)时取不到
梅州广电 梅州客家生活 1 路,归入 广东 无需登录、无需配置;梅州市广播电视台自有域名下的公开 HLS,地址固定、不带签名,播放器直连上游 CDN,本机不转发媒体
泉州广电 泉州新闻综合、泉州闽南语共 2 路,归入 福建 无需登录、无需配置;播放时向官网公开接口换取短期签名 HLS,两个签名接口都触发人机验证时改从官网另一个域名的播放页取地址;上游 CDN 拒绝部分播放器标识,清单与分片由本机以浏览器标识全代理;节目单取自官网播放页
晋江、石狮 晋江电视台、石狮新闻综合共 2 路,归入 福建 无需登录、无需配置;晋江市、石狮市融媒体中心官网直播用的 HLS,地址固定、不带签名,播放器直连官方 CDN;石狮节目单取自官网直播页,晋江官方目前只有占位
山东市县 闪电新闻融媒平台上山东 16 个地市的区县融媒体中心与部分市台,共 224 路(如长清、章丘、东营、潍坊、寿光、曲阜、泰山、威海),按地市分成「山东-济南」…「山东-菏泽」16 个分组,排在「山东」后面;默认关闭,在「源管理」打开,不需要的地市整组隐藏即可 无需登录、无需配置;每两小时向官方接口查一次各台状态,只显示主清单取得到的台,停推的台暂不出现、恢复后自动回来;播放时跳转到官方当前地址,播放器直连官方 CDN,本机不转发清单和分片(?relay=1 兼容模式下清单由本机取,要求部署机与播放器同一出口);台标用官方接口给的频道或电视台台标;节目单取自官方接口(目前只有崂山频道排了当天的),不提供回看
市县台 广电云平台托管的 20 个省区市、126 路市县级电视台(如大庆、黄石、柳州、孝感、慈溪、贵阳、阿克苏、义乌)按省归入对应分组,另有 97 路各地慢直播放在「慢直播」分组,只显示正在推流的;按省拆成 20 个模块「市县台·山东」…,默认关闭,在源管理对应省面板里打开 无需登录、无需配置;每小时查一次各台推流状态,停推的台暂不出现、恢复后自动回来。播放时在官方平台挂一个在线会话取地址(两条 WebSocket 保活,没人看一分半后自动断开),清单经本机中继、分片直连官方 CDN;28 路电视台带官方节目单,不提供回看
莆田广电 莆田新闻综合、莆田文旅生活、仙游电视台共 3 路,归入 福建 无需登录、无需配置;频道入口来自「莆田TV」App 与官网共用的频道接口,播放时取签名 HLS(约 2 小时 45 分有效,本机缓存到过期前半小时),本机只中继实时清单,媒体分片由播放器直连官方 CDN,清单与分片都限定在该频道的官方路径;节目单取自莆田TV 官方接口(一套、二套,仙游官方只有占位);也可用 ?relay=2 全代理
宁德广电 宁德新闻综合、宁德文化旅游共 2 路,归入 福建 无需登录、无需配置;每轮刷新向宁德台官方直播接口要一次 HLS 地址,地址固定、不带签名,播放器直连官方 CDN;2026-10 复测海外也能播;官方节目单只有占位,暂无节目单
无锡广电 无锡新闻综合、娱乐、都市资讯、生活、经济共 5 路,归入 江苏 无需登录、无需配置;频道入口来自无锡博报 App 的直播分享页,播放时取签名 HLS(约 2 小时有效,本机缓存到过期前半小时),本机只中继实时清单,媒体分片由播放器直连官方 CDN,清单与分片都限定在该频道的官方路径;节目单取自无锡博报官方接口;分享页只对大陆和香港开放,部署在其他海外地区时取不到;也可用 ?relay=2 全代理
盐城广电 盐城电视一套、盐城电视二套共 2 路,归入 江苏 无需登录、无需配置;直接使用盐城网官方电视直播页的频道与节目接口,每次播放获取当前签名地址;本机代理清单与分片并保留官网请求头,两套均为 720p,带官方台标与今明两天节目单,无回看
南通广电 南通新闻综合、南通社教、南通公共共 3 路,归入 江苏 无需登录、无需配置;从江海明珠网官方目录获取频道与台标,播放时核对当前节目和播出垫片,清单与分片由本机代理,不转码。电视剧、动画、录播及其他未开放时段提示不可播,频道仍保留;三套接入官方当天节目单,共用官网“南通 NEWS”台标并提供内置备份,无回看
扬州广电 扬州新闻、扬州民生,以及江都、邗江两个区台共 4 路,归入 江苏 无需登录、无需配置;扬州发布 App 直播用的 HLS,地址固定、不校验签名,播放器直连官方 CDN;节目单取自扬州发布官方接口
青岛广电 青岛新闻综合、生活服务、影视、都市、教育共 5 路(QTV-1 到 QTV-5),归入 山东 无需登录、无需配置;官网直播页的固定地址,分片带官网播放器自用的加密封装,普通播放器直连播不了,播放时由本机代理边下边解、整段转发(与广西同一做法),能不能看取决于部署机器的网络;节目单取自官网播放页接口(只有当天);台标用官网台标并收进内置库;五四广场等城市景观在「青岛景观」模块
安徽广电 安徽卫视、经济生活、影视、公共、农业科教、综艺体育、国际频道共 7 路 无需登录、无需配置;按「安徽视讯」App 看电视页面的流程,从栏目接口的 132 电视组件读取当前域名与流 ID,不再依赖被 WAF 拦截的逐频道详情接口;七路共享短期栏目缓存和 App 密钥,播放时生成两小时签名,旧源失败后重新取配置,频道引用不变。清单实时刷新,清单与分片全代理(旧 live 使用 Chrome,新 seclive 使用 ijkplayer)。seclive HTTPS 证书主机名不匹配时,仅对该域名兼容同域 HTTP,不关闭证书校验;运行无需模拟器
新疆广电 新疆卫视、维吾尔语新闻综合、哈萨克语新闻综合、汉语综艺、维吾尔语影视、体育健康、少儿共 7 路 无需登录、无需配置;播放时从丝路视听网当前 Nuxt 包静态解析当天公开签名配置,再调用源站接口签发约一小时有效的 HLS。服务端中继实时清单,媒体分片默认由播放器直连上游 CDN,也可用全代理订阅。某一路被源站重新标记禁播时只跳过那一路,其余照常
吉林广电 6 路省级频道、9 路地方台和 13 路慢直播,共 28 路 无需登录、无需配置;常规电视归入「吉林」,慢直播归入「吉林风景」。省级频道和季节性景观在播放时从源站加密接口获取短效 HLS,固定地方台和固定景观使用已验证的 HTTPS 入口;清单、密钥和媒体分片均由本机全代理
内蒙古广电 内蒙古卫视、蒙古语卫视等 8 路自治区频道,以及 12 路盟市频道,共 20 路 无需登录、无需配置;20 路全部归入唯一的「内蒙古」分组。播放时按奔腾融媒源站公开协议调用加密频道接口获取动态地址,并为清单、密钥和媒体分片补齐防盗链请求头后由本机全代理
亚洲与国际直播 6 个公开频道:YTN、NHK World、CNA、France 24 English / Français、World Poker Tour;另有 11 个固定直连频道位于精选列表的独立标记区块 YTN、NHK World 在播放时从平台接口获取当前 HLS,并由本机代理清单、密钥与媒体;CNA、France 24 English / Français、World Poker Tour 由本机转发一次主清单、把最高档挪到最前,视频由播放器直连官方 CDN,网速不够照常降档(France 24 官方只有 1080p、360p 两条单独的清单,模块拼成一份);NHK 主清单同样最高档在前。固定频道使用实验台验证过的原始 HLS 地址,不经过该解析模块,避免重复和额外转发开销
海外频道 42 个海外免费频道:体育 13(Sky Racing、FUEL TV、beIN Sports Xtra、FIFA+ 等)、娱乐时尚 12、文旅 7(含 NASA+、Gusto TV)、国际 9(NEWS1、France 24 Español、Thai PBS、Bloomberg TV 亚太 / 欧洲 / 美国、DW English、TRT World、Al Jazeera English)、韩国 1(Arirang),并入对应的现有分组、排在组尾 无需登录,默认关闭。在「系统配置 → 网络代理」配置代理后,清单和视频均经服务器转发;没有生效代理时由播放器直连官方 CDN。标记最高档前置的频道保留自动降档和音轨;代理模式取流失败不会退回播放器直连。频道表 IPTV-overseas.m3u 每六小时从仓库更新,拉不到时用内置版本;暂无节目单。升级后刷新播放器订阅,让旧直链替换为本机入口;原有隐藏、命名和排序继续有效
广电抓取 北京、天津、重庆、四川(含成都及区县、绵阳、泸州、遂宁、内江、达州、巴中、甘孜、阿坝、广元、宜宾、凉山、雅安、乐山、眉山、资阳)、贵州、安徽、辽宁、大连、广东、广西、福建、江西、甘肃、青海、新疆、西藏、云南、吉林、黑龙江、内蒙古、海南、河北、山西、陕西、湖北、河南、湖南、江苏、南京、青岛、山东、上海、深圳、浙江、杭州、宁波、嘉兴、台州天台、绍兴、东阳、衢江、江山、梅州、泉州、晋江、石狮、莆田、宁德、无锡、扬州、南通、盐城、宁夏等 从各广电源站、公开接口或客户端公开直播能力获取当前地址;短效签名、防盗链、加密清单和 CDN 代理按模块分别处理
景观直播 央视网「直播中国」、吉林风景、美丽河北、Live 南京、上海与青岛城市景观等 按源站当前在线状态动态收录;离线、下架或源站调整时会自动减少,不以固定频道数承诺可用性
内置网页抓取源 如纬来体育等需要从公开页面解析当前地址的单频道源 内置抓取规则与定时刷新;每个源可配多个入口地址,主站打不开或抓不到时自动换备用地址重试,清单本身通过远程配置更新(改仓库文件即生效,无需升级镜像)。每个源均可单独关闭
精选公开独立源 体育、国际、港台、文旅、宠物、娱乐时尚,以及苏州台、德化台等 项目维护的「精选频道」列表,收集公开可访问且经可用性检查的独立播放地址,并提供远程更新与本地快照兜底;可访问性检查不等同于版权授权审查
用户自有来源 M3U8 直链、网页提取、M3U/M3U8/TXT 订阅 完全由部署者自行添加、排序、分组和控制在哪些配置档中显示,适合接入自有设备、合法订阅或已获授权的直播源
Note 注意

所有内置抓取模块、内置网页抓取源和精选频道都能在「🌐 源管理」中独立关闭,也可用「批量开关」一次勾好要保留的抓取模块,并整体开关内置单频道源 / 精选频道;新部署需要完全空白的频道管理器时可使用 mblank=true。平台名称及商标仅用于说明兼容性,本项目不隶属于、也不代表上述平台或内容权利人。

抖音的「音乐轮播」已实播核验「粤语经典怀旧唱片」(房号 24225754530)。在「源管理 → 抖音直播」选择「在所选分类里轮选」,勾选「音乐轮播」,保存并刷新后可从 M3U 的「抖音」分组播放。2026-11-04 从导出的 HLS 条目播放 12 分钟,四首歌自动衔接,第三次切歌后曾因 CDN 超时跳过约 12 秒。默认 FLV 另测 60 秒,音画正常。同次复测中,综艺和动画均为 0 路。粤语经典怀旧唱片直播间

江门综合因官方直播 CDN 持续返回 502,于 2026-10-27 暂时移除。升级后不再出现在「广东」分组,旧配置与频道缓存会自动清理;解析模块与台标保留,供官方恢复后重新接入。

辽宁省台(卫视、都市、影视剧、体育休闲等)和沈阳新闻综合、经济、公共已重新接入,在「🌐 源管理 → 免账号模块 → 辽宁」里,默认开启。官方接口只放行部分网络:10 月曾只放行辽宁本地,2026-11-04 实测大陆各地都能播,香港和海外不行,官方也可能再收紧。能不能播取决于部署服务的机器所在的网络,部署在海外的可以在这里关掉;关掉后再打开,后台会先弹出这条提示。官方当前只给回看的频道这一轮先不列,转回直播后自动出现。旧版「北斗融媒」模块的配置和缓存在升级或导入旧备份时照旧清掉。大连新闻综合、生活、文体仍由独立「大连」模块提供,都归入「辽宁」分组。调查历史见 辽宁直播调查。

YouTube 直播订阅 在「网络直播平台」启用后,输入用户名、频道 ID、频道或视频链接,点「关注频道」。直播、预约、回放、普通视频和 Shorts 链接都用于识别发布频道;M3U 中保存的是频道,播放时查找它当前的直播。频道未开播时仍保留,同一频道的不同链接不会重复添加。旧版固定场次订阅继续保留。部署在大陆的,到「设置 → 系统配置 → 网络代理」填代理软件的 HTTP 或 SOCKS5 地址(如 http://192.168.1.10:7890),点「测试」确认能连上 YouTube;这个代理供 YouTube、澳门(澳广视)、海外频道和 Telegram 使用。澳门与海外频道有生效代理时,清单和视频均经服务器转发,播放设备不用另设代理;会使用服务器带宽及代理流量。没填时沿用 HTTPS_PROXY 或系统代理;其他模块不使用这里填写的代理。YouTube 改版后解析失败时,到模块里点「检查更新」可就地升级解析组件 yt-dlp,不用等新镜像(重建容器后以镜像自带版本为准)。更新中断、配套依赖缺失或版本不匹配时,模块会显示「修复依赖」;点击即可重试,验证完整后才提示成功。Docker 镜像包含解析依赖;源码运行可用 Python 3.10+ 执行 npm run setup:youtube(可通过 YOUTUBE_PYTHON 指定解释器),或用 YTDLP_BIN 指向已安装的 yt-dlp。

当前版本更新内容
v4.62.0 更新内容

本次为「新增网络代理设置、修复央视景观与黑龙江、广东台不再依赖浏览器」版本:后台新增「网络代理」,填一个代理地址就能让 YouTube、澳门、海外频道和 Telegram 推送走代理,不用改容器环境变量或开 TUN;修复 11 月 6 日起央视景观全部播不了、黑龙江省台在部分代理网络下播不了;广东台改用官网接口取地址,不再启动浏览器;YouTube 改为按频道关注,可以限制画质、在后台直接更新解析组件。拉取新镜像、重建容器后即生效(只重启容器不会换成新版本),现有配置无需改动;黑龙江省台和海外频道的地址换成了本机入口,升级后在播放器里刷新一次订阅才会用上;黑龙江七路默认改由服务器转发,会占用服务器带宽。

  • 新增「网络代理」设置:在「设置 → 系统配置 → 网络代理」填代理软件的地址(http://、https:// 或 socks5:// 开头,只写「IP:端口」按 http:// 处理),点「测试」可以看到能不能连上 YouTube、Telegram、澳门和海外频道,保存即生效,不用再改容器环境变量、网关或开 TUN。这个代理只给 YouTube 直播、澳门(澳广视)、海外频道和 Telegram 推送用,其他模块和推送渠道不走它,代理开了全局模式也不会把省台带到境外。留空时这几处沿用原来的 HTTPS_PROXY 环境变量(源码在 macOS 上运行时还会读系统代理);HTTPS_PROXY 现在也支持 socks5:// 地址。后台回显时密码打码。

  • 澳门(澳广视)和海外频道可以走代理:有生效的代理(上面这项设置,或 HTTPS_PROXY 环境变量)时,澳门六台的取址、节目单、清单和视频,以及海外频道 42 台的清单和视频,都改由服务器经代理转发,播放设备不用另设代理,但会占用服务器带宽和代理流量;海外频道经代理取不到时直接报错,不会退回播放器直连。没有代理时和以前一样由播放器直连。已经设了 HTTPS_PROXY 又打开了这两个模块的,升级后会自动改成服务器转发。海外频道的地址换成了本机入口,隐藏、改名、排序照旧生效,播放器里刷新一次订阅后才能走代理。代理只改网络路径,频道本身的地区和版权限制不变。

  • 修复央视景观全部播不了:11 月 6 日起央视给「直播中国」景观频道换了新的 CDN 域名,旧版本把新地址当成非官方地址丢掉,所有景观频道都报「VDN 没有返回可播放的官方 HLS」。现在放行新域名,实测恢复 1080p 播放。

  • 修复黑龙江省台在部分代理网络下播不了:七路默认改由服务器转发,播放器不再直接访问官方的 4430 端口,会占用服务器带宽。服务器的 DNS 返回 fake-IP、内网地址或解析失败时,自动改查公共 DNS 拿真实地址,证书照常校验。想沿用以前的方式,可以在源管理的黑龙江模块里把「播放方式」改成「播放器直连」。频道的隐藏、改名、分组和排序照旧生效;升级后在播放器里刷新一次订阅,才会换成新地址。卫视目前是 1080p,其余六路 720p。

  • 广东台改用官网接口取地址,不再启动浏览器:广东台 17 个频道以前要在后台常驻一个 Chromium 打开官网换播放地址,每个浏览器占 200~400MB 内存。现在直接调用官网接口取地址,不再启动浏览器,也不再和央视景观、湖北台争抢浏览器名额;地址照旧在到期前自动续签,频道和节目单不变。

  • YouTube 改为按频道关注:可以粘贴用户名、频道 ID、频道主页、直播、视频、Shorts、短链接或嵌入链接,手机版和旧版频道地址也认,都会识别成发布它的频道来关注,同一频道只加一次;播放时找这个频道当前在播的直播,没开播也能先关注。「查看场次」照旧列出正在直播和已预约的场次,但不再单独订阅某一场。以前单独订阅的场次继续保留,模块里会标出「直播中 / 已预约 / 已结束 / 已失效」,已结束或失效的可以一键移除。

  • YouTube 可以限制最高画质:模块里的「最高画质」可选 4K、1440p、1080p、720p、480p,只在不超过上限的档里取最高的一档,省服务器带宽和代理流量;默认仍是不限。保存后重新打开频道生效。

  • YouTube 解析组件可以在后台更新:模块里点「检查更新」会查 yt-dlp 有没有新版本,可以一键就地升级,YouTube 改版导致解析失败时不用等新镜像;更新中断或配套依赖不完整时会显示「修复依赖」,点一下重试,验证通过才提示成功。只升级本项目自己装的那份,用 YTDLP_BIN 指定的不动;重建容器后以镜像自带的版本为准。镜像自带的 yt-dlp 升到 2026.10.21。

  • YouTube 报错更好懂、续签更稳、重开更快:连不上 YouTube 时提示去「系统配置 → 网络代理」(已经配了就提示点「测试」);遇到人机验证或请求过多(429)时提示换代理节点。清单或分片返回 401、403、410 时自动重新解析,几个请求同时失效只重取一次,续上的仍是原来那场、原来的音轨和语言。关注的频道会记住当前在播的场次 10 分钟,重开同一个频道少等约 3 秒。

  • 源管理按「已启用」筛选时不再把地区面板全部展开:筛选条件会记在浏览器里,停在「已启用」时一进源管理,三十多个地区面板全部摊开,点标题也收不起来。现在筛选后只剩 3 个以内的面板才自动展开,自动展开的也能点标题收起。

  • 说明更新:README 的播放器适配表补充 Emby / Jellyfin(「电视直播」里添加 M3U 调谐器填 /interface.m3u,节目单添加 XMLTV 填 /playback.xml);宁夏模块说明注明部分地区或网络可能播不了,播不了可以自行关闭。

完整更新历史见 CHANGELOG.md

📑 目录


🚀 快速开始

推荐使用 Docker Compose。只需要一个配置文件和一条启动命令,几分钟即可拥有自己的 IPTV 服务。

Docker 镜像:akiralereal/iptv · 查看版本标签。下面使用 latest 标签;使用 NAS 图形化容器管理器时,也可直接搜索 akiralereal/iptv,按下方配置设置端口和数据目录。

1. 创建配置文件

创建 docker-compose.yml:

services:
  iptv:
    image: akiralereal/iptv:latest
    container_name: iptv
    init: true                    # 回收 Chromium 僵尸进程
    ports:
      - "1905:1905"
    environment:
      - mport=1905                # 容器监听端口,与 ports 对应
      # - mhost=                  # 可选:外部访问地址(如 http://192.168.1.100:1905)
      # - mpass=                  # 可选:访问密码,设置后访问 http://ip:port/密码/...
    volumes:
      - ./data:/iptv/data         # 数据持久化,不挂载则重建容器 / 升级镜像会丢配置
    restart: always

2. 启动服务

docker compose up -d

升级时执行:

docker compose pull && docker compose up -d

3. 打开管理后台

部署完即可访问:

用途 地址
M3U 播放列表 http://your-ip:1905/interface.m3u(推荐带 .m3u 后缀;裸 /m3u 内容相同)
TXT 播放列表 http://your-ip:1905/txt
EPG 节目单 http://your-ip:1905/playback.xml
管理后台 http://your-ip:1905/admin(设了密码则 http://your-ip:1905/密码/admin)

🧩 平台账号、画质等内容配置不用写进 compose:部署后进后台「🌐 源管理」在对应模块卡片里设置(支持扫码登录 / 书签工具),保存即时生效。备份 / 换机迁移用后台「设置 → 备份迁移」一键导出导入(logos/ 自定义台标需单独拷贝),或直接备份 ./data 目录。更多环境变量与玩法见配置与进阶。


🧭 功能全景

四个页面,完成从内容接入到播放分发的整个流程:

页面 能做什么
📺 我的频道 分组、隐藏、排序、重命名与批量管理;按名字搜索频道在哪个分组;按名字长期屏蔽频道、一次隐藏整批同前缀分组;查缺台标;建立多套配置档;复制标准版、兼容版或全代理版订阅地址
🌐 源管理 管理抓取模块、内置源与精选频道,可一键批量开关、只留需要的来源;添加网页提取、手动直链或订阅源;检测失效频道并调整多源优先级
⚙️ 设置 调整系统参数(含只给 YouTube 和 Telegram 推送用的网络代理)、频道别名、自动分组规则、EPG 聚合和用户令牌;登录失效、EPG 源失败等需要处理的提醒推送到企业微信(群机器人或自建应用)、飞书、钉钉、Telegram、Bark、自定义 Webhook,或照接口文档自己填请求模板接入 PushPlus、Server酱、WxPusher、ntfy、Gotify 等推送平台;导出或导入完整配置
ℹ️ 关于我们 查看当前版本并检查更新

修改源后 1-2 秒内自动重新生成播放列表;外部源配置存于数据目录 external-sources.json。

数据流一览

B站 / 抖音 / 虎牙 / 斗鱼 / 咪咕 ─┐
广电与景观抓取模块 ──────────────┤
iPanda 直播模块 ─────────────────┤
亚洲与国际直播模块 ──────────────┤
内置网页抓取源 ──────────────────┼─→ iPTV 聚合 / 去重 / 编排 ─→ M3U / TXT / EPG ─→ 电视 · 手机 · 电脑
精选公开独立源 ──────────────────┤
自定义直链与外部订阅 ────────────┘

📺 播放器适配

播放器 推荐订阅
DIYP / 百川影音 TXT 订阅:/txt
TiviMate / APTV / Kodi / OK 影视 标准 M3U:/interface.m3u
飞牛影视 标准 M3U:/interface.m3u,必须保留 .m3u 后缀
Emby / Jellyfin 「电视直播」添加 M3U 调谐器:/interface.m3u;节目单添加 XMLTV:/playback.xml
极空间极影视、部分老电视盒 兼容版:/interface.m3u?relay=1
使用兼容版仍无法播放的设备 全代理版:/interface.m3u?relay=2,兼容的频道会由服务器转发视频分片

三个版本的区别在于播放器取流时经过服务器的部分:

版本 播放清单 视频分片 服务器带宽
标准版 /interface.m3u 服务器 302 跳转到官方地址,播放器自己去取 播放器直连官方 CDN 几乎不占
兼容版 ?relay=1 服务器取好后直接发给播放器,给不跟随 302 跳转的播放器 播放器直连官方 CDN 很少
全代理版 ?relay=2 服务器转发 服务器转发 视频流量全部经过服务器
Note 注意

能使用标准版就无需切换;标准版链路最直接。播放器不跟随跳转时使用兼容版,只有兼容版仍失败时才使用全代理版。

部分内置模块会按平台要求自动为单个频道启用全代理,与所选订阅版本无关。例如央视景观的 CDN 会校验源站请求头,因此即使使用标准订阅,该分组的清单和视频分片也会自动经过 iPTV 服务端;其他可直连频道不受影响。


❓ 常见问题

服务部署在香港或海外,或者播放设备挂了代理,哪些频道能看?

模块的默认开关不看网络:大部分模块默认开着,「海外频道」「澳门」默认关着,需要的在后台「🌐 源管理 → 内置抓取模块」最下面的「海外」小节里打开;部署在海外时,用不了的模块也在这里关掉。

能不能播,要看取流时是谁去连官方:

  1. 服务端取流(换签、全代理、中继清单):看部署服务的机器(NAS / VPS)的网络。咪咕、安徽、重庆、贵州、泉州、山东、深圳、青海省台、新疆只对大陆开放;吉林、江苏、无锡对大陆和香港开放,部署在其他海外地区时用不了。其中服务端只换签或只中继清单的,视频还要播放设备能连上。
  2. 播放器直连(服务端只给地址):看播放设备(电视、盒子、手机)的网络。「海外频道」33 台都是这种,在大陆连得上但常卡顿,播放设备挂了代理就流畅;宁夏(只对大陆开放)也是这种。黑龙江默认由服务器转发,看服务器网络(此前大陆及香港可达);选择「播放器直连」时才看播放设备的网络。
  3. 两头都要:「澳门」播放前服务端要向官网查 CDN,视频再由播放器直连,部署的机器和播放设备都要能连到大陆以外。
  4. 央视和卫视在海外靠「央视频」:63 个公开频道里 58 个能播,CCTV5、5+、16 按体育版权不对海外开放。

各模块在海外的实测结果见 OVERSEAS.md。

iPanda 网页端可以选“超清”,为什么这里只有 720p?登录能解锁 1080p 吗?

iPanda 网页播放器的清晰度名称与实际分辨率依次是:流畅 640×360、标清 854×480、高清 1024×576、超清 1280×720。播放器把 1080p 另称为“蓝光”,但当前 22 路 HLS 均未提供该档;逐路检查最高档视频编码也都是实际 1280×720,不是清单虚标。

这些频道的匿名接口已经返回公开可播状态,页面没有启用 VIP 清晰度限制。登录不会为当前 iPanda 直播解锁 1080p;主项目检测到的最高档 720p 正好就是播放器菜单中的“超清”。两个 24 小时总频道提供上述四档,其余 20 路为单档 720p。

百视通遇到 403,怎样尝试 IPv6?

百视通默认关闭,需要时先在「源管理 → 百视通」手动开启,再到「播放网络」选择「IPv6 直连并转发视频」。需要 Docker 容器本身具备可用的 IPv6 出网;NAS 有 IPv6 地址不代表容器已能出网。视频由 NAS/服务器转发,因此播放器只有 IPv4 也能使用,服务器会承担视频带宽。此模式绕过应用中配置的代理,系统 VPN/TUN 仍可能接管流量。保存后点击模块「立即刷新」,再刷新播放器订阅。

选项旁提供使用提示,可用性仍取决于实际出口和上游响应,不能保证所有地区都可用。需要手动检查时,可在容器内运行 node scripts/probe-bestv-network.mjs ipv6;只具备 IPv4 的部署暂未找到通用的 403 修复。详见 百视通模块说明。

北京台为什么只看到慢直播?怎样启用 9 个电视频道?

北京时间的公开活动和慢直播不需要登录,会自动出现;北京卫视、BRTV 各地面频道与卡酷少儿需要本人站点登录态。进入「🌐 源管理 → 北京广播电视台」,按卡片里的入口打开站点并登录;在浏览器开发者工具的 Network(网络)里刷新页面,点开 getUserInfo 请求,在 Request Headers 中单击 Cookie 的值后按 ⌘C(Windows/Linux 按 Ctrl+C),粘贴回后台保存即可,不需要鼠标右键。也可以用 mBtimeCookie 环境变量配置。

模块会先验证 Cookie:有效时加入 9 个电视台,失效时只隐藏电视台并给出提示,免登录直播继续可用。凭据只发给北京时间账号 / 取流接口,不会写进订阅或发送给媒体 CDN。北京时间媒体要求源站防盗链请求头,因此该模块固定由服务端代理 HLS;本地 macOS 会自动沿用系统 HTTPS 代理,Docker / Linux 可按需设置标准 HTTPS_PROXY 环境变量。

凤凰卫视怎样开启 720p?需要付费会员吗?

进入「🌐 源管理 → 凤凰卫视」,导入本人凤凰秀账号的 App.user.token 后保存即可。支持粘贴 Token 值或包含它的完整 Cookie;模块内提供书签工具和获取步骤,也可用 mFengshowsToken 环境变量配置。保存后的凭证随主项目配置持久保留,重启无需重填;失效时重新获取。

2026-09-03 实测:游客三台均为 854×480;普通账号登录后三台均为 1280×720、25 fps、H.264,无需付费会员。接口档位叫 fhd,实际是 720p。

本模块只提供凤凰资讯、凤凰中文、凤凰香港三路直播,不接入回看、点播、活动直播或栏目目录。三台归入香港分组;其它来源(自己添加的外部订阅)提供的同名凤凰条目不会被顶掉,原样保留作备用线路;播放器按名聚合「源1 / 源2」时本模块源排在前面,即默认源。播放地址实时向上游获取,沿用地区调度,Token 不发送到媒体 CDN 或写入订阅。直播使用 HTTP-FLV,本机仅转发不转码;网页播放器已支持,外部播放器也需支持 HTTP-FLV。

后台有央视频、虎牙、斗鱼,LunaTV 却导入不到?

部分 LunaTV / MoonTV 版本只把 #EXTINF 紧接的下一行当播放地址,遇到中间的 #EXTVLCOPT:network-caching 缓冲提示会漏掉整个频道(issue #114)。本项目的 M3U 输出已省略仅含缓冲提示的选项块,也兼容升级前的频道缓存。运行包含此修复的版本后,在 LunaTV 管理后台刷新直播源即可,订阅地址无需更换;缓冲时长由播放器自行设置。

B 站直播已与虎牙、斗鱼一样改为播放时解析、由本机中继清单,不再依赖 #EXTVLCOPT 请求头。其它来自订阅的直连源若带 Referer / User-Agent,那是播放所需的请求头,仍会保留;若使用的 LunaTV 版本不能解析并传递这些选项,这类频道需要在客户端侧适配,不能靠删除请求头或切换 relay=1/2 修复。

某些播放器点开频道后只有声音、没有画面?

这通常是 H.265(HEVC)兼容性问题:部分平台的直播流默认使用 H.265,而播放器无法解码。进入「🌐 源管理」,打开对应模块的配置并取消「启用 H.265 原画」,保存后重新播放。通过环境变量部署时可设 menableH265=false;个别频道仍有问题时再设置 menableHDR=false。

频道和台标正常,但播放一直转圈?

播放器可能不跟随 302 跳转。进入「我的频道」,点击订阅地址旁的「🩹 兼容版」,将新地址重新添加到播放器即可。兼容版由服务器直出播放清单,视频仍由播放器直连 CDN,不占用服务器的视频转发带宽。

隐藏掉的频道过几天又自己冒出来了?

「隐藏」绑的是频道 ID,而 ID 是按播放地址算的——源换了地址,那条隐藏就失效了。带签名 / 有效期参数的地址(?expire=…&sign=…)已经不再影响 ID;换了路径或域名的仍会。想让某个台以后都别出现,用「我的频道」里频道旁的「屏蔽」按钮,或右上角「🚫 屏蔽规则」按名字配一条:规则只看名字,源换址、频道每天重建都照样生效,删掉规则即恢复。像「体育-昨天 / 今天 / 明天」这类每天重建的分组,逐条隐藏没有意义,对其中一个分组点「隐藏分组」时会提议把同前缀的一起隐藏,以后新出现的也自动挡掉。

README 内容过长,已截取前 64 KB。完整内容请前往 GitHub 仓库查看。

评论

暂无评论