转自:http://blog.chinaunix.net/uid-26000296-id-4932826.html

编码器用FMLE,用手机秒表作为延迟计算。

结论:

1. 影响延迟的三个重要因素:网络带宽不足延迟越大,服务器算法缓存越多延迟越大,编码gop越大延迟越大

2. 若只考虑服务器,NGINX-RTMP做源站时延迟在2-3秒以上。

3. 若只考虑服务器,SmartServer做边缘延迟最小在0.3秒,多级边缘服务器没有影响。

服务器结构如下:

源站:NGINX-RTMP

一级边缘:SmartServer

二级边缘:SmartServer

图片从左到右为:手机秒表,源站,一级边缘,二级边缘;

一、H264-Baseline-1秒GOP

H264,baseline,gop=1秒,fps=20,bitrate=500kbps

可见,延迟主要是在NGINX-RTMP,边缘服务器的延迟算法让延迟最低。

改变编码参数:

二、H264-Baseline-5秒GOP

H264,baseline,gop=5秒,fps=20,bitrate=500kbps

可见,gop变大后,每层都会有随机的延迟,原因是缓存了一些数据。

基本上5秒gop,就会有5/2秒延迟,即2.5秒左右延迟。

改变编码参数gop为10秒:

H264-Baseline-10秒GOP

H264,baseline,gop=10秒,fps=20,bitrate=500kbps

gop大了之后,延迟就要拼人品了。

改变编码参数为main:

三、H264-Main-1秒GOP

H264,main,gop=1秒,fps=20,bitrate=500kbps

基本上和baseline差不多。

没有什么影响,除了我的CPU上去了。

编码参数改为VP6:

四、VP6-1秒GOP

VP6 Quality=GoodQuality-GoodFramerate NoiseReduction=None DatarateWindow=Medium CPUUsage=Dedicated gop=1秒 fps=20

可见VP6也是一样,延迟在NGINX-RTMP源站,边缘没有延迟。

编码参数改为VP6,gop为10秒:

五、VP6-10秒GOP

VP6 Quality=GoodQuality-GoodFramerate NoiseReduction=None DatarateWindow=Medium CPUUsage=Dedicated gop=10秒 fps=20

可见VP6时也一样受gop影响。

六、HTTP切片方式的延迟

H264 Baseline gop=1秒 fps=20

HTTP切片长度为1秒

从左到右依次为:编码器,NGINX-RTMP源站,SmartServer边缘,HTTP切片边缘

可见:
NGINX-RTMP源站延迟在1.4秒

SmartServerRTMP边缘延迟0.6秒

HTTP切片边缘延迟1.1秒

实际环境中,1秒一个切片,在CDN分发时,下载的速度可能没有这么快,所以延迟应该会比这个高。

最新文章

  1. TFS 生成发布代理
  2. ubuntu声音系统
  3. xplan.sql(本脚本获取执行计划显示执行顺序)
  4. 设置导航栏nav全透明
  5. 谱多流形聚类SMMC
  6. tab切换,滑动门
  7. 如何使用Android Studio开发/调试Android源码
  8. window下为apache配置ssl证书
  9. /etc/hosts.conf
  10. [Sciter系列] MFC下的Sciter–3.Sciter脚本与底层交互
  11. Linux之在CentOS上一次艰难的木马查杀过程
  12. J2EE 全面简介
  13. Wmic-linux
  14. linux内核源码目录(转)
  15. 我所理解的Spring AOP的基本概念
  16. 美丽的CSS图形和HTML5
  17. 视频聊天 Demo
  18. Day6_内置函数
  19. Lua中ipairs和pairs的区别详解
  20. Spring学习札记(一)

热门文章

  1. c# 动态加载和卸载DLL程序集
  2. [转载]如何通过ssh进行上传/下载
  3. INSERT - 在表中创建新行
  4. Codeforces Round #575 (Div. 3) B. Odd Sum Segments (构造,数学)
  5. nslookup 工具的使用方法记录
  6. 给oracle命令的参数赋值
  7. CSS3书写规范
  8. Python 变量类型 Ⅱ
  9. VS2017 + EF + MySQL 环境配置
  10. layui 源码解读(部分)