-
hls
-
HTTP Live Streaming(缩写是HLS)是一个由苹果公司提出的基于HTTP的流媒体网络传输协议。它的工作原理是把整个流分成一个个小的基于HTTP的文件来下载,每次只下载一些。
-
视频播放过程:参考文章
(1)服务端采集视频进行编码传输到切片器
(2)切片器 对视频创建一个索引文件(m3u8文件),并将视频切割成n个ts文件
(3)将两个文件传输到http服务器
(4)网站根据索引文件按序播放ts文件
优点:
- 容易穿过任何允许HTTP数据通过的防火墙或者代理服务器
- 跨平台性能好,支持PC/Android/IOS
缺点: 延时较高,10s左右
-
-
rtmp
- RTMP,全称 Real Time Messaging Protocol,即实时消息传送协议。Adobe 公司为 Flash 播放器和服务器之间音视频数据传输开发的私有协议。
- 工作原理:协议中的基本数据单元成为消息(Message),传输的过程中消息会被拆分为更小的消息块(Chunk)单元。最后将分割后的消息块通过 TCP 协议传输,接收端再反解接收的消息块恢复成流媒体数据。
优点:
- 低延时,大概只有1s
- 适合长时间播放,大概十几天连续播放也没问题
缺点:
- 会被防火墙拦截
- 为 Adobe 私有协议,很多设备无法播放,特别是在 iOS 端,需要使用第三方解码器才能播放
- 在PC浏览器中只能通过Flash使用,且无法在移动浏览器使用;所以在网页播放端基本不会以RTMP做拉流
-
http-flv
- Adobe 公司发明。把音视频数据封装成FLV,然后通过HTTP连接传输,与RTMP相比只是传输协议变了。对于网页播放端,本来还是需要Flash才能播放,但「flv.js」的出现又弥补了这个缺陷
优点:
- 低延时,1s左右
- 能有效地穿透防火墙
缺点:
- 它的传输特性会让流媒体资源缓存在本地客户端,也就是说保密性不怎么样;直到目前仍然不兼容iOS的浏览器。
-
几种视频流比较
http-flv、rtmp、hls
最新推荐文章于 2023-12-31 15:58:11 发布