Releases: pppyyyccc/streamshield-proxy
V2.0.0
StreamShield Proxy 2.0.0 版本发布说明
发布日期
2025年1月24日
版本号
2.0.0
主要改进
🚀 重大架构升级:从单一代理服务转变为多源聚合平台
- 全新的多源聚合机制,支持更多直播源的整合
- 优化的缓存系统,提高响应速度和效率
- 增强的错误处理和日志记录,提供更详细的运行信息
新特性
1.多源聚合:
- 支持多个M3U源的聚合,包括本地和远程源
- 灵活的源配置机制,支持代理和非代理模式
2.高级内容处理:
- 支持对特定源的内容进行自定义修改(如移除tv-logo、修改group-title等)
3.增强的缓存机制:
- 使用LRU缓存优化M3U内容和代理请求的处理
- 定期自动更新缓存内容,保证数据的及时性
4.改进的错误处理:
- 更细致的错误捕获和日志记录
- 优化的SSL证书错误处理,提高连接成功率
5.配置灵活性:
- 通过环境变量实现更灵活的配置
- 支持自定义M3U源的添加
环境变量配置
通过持久化 -v /path/:/app/config \ 挂载
/app/config/
├── proxy_hosts/
│ ├── default.txt # 默认代理 hosts 列表 (默认创建,每次升级我会覆盖)
│ └── user_defined.txt # 用户自定义代理 hosts 列表 (预创建,用户编辑,升级不会覆盖)
├── remote_m3u/
│ ├── no_proxy/
│ │ ├── default_sources.txt # 默认非代理 M3U 源列表 (默认创建,每次升级我会覆盖)
│ │ └── sources.txt # 用户自定义非代理 M3U 源列表 (预创建,用户编辑,升级不会覆盖)
│ └── proxy_needed/
│ └── sources.txt # 用户自定义代理 M3U 源列表 (预创建,用户编辑,升级不会覆盖)
├── local_m3u/
│ ├── no_proxy/
│ │ └── user_m3u.m3u # 用户本地非代理 M3U 文件 (用户手动添加,文件名随便取,后缀支持m3u和txt)
│ └── proxy_needed/
│ └── user_m3u.m3u # 用户本地代理 M3U 文件 (用户手动添加,文件名随便取,后缀支持m3u和txt)
└── generated/
└── all.m3u # 聚合的 M3U 文件 (程序自动生成)
注意事项
升级到2.0.0版本需要重新配置环境变量
- 请确保所有自定义M3U源的格式正确
反馈
如果您在升级过程中遇到任何问题或有任何建议,请在 GitHub 上提交 issue。
致谢
感谢所有用户的支持和反馈,特别是那些帮助我们发现和解决问题的用户。您的反馈对我们持续改进 StreamShield Proxy 至关重要。我会继续努力。
V1.4.3
StreamShield Proxy 1.4.3 版本发布说明
发布日期
2025年1月20日
版本号
1.4.3
主要改进
🎯 架构适配优化:新增 ARM 和 x86 架构差异化处理机制
ARM 架构:不开启代理,直接转发 AKTV 的 live.m3u
x86 架构:支持完整的 AKTV 本机代理程序
无需配置 AKTV 参数时默认直接转发 live.m3u
新特性
- 环境变量配置:
- INCLUDE_ADULT_CONTENT: 设置为 true 开启XXX内容(可选,默认 false)
- AKTV 相关配置根据架构自动适配,无需额外设置
- 需要x86本地代理的,需要添加上地址和端口号
- 自动生成配置文件: 启动脚本会根据环境变量自动生成 AKTV 的配置文件 aktv.json。
- 内置 AKTV_NODE-linux: Docker 镜像中已包含 AKTV_NODE-linux 可执行文件,无需额外安装。
- 优先级提升: AKTV 源被添加到现有源列表的首位,并直接使用原始URL(无需添加代理头)
环境变量配置
THETV_SOURCE=https://thetv.example.com/playlist 或者 http://thetv.example.com:xxxx/playlist
注意事项
- ARM 架构用户无需配置 AKTV 相关参数
- x86 架构用户可选择性配置 AKTV 代理
重要提示
- 升级后请注意检查运行环境的 CPU 架构
反馈
如果您在升级过程中遇到任何问题或有任何建议,请在 GitHub 上提交 issue。
致谢
感谢所有用户的支持和反馈,特别是那些帮助我们发现和解决 TheTV 源问题的用户。您的反馈对我们持续改进 StreamShield Proxy 至关重要。我们会继续努力,提供更好的服务!
V1.4.2
StreamShield Proxy 1.4.2 版本发布说明
发布日期
2025年1月14日
版本号
1.4.2
主要改进
- 💖 特别鸣谢: 衷心感谢 AKTV 的作者!他们发布的程序让大家能更方便地收看海外电视台。本项目已将该程序打包进 Docker,实现对 AKTV 源的支持,并在自己的 VPS 上进行转发。
- 🚀 新增 AKTV 源支持: 现在您可以更方便地集成和使用 AKTV 源。
- 🗑️ 移除 MyTVFree 相关内容: 此版本完全移除了 MyTVFree 相关代码和依赖。
- ⚙️ 优化环境变量配置: 新增 AKTV_HOST、AKTV_PORT,可选 AKTV_EXTERNAL_URL 用于配置 AKTV 源,并允许通过 MPTV_KEY 启用 MyTV 源(可选)。
- 🛡️ 增强程序鲁棒性: 改进错误处理和日志记录,实现优雅的错误处理和独立的超时机制,确保程序在遇到个别源问题时能继续稳定运行。
- 📝 优化日志输出: 提供更详细的日志信息,记录每个源的处理状态和结果。
新特性
- 环境变量配置:
- AKTV_HOST: AKTV 服务器的主机名(例如:aktv.example.com)。
- AKTV_PORT: AKTV 服务器的端口号(例如:8080)。
- AKTV_EXTERNAL_URL: 可选,AKTV 服务的外部访问地址(例如:https://aktv.yourdomain.com),用于替换生成的 m3u 文件中的内部地址。
- 如果设置了 AKTV_HOST 和 AKTV_PORT,则自动启用 AKTV 源。
- 自动生成配置文件: 启动脚本会根据环境变量自动生成 AKTV 的配置文件 aktv.json。
- 内置 AKTV_NODE-linux: Docker 镜像中已包含 AKTV_NODE-linux 可执行文件,无需额外安装。
- 优先级提升: AKTV 源被添加到现有源列表的首位,并直接使用原始URL(无需添加代理头)
环境变量配置
THETV_SOURCE=https://thetv.example.com/playlist 或者 http://thetv.example.com:xxxx/playlist
注意事项
- AKTV_HOST: AKTV 服务器的主机ip地址或者host(必需)。
- AKTV_PORT: AKTV 服务器的端口号默认30001(必需)。
- AKTV_EXTERNAL_URL: AKTV 服务的外部做完https反向代理地址(可选,建议加固安全)。
重要提示
- 升级后请重新检查环境变量配置,特别是与 AKTV 相关的配置。
反馈
如果您在升级过程中遇到任何问题或有任何建议,请在 GitHub 上提交 issue。
致谢
感谢所有用户的支持和反馈,特别是那些帮助我们发现和解决 TheTV 源问题的用户。您的反馈对我们持续改进 StreamShield Proxy 至关重要。我们会继续努力,提供更好的服务!
V1.4.0
StreamShield Proxy 1.4.0 版本发布说明
发布日期
2025年1月2日
版本号
1.4.0
主要改进
-
🆕 替换新的TheTV 源支持功能
-
🛠️ 优化代理头添加逻辑
-
📝 改进错误处理和日志记录
-
重要事情说三遍 要看thetv 必须有美国加拿大的vps
重要事情说三遍 要看thetv 必须有美国加拿大的vps
重要事情说三遍 要看thetv 必须有美国加拿大的vps
新特性
TheTV 源支持
- 由于pixman的thetv年久失修只能自己改轮子,经过YanG大佬点拨,使用了歪果同胞做的一个docker作为thetv的playlist源https://github.com/dtankdempse/thetvapp-m3u 新增 THETV_SOURCE 环境变量支持 TheTV 源配置;
- 部署方法一把梭 docker run --name thetv -d -p xxxx:4124 dtankdemp/thetvapp-m3u:latest
- 优化了 TheTV 源的处理逻辑,确保与其他源保持一致
- 为 TheTV 请求添加了特殊的 headers 处理
代理逻辑优化
- 改进了 addProxyHeader 函数,避免重复添加代理头
- 优化了 proxify 函数,确保不会重复处理已有代理头的 URL
- 统一了所有源的处理方式,提高了一致性
改进
代码结构优化
- 重构了代理域名配置,提高了可维护性
- 优化了 SRC 数组的结构,使源配置更加清晰
- 改进了错误处理机制,提供更详细的错误信息
性能优化
- 优化了代理请求的处理效率
- 改进了 m3u8 文件的处理逻辑
- 优化了重定向处理逻辑
环境变量配置
THETV_SOURCE=https://thetv.example.com/playlist 或者 http://thetv.example.com:xxxx/playlist
注意事项
- 确保 THETV_SOURCE 配置的 URL 可以正常访问
- 检查所有源的配置,确保它们使用一致的处理方式
- 注意观察日志,确保代理头没有重复添加
重要提示
- 本次更新包含对代理逻辑的重要修改,建议所有用户及时升级
- 如果使用了自定义源配置,请确保在升级后重新检查配置
反馈
如果您在升级过程中遇到任何问题或有任何建议,请在 GitHub 上提交 issue。
致谢
感谢所有用户的支持和反馈,特别是那些帮助我们发现和解决 TheTV 源问题的用户。您的反馈对我们持续改进 StreamShield Proxy 至关重要。我们会继续努力,提供更好的服务!
v1.3.8
StreamShield Proxy 1.3.8 版本发布说明
发布日期
2024年11月1日
版本号
1.3.8
主要改进
- 🆕 新增多VPS源支持功能
- 📝 改进错误处理和日志记录
新特性
多VPS源支持,自组简单CDN网路
- 新增 EXTRA_M3U_URLS 环境变量支持多个VPS源配置
- 新增 extraSources 配置项用于处理额外VPS源
- VPS源默认不进行代理转发处理
配置增强
- 支持通过环境变量配置多个VPS源
- VPS源配置格式更灵活,支持逗号分隔多个URL
- 改进配置验证和错误提示
改进
代码结构优化
- 重构了代理域名配置,提高了可维护性
- 优化了日志输出格式,增加了换行符以提升可读性
- 改进了错误处理机制,提供更详细的错误信息
性能优化
- 优化了 M3U 缓存机制
- 改进了代理请求的处理效率
- 优化了重定向处理逻辑
环境变量配置
EXTRA_M3U_URLS=http://vps1.example.com/live.m3u,http://vps2.example.com/live.m3u
注意事项
- 确保 EXTRA_M3U_URLS 配置的URL可以正常访问
- VPS源不会被代理转发,直接访问原始地址
- 建议定期检查VPS源的可用性
重要提示
- 本次更新包含对代理域名列表的重要更新,建议所有用户及时升级
- 如果使用了自定义代理域名,请确保在升级后重新检查配置
反馈
如果您在升级过程中遇到任何问题或有任何建议,请在 GitHub 上提交 issue。
致谢
感谢所有用户的支持和反馈,这些宝贵的意见帮助我们不断改进 StreamShield Proxy。我们会继续努力,提供更好的服务!
版本 1.3.1发布说明
StreamShield Proxy 1.3.1 版本发布说明
发布日期
2024年10月26日
版本号
1.3.1
主要改进
- 对代理域名处理进行了全面优化,增强了对多种流媒体服务的支持
- 改进了M3U列表处理逻辑,提高了稳定性和兼容性
- 优化了重定向处理机制,提升了流媒体播放的连续性
- 修复mytv无法播放的问题
新特性
扩展代理域名支持
- 新增对
thetv-ts.wx.sb的直接支持 - 优化了对
v2h-cdn.com域名的处理 - 改进了对 DLHD 测试频道的支持
改进 M3U 列表处理
- 优化了 M3U 文件解析逻辑,提供更稳定的频道列表处理
- 增强了对多源整合的支持能力
- 改进了自定义 M3U 的处理机制
增强流媒体处理
- 优化了对 DRM 内容的处理逻辑
- 增强了 M3U8 文件的解析和处理能力
- 改进了对 TS 文件的代理支持
改进
代码结构优化
- 重构了代理域名配置,提高了可维护性
- 优化了日志输出格式,增加了换行符以提升可读性
- 改进了错误处理机制,提供更详细的错误信息
性能优化
- 优化了 M3U 缓存机制
- 改进了代理请求的处理效率
- 优化了重定向处理逻辑
修复
- 修复了 DRM 请求处理中的问题
- 解决了某些特定域名代理失败的问题
- 修正了 M3U8 文件处理中的路径转换问题
已知问题
- 在处理某些特定格式的 M3U8 文件时可能需要额外的路径转换处理
重要提示
- 本次更新包含对代理域名列表的重要更新,建议所有用户及时升级
- 如果使用了自定义代理域名,请确保在升级后重新检查配置
反馈
如果您在升级过程中遇到任何问题或有任何建议,请在 GitHub 上提交 issue。
致谢
感谢所有用户的支持和反馈,这些宝贵的意见帮助我们不断改进 StreamShield Proxy。我们会继续努力,提供更好的服务!
版本 1.3.0 发布说明
发布日期
2024年10月1日
版本号
1.3.0
主要改进
- 本版本对HLS和MPEG-DASH流媒体处理进行了重大优化,提高了兼容性和性能。
- 改进了URI到URL的转换逻辑,修复了之前版本中的遗漏问题。
- 增强了代码模块化,提高了可维护性和可扩展性。
新特性
改进流媒体处理
- 新增专门的handleHls函数,全面处理HLS内容中的各种URL,包括加密密钥、媒体片段和TS/M4S文件。
- 新增handleDash函数,用于处理MPEG-DASH内容,支持MPD文件的解析和URL代理。
更灵活的URL处理
- 优化了URL代理逻辑,支持更多类型的URL模式。
- 改进了相对URL到绝对URL的转换机制,提高了兼容性。
改进
- 代码结构优化: 将HLS和DASH处理逻辑分离为独立函数,提高了代码的可读性和可维护性。
- 错误处理增强: 增加了更详细的错误日志,便于问题诊断和调试。
- 性能优化: 通过优化URL处理逻辑,提高了代理服务的整体性能。
修复
- 修复URI到URL转换问题: 解决了之前版本中遗漏的URI到URL转换逻辑,确保所有类型的URL都能被正确处理。
- 修复MPEG-DASH内容处理: 修复了对DASH内容的不完整支持,现在可以正确处理MPD文件中的所有URL。
已知问题
- 暂无
重要提示
此版本修复了中国M3U列表显示问题,用户如需升级请修改启动代码中的环境变量名称,将 chinam3u 改为大写的 CHINAM3U。
反馈
如果您在升级过程中遇到任何问题或有任何建议,请在 GitHub 上提交 issue。
感谢您使用 StreamShield Proxy!
V1.28 发布说明
发布日期
2024年9月28日
版本号
1.28
主要改进
本版本主要解决了中国M3U列表(chinam3u)无法显示的问题,并进行了一些小的优化。
新特性
改进的中国M3U列表支持
- 修复了中国M3U列表(chinam3u)无法正确显示的问题。
- 优化了环境变量的处理逻辑,确保正确识别CHINAM3U设置。
改进
- 环境变量处理优化: 统一了环境变量的命名规范,提高了代码的一致性和可读性。
- 错误处理和日志记录改进: 增加了更详细的日志输出,便于诊断中国M3U列表相关的问题。
- 代码结构优化: 重构了部分代码,提高了可维护性。
修复
- 修复CHINAM3U环境变量识别问题: 解决了由于环境变量大小写不一致导致的中国M3U列表无法显示的问题。
- 修复了一些小的代码错误和不一致性。
已知问题
- 暂无
重要提示
此版本修复了中国M3U列表显示问题,用户如需升级请修改启动代码chinam3u小写改成CHINAM3U大写。
反馈
如果您在升级过程中遇到任何问题或有任何建议,请在 GitHub 上提交 issue。
感谢您使用 StreamShield Proxy!
这个Markdown格式的发布说明可以直接用于GitHub的release页面或其他支持Markdown的平台。它清晰地展示了版本信息、主要改进、新特性、修复的问题以及升级说明,便于用户了解此次更新的重点和如何进行升级。
版本 1.2.9 发布说明
发布日期
2024年9月30日
版本号
1.2.9
主要改进
- 本版本主要解决了中国M3U列表(CHINAM3U)无法显示的问题,并进行了一些小的优化。
- 新增添加针对m3u聚合的日志
新特性
改进的中国M3U列表支持
- 修复了中国M3U列表(CHINAM3U)无法正确显示的问题。
- 优化了环境变量的处理逻辑,确保正确识别CHINAM3U设置。
改进
- 环境变量处理优化: 统一了环境变量的命名规范,提高了代码的一致性和可读性。
- 错误处理和日志记录改进: 增加了更详细的日志输出,便于诊断中国M3U列表相关的问题。
- 代码结构优化: 重构了部分代码,提高了可维护性。
修复
- 修复CHINAM3U环境变量识别问题: 解决了由于环境变量大小写不一致导致的中国M3U列表无法显示的问题。
- 修复了一些小的代码错误和不一致性。
已知问题
- 暂无
重要提示
此版本修复了中国M3U列表显示问题,用户如需升级请修改启动代码中的环境变量名称,将 chinam3u 改为大写的 CHINAM3U。
反馈
如果您在升级过程中遇到任何问题或有任何建议,请在 GitHub 上提交 issue。
感谢您使用 StreamShield Proxy!