Releases: Guovin/iptv-api
v1.7.3
2025/10/15
🚀 新功能
- 新增支持别名使用正则表达式(#1135)
- 新增支持配置台标库地址
logo_url,台标文件类型logo_type - 新增支持Docker使用环境变量修改
config.ini中的配置参数(#1204) - 新增频道结果统计日志
output/statistic.log,记录频道接口有效率、关键测速数据等信息(#1200) - 新增未匹配频道数据日志
output/nomatch.log,记录未匹配的频道名称与接口信息(#1200) - 新增测速结果日志
output/speed_test.log,记录所有参与测速接口数据(#1145)
🌟 优化
- 优化频道缓存结果解冻策略
- 更新纯真IP数据库
- 增加
吉林联通组播IP(#1107),更新贵州电信组播IP(@wangyi1573) - 更新默认订阅源,移除无效源(#1136,#1114)
- 更新频道别名数据
- 补充README配置文件路径说明,增加目录文件说明(#1204)
🐛 修复
- 修复Docker
APP_HOST环境变量不生效(#1094) - 修复EPG节目单无法显示(#1099)
- 修复配置订阅源白名单更新结果出现重复接口(#1113)
- 修复本地源不支持别名(#1147)
- 修复特定场景下频道结果缓存解冻失败
- 修复部分白名单接口未能成功保留至最终结果(#1158,#1133)
- 修复CCTV-4频道数据源问题(#1164)
English
🚀 New Features
- Added support for using regular expressions in aliases (#1135)
- Added support for configuring logo library address
logo_urland logo file typelogo_type - Added support for modifying configuration parameters in
config.inivia Docker environment variables (#1204) - Added channel result statistics log
output/statistic.log, recording channel interface validity rate and key speed
test data (#1200) - Added unmatched channel data log
output/nomatch.log, recording unmatched channel names and interface information (
#1200) - Added speed test result log
output/speed_test.log, recording all participating speed test interface data (#1145)
🌟 Optimization
- Optimize the strategy for unfreezing channel cache results
- Update the QQWry IP database
- Added
Jilin Unicommulticast IP (#1107), updatedGuizhou Telecommulticast IP (@wangyi1573) - Updated default subscription sources, removed invalid sources (#1136, #1114)
- Updated channel alias data
- Supplemented README with configuration file path instructions and added directory file descriptions (#1204)
🐛 Bug Fixes
- Fixed Docker
APP_HOSTenvironment variable not taking effect (#1094) - Fixed EPG program list not displaying (#1099)
- Fixed duplicate interfaces in subscription source whitelist update results (#1113)
- Fixed local sources not supporting aliases (#1147)
- Fixed channel result cache thaw failure in specific scenarios
- Fixed some whitelist interfaces not being successfully retained in the final result (#1158, #1133)
- Fixed CCTV-4 channel data source issue (#1164)
v1.7.2
2025/5/26
🚀 新功能
- 新增支持设置
定时更新间隔,命令行GUIDocker均可实现定时间隔更新,可通过配置update_interval设置执行更新任务时间的间隔,默认12小时,不作用于工作流,工作流依旧每日6点与18点执行更新
🌟 优化
- 更新频道别名数据,欢迎提供更多别名,参见:💖 频道别名收集计划
🐛 修复
🗑️ 移除
- 移除Docker
UPDATE_CRON环境变量,请使用config/config.ini文件中update_interval参数控制更新时间间隔
English
🚀 New Features
- Added support for setting
scheduled update interval. BothCLI,GUI, andDockernow support scheduled interval
updates. You can set the interval for executing update tasks via theupdate_intervalconfiguration. The default is
12 hours. This does not apply to workflows, which still update daily at
6:00 and 18:00.
🌟 Optimization
- Updated channel alias data. Contributions for more aliases are welcome. See:
💖 Channel Alias Collection Plan
🐛 Bug Fixes
- Fixed the application of the public streaming APP_HOST configuration (#1094)
- Fixed the issue where results were not saved when speed test was not enabled in some scenarios (#1092)
- Fixed failure to "unfreeze" channel cache results
- Fixed some devices unable to open the
GUIinterface
🗑️ Removal
- Removed Docker
UPDATE_CRONenvironment variable. Please use theupdate_intervalparameter in the
config/config.inifile to control the update interval.
v1.7.1
2025/5/9
🚀 新功能
- 新增支持获取接口
归属地与运营商(利用纯真IP数据库实现),支持关键字过滤,可通过配置location与isp
生成想要的结果,建议优先使用靠近使用环境的归属地与本机网络运营商,以提升播放效果(#1058) - 新增支持无需开启测速的情况下,可对接口进行
排序,输出结果日志
🌟 优化
- 优化
IPv6结果进入缓存 - 调整
冻结结果的阈值,加入最大延迟与最小速率限制 - 调整默认配置
ipv_type_prefer = auto,即根据网络环境自动选择排序IPv4与IPv6结果的优先级 - 频道结果日志文件更名为
result.log - 更新部分配置参数描述
🐛 修复
- 修复
IPv6含参数结果匹配问题(#1048) - 修复白名单生成结果失败(#1055)
🗑️ 移除
- 移除无效的
IPv6订阅源
Note
有小伙伴对部署后首次更新时间变长有疑问,其实这是正常的。
因为从v1.7.0开始,为了提升频道测速准确性,默认对接口进行全量测速。
目前首次运行一般30分钟左右,如果是新增的频道比较多首次运行时间会比较长。
但这并不会影响使用,由于默认模板已经内置了部分更新结果(output/cache.pkl.gz),部署后可立即访问使用。
同时测速阶段可根据历史数据跳过无效接口,无需担心,后续更新所需时间会明显减少。
如果你介意,可开启Host共享模式(speed_test_filter_host = True),相同Host的接口会共享测速结果,可以大幅降低测速所需时间,但结果准确性也会下降。
English
🚀 New Features
- Added support for obtaining interface
locationandISP(implemented using theIPIP database), supports keyword
filtering. You can configurelocationandispto generate desired results. It is recommended to prioritize the
location and ISP close to the usage environment to improve playback performance (#1058). - Added support for sorting interfaces and outputting result logs without enabling speed testing.
🌟 Optimizations
- Optimized caching of
IPv6results. - Adjusted the
frozen result thresholdby addingmaximum latencyandminimum speedlimits. - Adjusted the default configuration
ipv_type_prefer = auto, which automatically prioritizes sorting of IPv4 and IPv6
results based on the network environment. - Renamed the channel result log file to
result.log. - Updated descriptions of some configuration parameters.
🐛 Bug Fixes
- Fixed the issue with matching
IPv6 results with parameters(#1048). - Fixed the failure to generate whitelist results (#1055).
🗑️ Removals
- Removed invalid
IPv6 subscription sources.
[!NOTE]
Some users have raised concerns about the longer initial update time after deployment. This is actually normal.
Starting fromv1.7.0, to improve the accuracy of channel speed tests,
full speed testing of interfaces is enabled by default.
The first run usually takes about30 minutes. If there are many new channels, the initial run time may be longer.
However, this does not affect usage, as the default template already includes some pre-updated results
(output/cache.pkl.gz), allowing immediate access after deployment.
During the speed test phase, invalid interfaces can be skipped based on historical data, so there is no need to worry.
Subsequent updates will take significantly less time.
If you are concerned, you can enable Host sharing mode (speed_test_filter_host = True), where interfaces with the
same Host share speed test results. This can greatly reduce the time required for speed testing,
but the accuracy of the results may decrease.
v1.7.0
2025/5/1
🚀 新功能
- 新增
频道别名功能(config/alias.txt),提升频道名称匹配能力 - 新增
EPG功能(订阅文件配置config/epg.txt),显示频道预告信息 - 支持
回放类接口获取与生成 - 新增
历史结果的冻结与解冻,冻结:无效结果不参与测速,解冻:无结果时自动解冻重新测速 - 新增
最大分辨率限制min_resolution - 支持含
请求头信息接口测速与生成,需播放器支持才可播放,可通过open_headers控制是否开启 - 新增测速并发数量配置
speed_test_limit,实现控制测速负载压力 - 新增
Host数据共享配置speed_test_filter_host,实现相同Host地址接口可共享测速结果 - 新增
推流统计GUI按钮
🌟 优化
- 重构
测速与排序逻辑,适配更多类型接口的测速(#1009) - 提供
内置结果,解决首次运行等待期间无结果问题(可能不稳定,建议使用更新后结果) - 优化接口测速默认为
全接口测速,解决Host共享结果部分接口测速不准确问题 - 调整测速结果以
速率排序,分辨率不再参与,解决部分低速率接口在前的问题 - 默认开启
推流,调整HLS分片配置,推荐使用HLS接口,缓解卡顿情况 - 重构接口
额外信息处理逻辑 - 测速相关配置项更名为
speed_test_*,修改输出日志文案 - 调整默认最低接口速率为
0.5M/s - 更新黑名单,增加无效接口与
音频接口
🐛 修复
🗑️ 移除
- 移除部分失效订阅源
- 移除代理更新功能
open_proxy - 移除保留模式
open_keep_all - 移除重复执行
sort_duplicate_limit
English
🚀 New Features
- Added
Channel Aliasfeature (config/alias.txt) to improve channel name matching. - Added
EPGfeature (subscription file configurationconfig/epg.txt) to display channel program information. - Support for
Playback Interfaceretrieval and generation. - Added
historical resultsfreezing and unfreezing.Freezing: Invalid results are excluded from speed testing.
Unfreezing: Automatically unfreezes and retests when no results are available. - Added
Maximum Resolutionlimitmin_resolution. - Support for speed testing and generation of interfaces with
Request Headers. Requires player support for playback
and can be controlled viaopen_headers. - Added configuration for speed test concurrency
speed_test_limitto control speed test load pressure. - Added
Host Data Sharingconfigurationspeed_test_filter_hostto allow interfaces with the same Host address to
share speed test results. - Added Stream Statistics GUI button.
🌟 Optimizations
- Refactored
Speed Test and Sortinglogic to adapt to more types of interfaces (#1009). - Provided
Built-in Resultsto address the issue of no results during the first run (may be unstable, recommended to
use updated results). - Optimized interface speed testing to default to
Full Interface Speed Test, resolving inaccuracies in speed tests for
some interfaces with shared Host results. - Adjusted speed test results to sort by
Rate, withResolutionno longer included, resolving the issue of low-rate
interfaces appearing at the top. - Defaulted to enabling
Streaming, adjustedHLSfragment configuration, and recommended usingHLSinterfaces to
alleviate stuttering. - Refactored the handling logic for interface
Additional Information. - Renamed speed test-related configuration items to
speed_test_*and updated output log text. - Adjusted the default minimum interface rate to
0.5M/s. - Updated the blacklist to include invalid interfaces and
audiointerfaces.
🐛 Bug Fixes
- Fixed workflow execution issues by switching to the latest
Ubuntuversion (#1032). - Fixed the issue where the
M3Usubscription source whitelist was not working (#1019). - Fixed speed test issues for some
Multicast Sources(#1026). - Fixed the failure to generate results for interface protocol classification.
🗑️ Removals
- Removed some invalid subscription sources.
- Removed proxy update feature
open_proxy. - Removed retention mode
open_keep_all. - Removed duplicate execution
sort_duplicate_limit.
v1.6.3
2025/4/3
- ✨ 新增支持RTMP推流(工作流不支持),支持
Live/HLS推流,订阅结果可转换为对应模式推流输出,也可通过config目录内创建live或hls目录定义读取本地视频源 - ✨ Docker镜像合并为
guovern/iptv-api,大小与精简版一致,不再区分完整版与精简版,latest为最新版,支持获取历史版本,如1.6.2 - ✨ 新增支持GUI最小化至系统托盘区运行
- ✨ 新增支持
IPv4/IPv6双栈访问,支持txt与m3u区分IPv协议类型访问 - ✨ 增加构建版本号,支持保留历史版本
- 🐛 优化黑名单非url关键字匹配问题
- 🐛 修复Docker容器启动提示
no crontab for root - 🐛 修复IPv6结果过滤问题
English
- ✨ Added support for RTMP streaming (not supported by workflows), supporting
Live/HLSstreaming. Subscription results can be converted to the corresponding mode for streaming output, and local video sources can be defined by creatingliveorhlsdirectories in theconfigdirectory. - ✨ Merged Docker images into
guovern/iptv-api, with the same size as the slim version. No longer distinguish between full and slim versions.latestis the latest version, and historical versions can be obtained, such as1.6.2. - ✨ Added support for minimizing the GUI to the system tray.
- ✨ Added support for dual-stack
IPv4/IPv6access, supportingtxtandm3uto distinguish between IPv protocol types. - ✨ Added build version number, supporting the retention of historical versions.
- 🐛 Optimized the issue of non-URL keyword matching in the blacklist.
- 🐛 Fixed the
no crontab for rootprompt when starting the Docker container. - 🐛 Fixed the issue of filtering IPv6 results.
v1.6.2
2025/3/4
- ✨ 新增支持CDN代理加速,配置项:
cdn_url,用于订阅源与频道图标资源加速访问,可关注公众号私信获取代理地址 - ✨ 新增支持
rtsp协议接口 - ✨ 新增支持本地源频道名称模糊匹配
- ✨ 新增订阅源
Guovin/iptv-database,来源于新仓库IPTV-Database - 🐛 修复支持含验证信息的接口匹配(#946)
- 🐛 修复输出结果文件问题,接口url不完整,丢失部分信息(#925)
- 🪄 优化运行流程,调整默认配置:关闭组播源、酒店源获取
English
- ✨ Added support for CDN proxy acceleration, configuration item:
cdn_url, for accelerating access to subscription
sources and channel icon resources. You can follow the public account and send a private message to
get the proxy address - ✨ Added support for
rtspprotocol interface - ✨ Added support for fuzzy matching of local source channel names
- ✨ Added subscription source
Guovin/iptv-database, from the new
repository IPTV-Database - 🐛 Fixed support for matching interfaces with verification information (#946)
- 🐛 Fixed the issue with the output result file where the interface URL was incomplete and some information was
missing (#925) - 🪄 Optimized the running process and adjusted the default configuration: disabled multicast source and hotel source
retrieval
v1.6.1
2025/2/21
- 🎉 预告:💻IPTV-Web:IPTV电视直播源管理平台,支持在线播放等功能,开发中...
⚠️ 注意:若属于旧版本升级,更新该版本需要手动删除旧版本结果缓存文件output/cache.pkl- ✨ 新增支持
IPv6域名解析,提升IPv6接口识别能力(#910) - ✨ Docker更新时间环境变量精简为
UPDATE_CRON,支持多个时间设置(#920) - ✨ 更新组播源与酒店源离线数据
- 🪄 移除默认代理,由于集中访问压力过大,出现失效情况,建议自行定义订阅源和结果的代理地址,或关注公众号回复获取代理地址
- 🪄 重构频道数据格式
tuple为dict,增加类型定义,优化数据处理,调整目录结构 - 🪄 正则匹配预编译,提升效率
- 🐛 调整Docker
FFmpeg构建版本,解决部分域名无法获取分辨率问题(#864) - 🐛 修复Docker重启时创建重复定时任务问题(#916)
- 🐛 合并默认与用户配置,用户配置只需填写变更项即可(#892,@wongsyrone)
- 🐛 修复结果生成失败问题(#863,#870,#875)
English
- 🎉 Preview: 💻IPTV-Web: IPTV live stream management platform, supports online
playback and other features, under development... ⚠️ Note: If upgrading from an older version, you need to manually delete the old version's result cache fileoutput/cache.pkl- ✨ Added support for
IPv6 domain name resolution, improving IPv6 interface recognition capability (#910) - ✨ Simplified Docker update time environment variable to
UPDATE_CRON, supporting multiple time settings (#920) - ✨ Updated offline data for multicast sources and hotel sources
- 🪄 Removed default proxy due to high access pressure causing failures, it is recommended to define your own proxy
address for subscription sources and results, or follow the public account to get the proxy address - 🪄 Refactored channel data format from
tupletodict, added type definitions, optimized data processing, and
adjusted directory structure - 🪄 Precompiled regex matching to improve efficiency
- 🐛 Adjusted Docker
FFmpegbuild version to resolve issues with some domain names not being able to get resolution (
#864) - 🐛 Fixed issue of creating duplicate scheduled tasks when Docker restarts (#916)
- 🐛 Merged default and user configurations, users only need to fill in the changes (#892, @wongsyrone)
- 🐛 Fixed issue of result generation failure (#863, #870, #875)
v1.6.0
2025/1/22
- ✨ 新增支持
本地源 - ✨ 使用新的代理地址
https://ghproxy.cc - ✨ 新增支持Docker修改定时任务时间,环境变量:
UPDATE_CRON1,UPDATE_CRON2(#440) - ✨ 新增同域名重复执行测速次数配置
sort_duplicate_limit - ✨ 新增
广东联通RTP - 🐛 修复补偿模式结果输出问题(#813)
- 🐛 修复无域名后缀、空格接口匹配问题(#832,#837)
- 🐛 修复无结果状态文件写入报错(#841)
- 🐛 修复GUI无法保存测速延迟设置
- 🐛 修复Docker版本文件丢失(#800)
- 🪄
open_use_old_result更名为open_history - 🪄 优化对接口中
%符号的转义处理(#853) - 🪄 优化以接口Host去重(#846)
- 🪄 支持协议类型偏好
ipv_type_prefer可设置为空,可实现全部类型按速率排序输出结果
English
- ✨ Added support for
local sources - ✨ Using new proxy address
https://ghproxy.cc - ✨ Added support for modifying Docker scheduled task time, environment variables:
UPDATE_CRON1,UPDATE_CRON2(#440) - ✨ Added configuration for the number of speed tests for the same domain
sort_duplicate_limit - ✨ Added
Guangdong UnicomRTP - 🐛 Fixed compensation mode result output issue (#813)
- 🐛 Fixed issue with interface matching without domain suffix and spaces (#832, #837)
- 🐛 Fixed error writing to file in no result state (#841)
- 🐛 Fixed GUI unable to save speed test delay settings
- 🐛 Fixed Docker version file loss issue (#800)
- 🪄
open_use_old_resultrenamed toopen_history - 🪄 Optimized escaping of
%symbol in interfaces (#853) - 🪄 Optimized deduplication by interface host (#846)
- 🪄 Supported setting
ipv_type_preferto empty, allowing all types to be sorted by speed for output results
v1.5.9
2025/1/8
- ❤️ 2025年第一次更新,祝大家新年快乐,万事如意
- ✨ 公众号详细教程文章已发布,欢迎关注
Govin公众号获取 - ✨ 新增支持
rtmp协议接口(#780) - ✨ 新增支持修改更新时间位置(
update_time_position)(#755) - ✨ 新增支持修改时区(
time_zone)(#759) - ✨ 更新组播源与酒店源离线数据,增加
广东移动组播RTP(#773) - ✨ 更新Github CDN代理地址(#796)
- ✨ GUI使用Github工作流基于源码自动构建并发布,唯一下载途径是Release,若安全软件有误报,请添加信任
- ✨ 增加版本信息打印输出
- ✨ 更新部分教程文档图片
- 🐛 修复m3u更新时间logo显示问题(#794)
- 🐛 修复测速阶段出现
cookie illegal key问题(#728,#787) - 🐛 修复白名单接口排序与接口信息命名问题(#765)
- 🐛 修复组播源更新结果异常问题
- 🐛 修复写入结果目录为空问题
- 🪄 调整接口状态码判断,只处理
200状态码(#779) - 🪄 调整默认不显示接口信息,兼容更多播放器
English
- ❤️ First update of 2025, wishing everyone a Happy New Year and all the best
- ✨ Detailed tutorial articles have been published on the
Govinpublic account, welcome to follow for more information - ✨ Added support for
rtmpprotocol interface (#780) - ✨ Added support for modifying update time position (
update_time_position) (#755) - ✨ Added support for modifying time zone (
time_zone) (#759) - ✨ Updated offline data for multicast sources and hotel sources, added
Guangdong Mobile Multicast RTP(#773) - ✨ Updated GitHub CDN proxy address (#796)
- ✨ GUI is automatically built and released based on the source code using GitHub workflows, the only download method
is Release. If there are false positives from security software, please
add it to the trust list - ✨ Added version information print output
- ✨ Updated some tutorial document images
- 🐛 Fixed m3u update time logo display issue (#794)
- 🐛 Fixed
cookie illegal keyissue during speed test phase (#728, #787) - 🐛 Fixed whitelist interface sorting and interface information naming issue (#765)
- 🐛 Fixed abnormal results issue for multicast source updates
- 🐛 Fixed empty result directory issue
- 🪄 Adjusted interface status code judgment to only process
200status code (#779) - 🪄 Adjusted to hide interface information by default, compatible with more players
v1.5.8
2024/12/30
- ❤️ 推荐关注微信公众号(Govin),订阅更新通知与使用技巧等文章推送,还可进行答疑和交流讨论
- ✨ 推荐本次更新,实测可实现秒播级的观看体验,不可播放的情况明显减少
- ✨ 支持获取分辨率,GUI用户需要手动安装
FFmpeg(#608) - ✨ 支持
text/plain结果输出,解决部分播放器显示问题(#736) - ✨ 增加默认订阅源
- 🐛 修复IPv6接口测速输出的速率结果异常(#739)
- 🐛 修复GUI出现的错误输出(#743)
- 🐛 修复分辨率数值比较异常(#744)
- 🐛 修复台标无法显示(#762)
- 🪄 优化接口测速方法,兼容多种
m3u8接口类型 - 🪄 调整Github工作流执行结果IPv类型为自动,即根据网络环境自动选择IPv4或IPv6,若有需要可手动设置
ipv_type_prefer调整输出偏好 - 🪄 更新部分配置参数说明
English
- ❤️ Recommended to follow the WeChat public account (Govin) to subscribe to update notifications and articles on usage tips, as well as for Q&A and discussion.
- ✨ Recommended update, tested to achieve instant playback experience, significantly reducing playback failures
- ✨ Support for obtaining resolution, GUI users need to manually install
FFmpeg(#608) - ✨ Support for
text/plainresult output, solving display issues in some players (#736) - ✨ Added default subscription sources
- 🐛 Fixed abnormal speed results for IPv6 interface speed tests (#739)
- 🐛 Fixed error output in GUI (#743)
- 🐛 Fixed abnormal resolution value comparison (#744)
- 🐛 Fixed logo display issue (#762)
- 🪄 Optimized interface speed test method, compatible with various
m3u8interface types - 🪄 Adjusted GitHub workflow execution result IPv type to automatic, selecting IPv4 or IPv6 based on network
environment, with manual setting option foripv_type_prefer - 🪄 Updated some configuration parameter descriptions