IPTV 入门教程

从零开始理解 IPTV 的核心概念、协议栈与搭建流程,10 分钟带你建立完整知识体系。

什么是 IPTV?

IPTV(Internet Protocol Television)是一种通过 IP 网络传输电视节目的技术。与传统的有线电视或卫星电视不同,IPTV 利用宽带互联网作为传输介质,将音视频流封装成 IP 数据包发送到接收端(机顶盒、手机、电视、PC)。

一个完整的 IPTV 系统通常由三部分组成:头端(采集/编码)流媒体服务器(分发)客户端(播放)

学习建议:建议按顺序阅读本站所有教程,先掌握 IP 与流媒体基础,再进入 SIP 与 VoIP,最后结合 EPG 与鉴权搭建完整平台。

核心概念速览

编码与封装 基础

H.264 / H.265 / AV1 视频编码,AAC / Opus 音频编码,封装在 TS / MP4 / FLV 中传输。

传输协议 核心

HTTP-FLV、HLS(m3u8 + ts 切片)、RTMP、SRT、RTP/RTSP 等是 IPTV 常用的传输协议。

组播与单播 网络

直播常用 IGMP 组播节省带宽,点播则采用单播按需推送。

EPG 节目单 体验

XMLTV 标准格式的电子节目单,让播放器展示节目时间表与简介。

DRM 与鉴权 安全

Token、HMAC 签名、白名单、Referer 校验保护内容不被盗链。

播放终端 前端

Android TV、iOS、Web(hls.js / flv.js)、TiviMate、Kodi 等通用播放器。

搭建一个最小可用的 IPTV 系统

1

准备一台服务器

Linux 服务器(Ubuntu / CentOS),公网带宽 ≥ 10Mbps,开放 80/443/1935 端口。

2

采集视频源

使用 OBS / FFmpeg 推流到流媒体服务器,或使用 DVB 网卡采集卫星信号。

3

部署流媒体服务器

选择 SRS 或 Nginx-RTMP 接收推流,并转 HLS/HTTP-FLV 给客户端播放。

4

生成 m3u 播放列表

将频道地址写入 m3u/m3u8 文件,分发给播放器加载。

5

对接 EPG

使用 XMLTV 生成节目单,让 TiviMate 等播放器显示时间表。

6

开启 HTTPS 与鉴权

申请证书启用 HTTPS,加上 Token 签名防止流量被盗刷。

快速验证:使用 FFmpeg 推流

下面命令将本地 mp4 文件循环推流到 SRS 服务器,可作为最小直播源验证:

ffmpeg -re -stream_loop -1 -i sample.mp4 \
  -c:v libx264 -preset veryfast -tune zerolatency \
  -c:a aac -ar 44100 -b:a 128k \
  -f flv rtmp://127.0.0.1:1935/live/test

推流成功后,使用 VLC 或 ffplay 播放 rtmp://你的IP/live/test 即可看到画面。

学习路线推荐