常见流媒体协议简单介绍

SRT(Secure Reliable Transport)

SRT 是基于 UDP 的低延迟可靠传输协议。

特点:

  • 自动重传
  • 抗网络抖动
  • 支持 AES 加密
  • 适合公网弱网环境

相比 RTMP:

SRT 更适合跨地区、跨运营商传输。

WebRTC(Web Real-Time Communication)

WebRTC 是目前实时性最强的主流音视频方案。

特点:

  • 浏览器原生支持
  • 通常延迟 < 500ms
  • 使用 UDP 传输媒体
  • 内置回声消除、丢包恢复等机制

缺点:

  • ICE/STUN/TURN 配置复杂
  • 服务端实现难度高

RTSP(Real Time Streaming Protocol)

RTSP 更像:

“控制协议”。

它主要负责:

  • play
  • pause
  • teardown
  • describe

真正传输媒体数据的是 RTP。

因此:

RTSP = 控制
RTP = 传输

RTMP(Real-Time Messaging Protocol)

RTMP 曾经是直播行业标准。

特点:

  • 基于 TCP
  • 长连接
  • 使用 FLV 封装

优点是稳定:

  • OBS
  • FFmpeg
  • Nginx-RTMP
  • SRS

都广泛支持。


HLS(HTTP Live Streaming)

HLS 本质是:

切片 + m3u8 索引文件。

流程:

视频流 → TS切片 → m3u8播放列表 → 浏览器播放

优点:

  • CDN 友好
  • 支持断点缓存
  • iPhone/Safari 原生支持

缺点:

  • 延迟高(通常 3\~30 秒)

MPEG-TS(MPEG Transport Stream)

MPEG-TS 严格来说:

是封装格式(Transport Stream)

不是完整的业务协议。

常用于:

  • HLS ts 切片
  • DVB 数字电视
  • UDP 组播

特点:

  • 容错强
  • 适合不稳定传输

RTP(Real-time Transport Protocol)

RTP 是实时媒体传输协议。

特点:

  • 轻量
  • 不保证可靠
  • 通常配合 RTCP 使用

RTCP 负责:

  • 丢包统计
  • 延迟同步
  • QoS 信息

很多协议底层都会用 RTP:

  • RTSP
  • WebRTC
  • SIP

总结

场景推荐协议
摄像头接入RTSP
直播推流RTMP / SRT
超低延迟互动WebRTC
大规模分发HLS
弱网远程传输SRT
实时媒体底层传输RTP