pixman 最新版 (v1.3.6) 针对 iTV 和 TPTV 分别有三种解决办法:
江苏移动的验证比较简单,部分 ip 段和 UA 被拉黑
/tptv.m3u
,如果不能播放,尝试修改播放器的 UA (User-Agent)/tptv_proxy.m3u
,pixman 将会代理请求,任何播放器都支持;中国移动 iTV 的源在电信联通网络下不返回服务器 ip,解决办法也很简单,自己写入一个可用 ip 到 hosts 文件就行,但考虑到有些用户不知道怎么修改或者设备不支持修改,有三种办法:
/itv.m3u
就行,修改 Hosts 或者用代理软件映射别名可以参考 https://pixman.io/topics/37
/itv_proxy.m3u
,pixman 会代理请求,三网通用在任意目录新建一个 pixman.conf,假设路径为 /opt/pixman/pixman.conf
server {
listen 8000 default_server;
resolver 223.5.5.5;
location ~ ^/tptv/(?<path>.*) {
set $ua 'okhttp/3';
if ($arg_ua) {
set $ua $arg_ua;
}
set $target_url http://tptvo.mobaibox.com/$path$is_args$args;
proxy_pass $target_url;
proxy_set_header User-Agent $ua;
}
location ~ ^/(?<cdn>ystenlive|bestlive|wasulive|fifalive|hnbblive)(?<path>.*) {
set $target_url http://pixman.io.$cdn.dnsany.com$path$is_args$args;
proxy_pass $target_url;
proxy_set_header Host cache.ott.$cdn.itv.cmvideo.cn;
}
location / {
return 200 'ok';
}
}
然后使用 docker run -d --name=pixman-nginx -p 8000:8000 -v /opt/pixman/pixman.conf:/etc/nginx/conf.d/pixman.conf --restart=always nginx
启动 Nginx
订阅地址分别为:
/tptv_proxy.m3u?server=ip:8000
/itv_proxy.m3u?server=ip:8000
如果更喜欢使用 Docker Compose 的话,可以使用下面的文件
在这个例子中,docker-compose.yaml 和 pixman.conf 文件都在 /opt/pixman 下,根据你自己的调整
docker-compose.yaml
services:
pixman:
image: pixman/pixman
restart: always
container_name: pixman
environment:
- http_proxy=http://192.168.50.50:7890
- https_proxy=http://192.168.50.50:7890
- MYTVSUPER_TOKEN=YOUR_TOKEN
ports:
- 5000:5000
pixman-nginx:
image: nginx:latest
restart: always
container_name: pixman-nginx
ports:
- 8000:8000
volumes:
- /opt/pixman/pixman.conf:/etc/nginx/conf.d/pixman.conf