IPTV 玩家的全能工具箱!扫描、验源、EPG、回看、播放一站搞定
作者: 网络志 发布日期: 2026年6月1日 15:57 来源: 原文链接
📺 前言
最近在 GitHub 上看到一个相当硬核的 IPTV 项目:
IPTV-Scanner-Editor-Pro
乍一看以为只是个 IPTV 扫源工具,结果仔细看完 README 才发现——这其实是一套集:
- ✅ IPTV 扫描
- ✅ 频道验源
- ✅ EPG 节目单
- ✅ 台标匹配
- ✅ IPTV 播放器
- ✅ 回看时移
- ✅ 多屏预览
- ✅ 频道管理
于一身的桌面客户端。
而且还是基于 PyQt6 + MPV + FFprobe 构建,功能堆得相当猛。
今天简单聊聊这个项目。
🚀 不只是播放器,更像 IPTV 工作站
很多 IPTV 工具都有一个共同问题:
- 播放器是播放器。
- 扫源工具是扫源工具。
- 频道编辑器是频道编辑器。
- EPG 又得单独配置。
结果就是:下载一堆软件来回切换。
而 IPTV-Scanner-Editor-Pro 的思路完全不同:
从扫描 → 整理 → 验证 → 播放 → 回看,全部放进一个程序里。
打开软件后就是典型三栏布局:
- 📺 左侧 EPG 节目单
- 🎬 中间视频播放区
- 📋 右侧频道列表
基本属于 IPTV 用户最舒服的布局之一。
🎥 内置 MPV 播放器
项目直接集成了 MPV。
对于经常折腾 IPTV 的朋友来说,应该知道:MPV 基本属于目前开源播放器里的”六边形战士”。
支持协议:
- ✅ HLS
- ✅ HTTP-FLV
- ✅ MPEG-TS
- ✅ RTSP
- ✅ UDP 组播
- ✅ RTP
项目还额外实现了:
- 全屏播放
- 倍速播放
- 音轨切换
- 字幕切换
- 画中画
- 截图
- 置顶窗口
- 多种画面比例
甚至还有:
⚡ FCC 快速换台
对于运营商 IPTV 用户来说应该不陌生,之前介绍 rtp2httpd 时详细介绍过:
FCC(Fast Channel Change) 能够在换台时主动向代理发送 JOIN / LEAVE 请求,减少 IGMP 组播加入延迟。
简单理解:换台更快,黑屏时间更短。
⏪ 回看与时移支持非常完整
很多播放器虽然写着支持回看,实际上只能支持最简单的一种格式。
而这个项目直接支持:
defaultappendshiftflussonicxtream / xc
等多种回看模式。
甚至支持时间变量自动替换:
${(b)yyyyMMddHHmmss}${(e)yyyyMMddHHmmss}
支持:
- Unix 时间戳
- 自定义时间格式
- 时区偏移
- catchup-correction
对于研究 IPTV 回看接口的朋友来说,这部分非常有参考价值。
📺 EPG 节目单系统很强
项目内置完整 EPG 支持。
支持格式:
- XMLTV
- JSON EPG
- GZIP 压缩 EPG
自动识别 M3U 属性:
x-tvg-url / tvg-url / epg-url
匹配逻辑也比较智能,优先级:
tvg-id → tvg-name → 频道名称模糊匹配
对于一些台名不规范的源,也有较高匹配成功率。
同时支持:
- 📅 历史节目
- 📅 当天节目
- 📅 未来节目
还能显示实时播放进度条,体验上已经接近一些商业 IPTV 客户端。
🖼️ 自动匹配频道 Logo
这是我觉得比较有意思的一部分。
项目内置 400+ 台标规则,覆盖:
- CCTV
- CGTN
- 卫视
- CETV
- CHC
- 咪咕
- 求索
等频道。
并且支持:
- 自动下载 tvg-logo
- 本地缓存
- DPI 高清显示
- 异步加载
甚至还有频道缩略图预览——直接在列表里看到频道画面,这一点做得挺细。
🔍 IPTV 扫描功能很实用
对于经常扫源的朋友来说,这个功能应该是重点。
支持协议:
- 单播
- 组播
- HTTP
- HTTPS
检测方式采用 FFprobe,获取:
- 分辨率
- 编码格式
- 码率
- 流状态
而不是简单判断 URL 是否返回 200,准确率高很多。
同时支持:
- ✅ 多线程扫描
- ✅ 超时设置
- ✅ User-Agent 设置
- ✅ 自动重试
- ✅ 增量扫描
✅ 批量验源
扫完源以后最怕什么?失效、卡顿、黑屏。
项目内置批量验证模块,利用 FFprobe 检测:
- 可用性
- 延迟
- 分辨率
- 视频编码
- 码率
并实时统计:有效频道 / 无效频道 / 超时频道,省去手动一个个测试。
🎯 频道整理功能很舒服
很多 IPTV 播放列表都长这样:
CCTV1HD / CCTV-1 综合HD / CCTV1 高清 / CCTV1 1080P
同一个频道能出现十几个名字。
项目提供自动清理频道名称,自动去除:
- HD
- FHD
- 4K
- 括号内容
- 多余空格
统一规范。
同时支持:
- 自动分类
- 正则分组
- 拼音排序
- 批量修改
整理大型播放列表会轻松很多。
🎨 主题党狂喜
相比很多”程序员审美”的 IPTV 工具,这个项目在 UI 上下了不少功夫。
支持 3 种颜色模式:自动 / 日间 / 暗黑
支持 7 种视觉风格:
- 拟态
- 扁平化
- 拟物
- 毛玻璃
- Win11
- Mac
- iOS
总共 21 种组合主题。
而且支持中英文一键切换:
- 🇨🇳 中文
- 🇺🇸 English
🏗️ 项目架构也值得学习
从源码结构看,作者并不是简单写个脚本,而是按照比较规范的软件工程方式开发。
包含分层设计:
- Controller — 控制层
- Service — 服务层
- Model — 模型层
- UI — 界面层
技术栈:
| 模块 | 技术 |
|---|---|
| 播放器 | libmpv |
| 扫描 | FFprobe |
| GUI | PyQt6 |
对于想学习 Python 桌面开发的朋友,这项目本身也是个不错的参考案例。
🚀 安装与使用
对于大多数用户来说,并不需要搭建 Python 环境。
作者已经在 Release 页面提供了:
IPTV.Scanner.Editor.Pro.exe
下载后即可直接运行。对于只是想扫描频道、验证直播源、整理 M3U 播放列表的朋友来说,基本属于开箱即用。
当然,如果你希望研究源码或者参与项目开发,也可以通过源码方式运行:
pip install -r requirements.txt
python pyqt_player.py
需要注意的是,源码运行模式下还需要额外准备:
- MPV(libmpv)
- FFmpeg(ffprobe)
并放置到项目对应目录。
普通用户推荐直接下载 Release 版本即可。
📌 总结
如果要用一句话概括:
IPTV-Scanner-Editor-Pro 已经不是传统意义上的”扫源工具”,它更像一个 IPTV 一站式管理中心。
功能覆盖:
- 📡 扫描频道
- ✅ 验证频道
- 📺 EPG 节目单
- 🎬 MPV 播放
- ⏪ 回看时移
- 🖼️ 台标管理
- 📋 播放列表编辑
基本全部覆盖。对于喜欢折腾 IPTV、组播源、M3U 播放列表的朋友来说,值得收藏研究。
⚠️ 特别提醒:本文仅介绍开源项目及相关技术实现原理,请遵守当地法律法规及版权规定,相关工具仅供学习、测试和技术研究用途,请勿用于传播或观看未经授权的内容。
END
扫码访问小程序中的本文
