文档首页 > > 最佳实践> 如何降低直播延时?

如何降低直播延时?

分享
更新时间: 2019/05/09 GMT+08:00

一般情况下,RTMP推流 +FLV播放的正常延迟在2-3s左右,若您的直播出现延迟时间过长的现象,可参考以下方式进行性能优化。

GOP设置

GOP:(Group of Pictures)画面组,一个GOP就是一组连续的画面,每个画面都是一帧,一个GOP就是大量帧的集合。直播的视频数据流,其实是一系列的视频帧率组件,包括I帧、P帧等。一个GOP就是以一个I帧,多个P帧开始。当用户第一次观看的时候,播放器需要找到I帧才能开始播放,而播放器会到服务器寻找到最近的I帧反馈给用户。因此,减少GOP帧的数量,能减少播放器加载 GOP帧所用的时间。在直播推流端GOP一般建议设置为1~2s。

播流协议选择

华为云视频直播服务支持RTMP、HTTP-FLV和HLS三种播放协议。

  • RTMP:其原理是将大块的视频帧和音频帧“剁碎”,然后以小数据包的形式进行传输,且支持加密,因此隐私性相对比较理想,但由于拆包组包的过程较复杂,所以在海量并发时也容易出现一些不可预期的稳定性问题。
  • HLS:苹果推出的流媒体协议,将视频分成5-10秒的视频小分片,然后用m3u8索引表进行管理,由于客户端下载到的视频都是5-10秒的完整数据,故视频的流畅性很好。但一般播放器会在缓存3-4个分片后才启动播放,因此也引入了10-30s左右的延时。
  • HTTP-FLV:由 Adobe 公司主推,格式极其简单,只是在大块的视频帧和音视频头部加入一些标记头信息,在延迟表现和大规模并发方面都很成熟。但需要注意的是HTTP-FLV在手机浏览器上的支持非常有限。

因此,在降低延时方面,选择HTTP-FLV 作为播放协议能有效地降低时延。但HLS对浏览器兼容比较友好,且支持跨终端,所以HLS也是很多用户的首选。

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

跳转到云社区