之前有分享一个部署到 Cloudflare Workers 上的方法,但是缺少播放列表和对 Tivimate 的支持,本次 Docker 镜像更新,新增了这两部分,方便大家使用。
前往 https://www.mytvsuper.com/tc/home/ 注册登录你的账户,然后浏览器打开 https://www.mytvsuper.com/api/auth/getSession/self/?sub=1 这个链接,从返回的 JSON 里找到 token 的值,这个 token 就是下面需要的 MYTVSUPER_TOKEN
按照 https://pixman.io/topics/17 拉取最新版镜像,启动时注意添加 MYTVSUPER_TOKEN 环境变量:
# 注意将 192.168.50.50:7890 和 YOUR_TOKEN 替换为你自己的
docker run -d --name=pixman -p 5000:5000 -e http_proxy=http://192.168.50.50:7890 -e https_proxy=http://192.168.50.50:7890 -e MYTVSUPER_TOKEN=YOUR_TOKEN --restart=always pixman/pixman
使用 Docker compose
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
OTT 等客户端订阅: http://ip:port/mytvsuper.m3u
Tivimate 等不支持 302 的客户端使用之前,需要使用命令 docker exec pixman sh -c 'flask mytvsuper_tivimate' 生成静态 m3u。
再使用 http://ip:port/mytvsuper-tivimate.m3u 订阅,需要注意的是,生成的链接有效期 24 小时,请使用定时任务自动生成,观看前及时更新订阅。
Ubuntu 可以使用 crontab 自动更新
0 */12 * * * /usr/bin/docker exec pixman sh -c 'flask mytvsuper_tivimate'
Ps: 由于 MytvSuper 直播源使用 DRM 加密,所以 iOS APTV 等软件无法支持播放,可以使用 @wechatofficial 构建的 O11 Docker 镜像推流。


docker exec pixman sh -c 'flask mytvsuper_tivimate' [2024-06-12 16:23:05,864] ERROR in core: Request failed: Please check proxy URL. It is malformed and could be missing the host., retrying...
运行 docker exec pixman sh -c 'flask mytvsuper_tivimate' ,出现如下错误: [2024-06-13 16:41:06,287] ERROR in core: Request failed: 403 Client Error: Forbidden for url: https://user-api.mytvsuper.com/v1/channel/checkout?platform=android_tv&network_code=C18, retrying...
群晖控制面板 - 计划任务,新增一个计划任务,任务类型选择用户定义的脚本,任务设置里命令填写 docker exec pixman sh -c 'flask mytvsuper_tivimate',用户账号选择 root,其他设置根据自己需要修改

运行 docker exec pixman sh -c 'flask mytvsuper_tivimate' 一直提示下面的错误: [2024-06-14 18:55:29,302] ERROR in core: Request failed: 403 Client Error: Forbidden for url: https://user-api.mytvsuper.com/v1/channel/checkout?platform=android_tv&network_code=C18, retrying...
日志显示: stderr: [2024-06-17 13:37:52,451] ERROR in app: Request failed after retrying stderr: [2024-06-17 13:37:53,561] ERROR in app: Request failed: HTTPSConnectionPool(host='user-api.mytvsuper.com', port=443): Max retries exceeded with url: /v1/channel/checkout?platform=android_tv&network_code=J (Caused by ProxyError('Cannot connect to proxy.', timeout('_ssl.c:1118: The handshake operation timed out'))), retrying... 怎么回事呢
Cannot connect to proxy
你的代理设置错误,192.168.50.50:7890 这个地址换成你自己的