视频直播服务支持输出 RTMP、FLV、HLS 三种协议
RTMP 协议比较全能,既可以用来推送,又可以用来直播。其核心理念是将大块的视频帧和音频帧“剁碎”,然后以小数据包的形式在互联网上进行传输,且支持加密,因此隐私性相对比较理想,但拆包组包的过程比较复杂,所以在海量并发时容易出现一些不可预期的稳定性问题。
HTTP-FLV 协议由 Adobe 公司主推,格式极其简单,只是在大块的视频帧和音视频头部加入一些标记头信息,由于这种极致的简洁,在延迟表现和大规模并发方面都很成熟。唯一的不足就是在手机浏览器上的支持非常有限,但是用作手机端 APP 直播协议却异常合适。
HLS 协议:苹果推出的解决方案,将视频分成 5-10 秒的视频小分片,然后用 m3u8 索引表进行管理。由于客户端下载到的视频都是 5-10 秒的完整数据,故视频的流畅性很好,但也同样引入了很大的延迟(HLS 的一般延迟在 10-30s 左右)。相比于 FLV,HLS 在iPhone 和大部分 Android 手机浏览器上的支持非常给力,所以常用于 QQ 和微信朋友圈的 URL 分享。
RTMP、HLS、HTTP-FLV 协议对比 优点 缺点 延时 特点 适合端 RTMP 延时低 高并发下不稳定iOS 平台要开发支持相关协议的播放器 使用非标准 TCP 端口 1S~3S TCP 长连接 PC 端 HLS 跨平台可通过 html5 解封包播放 延时高 > 10S HTTP 短连接 PC端、移动端 HTTP-FLV 延时低可通过 html5 解封包播放 需要集成 SDK 才能播放 1S~3S TCP 长连接 PC 端
1,RTMP协议 (1)是流媒体协议。 (2)RTMP协议是 Adobe 的私有协议,未完全公开。 (3)RTMP协议一般传输的是 flv,f4v 格式流。 (4)RTMP一般在 TCP 1个通道上传输命令和数据。
2,RTSP协议 (1)是流媒体协议。 (2)RTSP协议是共有协议,并有专门机构做维护。. (3)RTSP协议一般传输的是 ts、mp4 格式的流。 (4)RTSP传输一般需要 2-3 个通道,命令和数据通道分离。
3,HTTP协议 (1)不是是流媒体协议。
(2)HTTP协议是共有协议,并有专门机构做维护。 (3)HTTP协议没有特定的传输流。 (4)HTTP传输一般需要 2-3 个通道,命令和数据通道分离。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。