多平台IPTV聚合工具Pixman

什么是 pixman/pixman ?

pixman/pixman 是一个基于 DockerIPTV 工具,支持
Arm64Arm/v7x86_64 架构,它能让你轻松获取和观看各种 IPTV 直播源。

软件特点:

  • 多平台支持: Pixman 可以在支持 Docker 的多个操作系统上运行,包括 LinuxWindowsmacOS
  • 架构兼容性: 提供不同架构的镜像,如 pixman/pixman-armv7,以支持不同的设备。
  • 易于使用: 用户可以通过简单的 Docker 命令快速拉取和运行 Pixman 镜像,灵活地指定版本和端口。
  • 环境变量配置: 支持通过环境变量配置代理设置和访问特定直播源(如 MytvSuper)。
  • 外部文件支持: 允许导入外部 M3U 文件,以便通过 HTTP 访问该源。
  • 更新简便: 提供清晰的更新流程,用户可以轻松停止、删除旧容器并拉取新镜像。
  • 支持的直播源: 支持多种直播源,包括 4GTVTPTV、央视频等。
  • 社区支持: 活跃的论坛和社区,用户可以在其中寻求帮助和分享经验。

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 pixman ,选择第一个 pixman/pixman,版本选择 latest

本文写作时, latest 版本对应为 v1.8.2

docker 文件夹中,创建一个新文件夹 pixman,并在其中建一个子文件夹 data

文件夹 装载路径 说明
docker/pixman/data /app/app/data/m3u 存放其他途径收集的直播源列表

端口

本地端口不冲突就行,不确定的话可以用命令查一下

1
2
# 查看端口占用
netstat -tunlp | grep 端口号
本地端口 容器端口
5042 5000

环境

可变
http_proxy 如果某些域名无法访问,可以设置 http 代理
https_proxy 如果某些域名无法访问,可以设置 https 代理
MYTVSUPER_TOKEN 如果你需要访问 MytvSuper 直播源,需要设置
HAMI_ 如果你要访问 Hamivideo 直播源,需要设置,同时有三个参数,分别是 HAMI_SESSION_IDHAMI_SERIAL_NOHAMI_SESSION_IP
  • 获取 MYTVSUPER_TOKEN 的方法:https://pixman.io/topics/31
  • 获取 HAMI_ 的方法:https://pixman.io/topics/71

以上参数需要根据自己的实际情况进行设置,没有也可以不设置

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# 新建文件夹 pixman 和 子目录
mkdir -p /volume1/docker/pixman/data

# 进入 pixman 目录
cd /volume1/docker/pixman

# 运行容器(挂载自己的源)
docker run -d \
--restart unless-stopped \
--name pixman \
-p 5042:5000 \
-v $(pwd)/data:/app/app/data/m3u \
pixman/pixman

# 运行容器(设置代理的示例)
docker run -d \
--restart unless-stopped \
--name pixman \
-p 5042:5000 \
-e http_proxy=192.168.0.201:2081 \
-e https_proxy=192.168.0.201:2081 \
pixman/pixman

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
version: '3'

services:
pixman:
image: pixman/pixman
container_name: pixman
restart: unless-stopped
ports:
- "5042:5000"
volumes:
- ./data:/app/app/data/m3u
#environment:
# - http_proxy=192.168.0.201:2081
# - https_proxy=192.168.0.201:2081
# - MYTVSUPER_TOKEN=<你的 MytvSuper 的 token>
# - HAMI_SESSION_ID=<你的 Hamivideo 的 session_ID>
# - HAMI_SERIAL_NO=<你的 Hamivideo 的 session_No>
# - HAMI_SESSION_IP=<你的 Hamivideo 的 session_IP>

然后执行下面的命令

1
2
3
4
5
6
7
8
9
10
# 新建文件夹 pixman 和 子目录
mkdir -p /volume1/docker/pixman/data

# 进入 pixman 目录
cd /volume1/docker/pixman

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

一开始可能会占用率比较高

但是很快就会降下来

内置接口

pixman/pixman 的使用方法和 Guovin/TV 类似,也没有界面,区别在于 Guovin/TV 最后只生成一个源,而 pixman/pixman 则支持多个热门直播源,其访问接口是不一样的

文章传送门:IPTV直播源自动检测和更新工具

直播源 接口
四季线上 4GTV http://群晖IP:5042/4gtv.m3u
江苏移动魔百盒 TPTV http://群晖IP:5042/tptv.m3u 或者 http://群晖IP:5042/tptv_proxy.m3u
央视频直播源 http://群晖IP:5042/ysp.m3u
LITV 直播源 合并到 4gtv
YouTube 直播源 http://群晖IP:5042/youtube/{VIDEO_ID}
MytvSuper 直播源 http://群晖IP:5042/mytvsuper.m3u
Beesport 直播源 http://群晖IP:5042/beesport.m3u
TheTV http://群晖IP:5042/thetv.m3u
中国移动 iTV 平台 http://群晖IP:5042/itv.m3u 或者 http://群晖IP:5042/itv_proxy.m3u
Hami Video http://群晖IP:5042/hami.m3u
DLHD http://群晖IP:5042/dlhd.m3u

自定义接口

如果你有自己的源文件,需要放入到 data 目录中,这是 Pixman 为了统一管理,可通过 http://群晖IP:5042/文件名.m3u 访问

假设我们放入了一个 result.m3u 文件,可以通过 http://群晖IP:5042/result.m3u 来访问。需要注意的事项:

  • 如果文件名输入错误,则会返回 {"error":"File not found"}

  • 只支持 .m3u 文件,其他文件不行,例如 .txt

这样做的目的,是为了让支持订阅的播放器(例如:TiviMate),可以不用将源文件传到设备,再进行本地导入,大大简化了操作难度

说明

  1. Pixman 对网络有较高的要求:某些域名无法访问,不仅容器需要通过环境变量设置科学上网,播放器端也可能同样需要

  2. 部分源提供了 2 个地址:

    • 订阅 /tptv.m3u,如果不能播放,可以尝试修改播放器的 UA (User-Agent)
    • 如果播放器不支持修改 UA,那可以订阅 /tptv_proxy.m3uPixman 将会代理请求,任何播放器都支持;
    • 假如你觉得 Pixman 代理流量性能不如 nginx,可以参考:https://pixman.io/topics/39
  3. 如果使用 MytvSuper 源,可能会用到的命令

1
2
3
4
5
# 清理缓存 
docker exec pixman sh -c 'flask clean_cache'

# 更新 mytvsuper_tivimate.m3u 文件
docker exec pixman sh -c 'flask mytvsuper_tivimate'

更多的使用问题和技巧,可以去官方查找:https://pixman.io

参考文档

pixman.io
地址:https://pixman.io/

Docker 镜像 pixman/pixman 使用说明 · pixman.io
地址:https://pixman.io/topics/17

pixman/pixman - Docker Image | Docker Hub
地址:https://hub.docker.com/r/pixman/pixman

在群晖 Synology 上运行 pixman 及 nginx · pixman.io
地址:https://pixman.io/topics/14

pppyyyccc/streamshield-proxy: StreamShield Proxy 是一个用于解决IP限制无法直接播放来自 pixman.io 的 4gtv.m3u 和myspuertv.m3u theTV.m3u的项目。通过个人 VPS 代理转发流量,目前集成了 YSP 、ITV、TPtv和、4Gtv、MyTVsuper、Thetv
地址:https://github.com/pppyyyccc/streamshield-proxy