
# 视频直播服务支持哪些直播流播放协议？
华为云视频直播服务支持RTMP、HTTP-FLV和HLS三种播放协议。
- RTMP协议比较全能，既可以用来推流，又可以用来播放直播流。其工作方式是将较大块的视频帧和音频帧"剁碎"，然后以小数据包的形式在互联网上进行传输，且支持加密，因此安全隐秘性比较理想，但拆包组包的过程比较复杂，所以在请求海量并发时易出现一些不可预期的稳定性问题。RTMP基于flash无法在iOS的浏览器中播放，但是实时性比HLS好。
- HTTP-FLV协议工作方式是在大块的视频帧和音视频头部加入一些标记头信息，由于工作方式简洁，因此请求海量并发时比较稳定，延时小；用作手机端APP直播协议很合适，但是在手机浏览器上的支持却很有限。
- HLS协议工作方式是将视频流分成5-10秒的多个小的基于HTTP的小分片文件来下载，然后用m3u8索引表进行管理。由于客户端下载到的视频都是5-10秒的完整数据，故视频的流畅性很好，但同样引入了很大延迟（HLS的一般延迟在10-30s左右）。相比于FLV，HLS对浏览器兼容较好，支持跨终端，因此常用于社交软件的URL分享。
表1RTMP、HTTP-FLV、HLS协议对比 
| 播放协议     | 协议      | 原理                         | 延时                                                                                                                                                                                                                                                            | 优缺点                                                                                                                                                                                                                    |
|:---|:---|:---|:---|:---|
| RTMP     | TCP长连接  | 每个时刻收到的数据即刻发送。             | 与推流端GOP相关： - 当GOP为1S时，播放延时1S\~3S。  - 当GOP为2S时，播放延时2S\~4S。   | - 优点：延时低。  - 缺点：高并发下不稳定；iOS平台要开发支持相关协议的播放器；使用非标准TCP端口。   |
| HTTP-FLV | TCP长连接  | 数据头部添加标记，通过HTML5解封包播放。     | 与推流端GOP相关： - 当GOP为1S时，播放延时1S\~3S。  - 当GOP为2S时，播放延时2S\~4S。   | - 优点：延时低。  - 缺点：需要集成SDK才能播放。                                  |
| HLS      | HTTP短连接 | 集合一段时间数据生成ts切片文件，更新m3u8文件。 | 10S\~30S。                                                                                                                                                                                                                                                     | - 优点：跨平台。  - 缺点：延时高。                                  |
   
