|
两年前我分享了一下广东 IPTV 的鉴权方式:广东电信 IPTV 验证过程分析、直播源提取、openwrt 单线复用、RTSP 代理-iptv直播源、网络视频直播资源、直播代码-恩山无线论坛 (right.com.cn)
然后我陆陆续续根据我自己的请求完善我的代理工具,如今它已经足够满足我个人使用了,于是决定分享一下,并且寻求感兴趣的朋友兼容其他地区和运营商或者提高易用度。欢迎点星星支持我。
源码:
https://github.com/yujincheng08/rust-iptv-proxy
使用方法:
1. 根据 readme 以及自己使用的系统进行编译。经过测试在 linux (包括但不限于 PVE 或 openwrt)和 windows 上都能正常运行
2. 找出自家盒子的 mac 地址以及 IPTV 的账号密码
3. 根据自己需求构建命令行运行刚刚编译好的程序
4. 访问 127.0.0.1:7878/playlist 可以得到 m3u8 播放列表,访问 127.0.0.1:7878/xmltv 可以得到 XMLTV 格式,包括回放地址。根据需求填入 IPTV 软件中(本人使用的是 tivimate,亲测可用)
具体命令行如下:
Usage: iptv [OPTIONS] --user <USER> --passwd <PASSWD> --mac <MAC>
Options:
-u, --user <USER> Login username
-p, --passwd <PASSWD> Login password
-m, --mac <MAC> MAC address
-i, --imei <IMEI> IMEI [default: ]
-b, --bind <BIND> Bind address:port [default: 127.0.0.1:7878]
-a, --address <ADDRESS> IP address/interface name [default: ]
-I, --interface <INTERFACE> Interface to request
--extra-playlist <EXTRA_PLAYLIST> Url to extra m3u
--extra-xmltv <EXTRA_XMLTV> Url to extra xmltv
--udp-proxy UDP proxy address:port
--rtsp-proxy Use rtsp proxy
-h, --help Print help
-V, --version Print version
其中:
-u: IPTV 用户名
-p:IPTV 密码
-m:盒子 MAC 地址
-i:盒子 imei,不用填
-b:绑定的 ip 地址和端口
-a:盒子的 ip 地址,不用填
-I:iptv pppoe 拨号的网口(VLAN 是 45 的那个),如果设置了静态路由可以不填,不然应该填入用 iptv 拨号的 pppoe 的网口的名字,因为最近广东电信要求所有 iptv 的请求都得走专网了
--udp-proxy: 启用内置 udp 代理,启用后 m3u8 的播放地址会转成 http 后的组播地址,防止组播影响其他设备正常上网;如果不启用,会使用 rtsp 的地址
--rtsp-proxy: 启用内置 rtsp 代理,启用后 m3u8 的播放地址会转成 http 后的 rtsp 地址;如果不想给 rtsp 播放地址设置静态路由可以启用(毕竟可能影响 QQ 收图片),并且能解决 tivimate 不支持 rtsp 地址的问题
补充说明:
1. 这个项目主要是自己使用,所以功能基本都是迎合自己需求。
2. 我主要使用系统就是 x86 的 openwrt 和 x86 的 windows,其他平台并没有很仔细测试。
3. 由于 openwrt 平台众多,我并没有提供预编译二进制,需要一点知识才能编译。
3. 时间关系没有给 openwrt 弄上 luci 界面和打包成 ipk,但是提供了一个示例 init.d 脚本可以用来开机自启动。有时间会尝试写个界面或者打包成 ipk。 也欢迎有能力的朋友提 PR。
4. 因为是 rust 写的,很多库只能静态集成,所以大小比较大(已经尽可能优化了,目前最小编译选项 + upx 也得有 850KB)
|
评分
-
查看全部评分
|