Azure媒体服务 直播延迟的原因解析
当我们使用媒体服务的直播功能,会发现有时候会有较大的延迟,而延迟的产生和客户端以及推送软件的配置也有关系,本文以Wirecast为例进行分析
- Encoder导致的延迟:在编码这一步骤的时候,它会消耗机器大量的CPU以及内存资源,如果您执行wirecast的那台电脑性能较低,这会导致较高的延迟;同时编码本身也是需要缓存数据并对其整理的过程,这一步本身也会产生延迟的。
- 网络延迟:摄入数据那段的带宽是可以支撑将所有的比特率请求,如果带宽不够,这也会导致一定的延迟。
- 处理采集的信息在内部的延迟:对于服务器来说,这个延迟是必需的。默认情况下,媒体服务通道配置接受每2秒一个关键帧的数据,而动态打包技术针对 HLS 输出采用 3 比 1 映射配置,也就是说,如果输入每 2 秒一个关键帧配置的数据,HLS 输出部分将是 6 秒(3 * 2 秒)
- 客户端相关的延迟:在播放的时候,客户端都会先需要几秒钟缓存一些数据,基本需要5秒左右的时间。
- 客户端的带宽:最终用户在观看的时候,如果本地带宽不佳,也会造成比较大的延迟
关于如何降低延迟,后台团队也有一些建议如下:
- 经过测试发现,使用MPEG-DASH比Smooth Streaming以及HLS的延迟都要低。
- 建议修改wirecast的相关参数,在您编码的配置界面,修改Frames per second和Key Frame的数值,使其关键帧的间隔降低(默认是2秒,Frames per second的含义是每秒帧数,Key frame every的含义是每隔多少帧插入一个关键帧)

- 参考文档
Azure媒体服务 直播延迟的原因解析的更多相关文章
- Azure 媒体服务的 RTMP 支持和实时编码器
Cenk Dingiloglu Azure 媒体服务高级项目经理 直播流媒体目前已在公共预览版中提供,其中一项受支持的输入协议便是 RTMP.RTMP 是用于输入和分发包括直播流媒体在内的丰富媒体的一 ...
- Azure 媒体服务发布可靠的视频直播平台
Sudheer Sirivara Azure 媒体服务总监 两个月前,Azure 媒体服务发布了视频直播和内容保护产品的公共预览版.这一 Internet规模的直播解决方案已被十余家业界领先的国际广播 ...
- Azure 媒体服务支持 DASH 实时传送流
Kilroy Hughes Azure媒体服务数字媒体架构师 本文重点介绍 Azure 媒体服务支持的 DASH 实时传送流功能,同时阐述如何利用这些功能将实时和点播自适应流传送至 Web 浏览器 ...
- Azure 媒体服务可将优质内容传输至 Apple TV
作为内容提供商,如果想要将优质内容传输到Apple TV,需要使用Apple FairPlay Streaming (FPS)技术. 但是这个技术的构建比较繁琐,基于此,Azure提供了FairPla ...
- 通过新的 Azure 媒体服务资源管理器工具管理媒体工作流
Xavier Pouyat Azure 媒体服务高级项目经理 几个月前,一家广播公司找到了我,希望我向他们提供一种图形界面工具,好让他们使用 Azure媒体服务来上传.管理资产并对资产进行编 ...
- Azure 媒体服务换新锁,更安全更方便,新钥匙请收好!
不知道有多少人已经把家里的门锁换成了数字化的指纹锁?沿用了几百上千年的传统门锁,在技术的帮助下无疑变得更方便,不用带钥匙,还能远程控制和操作,最重要的是,终于不用担心「衣果(luǒ)着」出门扔垃圾,风 ...
- 【Azure媒体服务 Azure Media Service】Azure Media Service中Stream Endpoint 说明 (流式处理终结点)
Azure 媒体服务是一个基于云的媒体工作流平台,用于生成需要编码.打包.内容保护和直播活动广播的解决方案. 在视频的直播,点播方案中,媒体服务的架构主要由三部分构成: 推流端,把本地视频或直播内容推 ...
- Azure媒体服务的Apple FairPlay流功能正式上线
在此我们高兴地宣布,Azure FairPlay Streaming服务已正式商用. FairPlay允许用户轻松构建解决方案,并可扩展到最新版本的Apple TV.Azure媒体服务可以结合现有的P ...
- 中国Azure媒体服务RESTAPI的Endpoint
Amber Zhao Thu, Feb 26 2015 4:09 AM 由于海外Azure和中国Azure有不同的domain,很多用户在使用媒体服务RESTAPI时,需要指定中国Azure媒体服务 ...
随机推荐
- “CEPH浅析”系列之六——CEPH与OPENSTACK
在 <"Ceph浅析"系列之二--Ceph概况>中即已提到,关注Ceph的原因之一,就是OpenStack社区对于Ceph的重视.因此,本文将对Ceph在OpenSta ...
- 利用反射,泛型,静态方法快速获取表单值到Model
在项目中经常需要处理表单,给model赋值,很烦人的一些重复代码.如下边的代码: News news = new News(); news.Id = int.Parse(Request.Form[&q ...
- Install marvel and head plugin for ealsticsearch
安装ES插件 marvel marvel是ES的供开发者免费使用的管理工具,他内置了一款叫做Sense的控制台,Sense是运行在浏览器中的,基于Sense可以很方便的和ES进行通讯.官方文档中的很多 ...
- XML与 HTML
XML是E4X中定义的一个重要的新类型,侧重于如何结构化描述信息,用它来表现XML结构中任何独立的部分,是一种用于标记电子文件使其具有结构性的标记语言. XML语言被设计用来描述数据,它的焦点是数据的 ...
- 概率 light oj 1104
t个数据 n天一年 至少2个人在同一天生日的概率>=0.5 问至少多少人 显然要从反面考虑 设365天 都在不同一天的概率 p(num)=1*364/365*363/365...; =(day ...
- lucene-查询query->QueryParser
对于搜索引擎(比如Google和百度)来讲,很多情况下只需要用户在输入框内输入所需查询的内容,然后再单击“搜索”就可以了,其余的事情全部交给搜索引擎去处理,最后搜索引擎会把检索到的结果显示出来.那么搜 ...
- js-读取系统时间
转载 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.o ...
- js-延迟处理函数
<script type="text/javascript"> var i = setTimeout('check()',5000); function check() ...
- sublime text 3之快捷键操作
1.安装插件 https://packagecontrol.io/installation 2.将 Tab缩进(制表符缩进) 改为 4个空格 打开Preferences -> Settings- ...
- mac下卸载MySQL
所有跟mysql相关进程都停止掉, 然后终端输入: cd ~/ sudo rm /usr/local/mysqlsudo rm -rf /usr/local/var/mysqlsudo rm -rf ...