常见的几种流媒体协议详解
常见流媒体协议详解
流媒体协议是视频/音频内容在网络中传输的规则和标准,以下是主流流媒体协议的分类和详细介绍:
一、传输层协议
1. RTSP (Real Time Streaming Protocol)
特点:
专为流媒体设计的应用层协议使用TCP/UDP传输支持播放控制(暂停、快进等)
端口:默认554典型应用:IP摄像头、监控系统示例:rtsp://example.com/live.sdp
2. RTP/RTCP (Real-time Transport Protocol/Control Protocol)
特点:
RTP负责实际媒体数据传输RTCP负责质量控制通常与RTSP配合使用
端口:动态范围(通常50000-60000)
二、应用层协议
3. RTMP (Real-Time Messaging Protocol)
特点:
Adobe开发的私有协议低延迟(1-3秒)基于TCP传输
端口:默认1935演变:已发展出RTMPT(隧道)、RTMPS(安全)等变种现状:Adobe已停止支持,但仍广泛使用
4. HTTP-FLV (HTTP-based FLV)
特点:
将FLV封装在HTTP协议中兼容性好,穿透防火墙容易延迟3-5秒
优势:无需特殊端口,使用80/443端口
5. HLS (HTTP Live Streaming)
特点:
Apple开发的基于HTTP的协议使用m3u8索引文件和ts分片高兼容性,支持自适应码率
延迟:通常10-30秒典型应用:iOS设备、跨平台直播
6. DASH (Dynamic Adaptive Streaming over HTTP)
特点:
MPEG标准化的自适应流协议类似HLS但更开放使用mpd描述文件和分段传输
优势:支持更多编码格式和DRM方案
三、新兴协议
7. WebRTC (Web Real-Time Communication)
特点:
真正的实时传输(<500ms延迟)支持P2P传输无需插件浏览器原生支持
技术组合:SRTP/SRTCP + ICE/STUN/TURN
8. SRT (Secure Reliable Transport)
特点:
针对不可靠网络优化支持AES加密开源协议
优势:在丢包率高的情况下表现优异
9. QUIC-based协议
特点:
基于QUIC传输层协议快速连接建立改进的多路复用
代表:HTTP/3上的流媒体传输
四、国标协议
10. GB/T28181
特点:
中国安防监控国家标准基于SIP协议的信令控制媒体传输采用RTP/PS封装
端口:SIP默认5060,媒体端口动态分配
五、协议对比表
协议延迟传输方式适用场景移动端兼容性RTSP1-2sTCP/UDP监控系统一般RTMP1-3sTCP直播推流需插件HTTP-FLV3-5sHTTPWeb直播好(需JS支持)HLS10-30sHTTP点播/直播优秀WebRTC<0.5sUDP/P2P视频会议现代浏览器SRT1-3sUDP远程制作需专用客户端GB281811-2sSIP+RTP安防监控需专用客户端六、协议选择建议
超低延迟场景(视频会议、互动直播):
首选WebRTC次选SRT或低延迟模式HLS/LL-HLS
监控安防场景:
国标项目选择GB28181国际项目选择RTSP+ONVIF
普通直播场景:
推流:RTMP/RTSP分发:HLS/DASH(大延迟)、HTTP-FLV(较低延迟)
点播服务:
HLS/DASH(支持自适应码率)渐进式下载(小文件)
跨平台兼容:
HLS(最广泛兼容)DASH(更开放的标准)
理解这些协议的特点和适用场景,可以帮助开发者根据具体需求选择最合适的流媒体解决方案。实际系统中经常需要多种协议配合使用,形成完整的采集、传输、分发链条。