是网络直播延时(1):起播延时及优化
谁都知道清晰度、流畅度、延时是直播的几大关键指标,尤其是在互动直播、移动直播大行其道的当下,延时更是成为了各直播平台、CDN、直播云服务商比拼的至高点。然而,但是,BUT,你真的了解延时么?不能全面了解又何谈优化?
观止云多年来专注于在线视频技术研发与创新,踩过坑趟过水,更积累了不少经验,今天我们来谈谈直播延时及其优化办法。
一、直播延时
直播延时主要分为直播起播延时,直播内容延时。
直播起播延时:从发出指令,到显示画面,所消耗的时间。
直播内容延时:用户端播放的画面和现场画面的时间差。
本篇侧重介绍起播延时及其优化方法,后续系列文章将分为《直播内容延时和优化方式》、《直播起播延时和内容延时的平衡》两篇继续介绍内容延时及优化。
二、各类直播的起播延时
起播延时超过1s,用户能明显感觉到停顿,影响主观体验。
各种直播类型的起播延时见下:
三、各类直播起播延时的构成及优化
3.1 数字电视
数字电视采用广播方式,所有直播内容均广播到终端,数字电视的I帧间隔通常为1s以内,数字电视的起播延迟主要由本地的处理延迟构成。
数字电视起播延时构成
(1) 换频点(调谐)、解调、同步TS流:100ms
(2) PSI表读取视音频PID: 1秒
(3) 解扰100~200ms
(4) 同步视频流,找I帧进行解码: 200ms~500ms
(5) 根据视频和音频的PTS显示
数字电视起播延时优化
(1) 机顶盒采用多高频头加快解调
(2) 机顶盒采用内存存储视音频PID
(为了不影响技术同仁阅读体验就不植入了,插个硬广:希望了解更多在线视频技术的同学请订阅观止云公众号,除了干货什么也没有)
3.2 IPTV
IPTV采用组播方式,直播内容均组播到楼宇交换机,用户通过组播协议来获取直播内容。
IPTV起播延时构成
(1) EPG获取组播地址:几十毫秒级,可以忽略
(2) 获取1个I帧的时间:工程中编码器I帧间隔一般设为2-3秒,因此获得第1个I帧的平均时间为1-1.5秒
(3) 终端编码器重新初始化时间:由于其一般在几十毫秒级,且可以与接受I帧的同时进行,因此可以忽略
(4) 终端播放缓冲区设置:一般为1-2秒;
IPTV起播延时优化
(1) 换台时切换为点对点单播
(2) 媒体服务器将缓存数据加速填满客户端缓冲区
(3) 客户端播放单播数据,并同步开始获取组播数据
(4) 客户端比较单播和组播获取数据,进行单播和组播的平滑切换
3.3 OTT/网络电视直播
OTT直播指采用OTT机顶盒通过互联网观看电视直播,网络电视直播指采用PC、移动端等通过互联网观看电视节目,多采用HLS协议分发,采用CDN加速。
OTT/网络电视直播延时构成
(1) DNS解析:一般几十毫秒
(2) TCP三次握手:一般2个RTT,几十毫秒到几百毫秒
(3) 客户端发送HTTP请求:几十毫秒
(4) 服务器发送数据给客户端,填满客户端的缓冲区:几百毫秒到几秒,取决于用户到服务器的带宽条件
(5) 根据视频和音频的PTS显示:时间可忽略
OTT/网络电视直播延时优化
(1) 将用户调度至正确的CDN边缘
(2) CDN边缘节点推至离用户更近
(3) 采用Keep-Alive方式获取TS切片
(4) 可多线程获取切片文件,加快文件获取速度
(5) 终端播放缓冲区大小合理设置
(都说重要的要来三遍,我们只来两遍:希望了解更多在线视频技术的同学请订阅观止云公众号,除了干货什么也没有)
3.4 互动直播/移动直播
互动直播,指主播直播,且同步和粉丝互动的新型直播形态,对比传统电视直播,加入了互动的元素,引入了观众参与。主播采用PC、手机端即时拍摄,用户采用PC、手机等即时观看,多采用RTMP或HTTP-Flv协议分发,采用CDN加速。
互动直播/移动直播延时构成
(1) DNS解析:一般几十毫秒
(2) TCP三次握手:一般2个RTT,几十毫秒
(3) 服务器准备数据:几十毫秒
(4) 缓冲视频获取数据:几百毫秒到几秒,取决于用户到服务器的带宽条件
(5) 终端解码视音频显示:时间可忽略
互动直播/移动直播延时优化
(1) 将用户调度至正确的CDN边缘直播服务器
(2) CDN边缘节点推至离用户更近
(3) 直播服务器支持Gop-cache,支持缓存直播点之前的媒体数据
(4) 终端可快速获取直播服务器缓存数据,填满缓冲区,开始播放
(5) 设置合理的缓冲区大小
限于篇幅,本篇介绍至此,后续系列文章将分为《直播内容延时和优化方式》、《直播起播延时和内容延时的平衡》两篇继续只聊延时,不谈人生。
是网络直播延时(1):起播延时及优化相关推荐
- 网络直播对企业品牌的影响
品牌传播是扩大营销范围的重要手段,更是企业实现战略目标.提高收益的重要途径.事实上,仅仅有少数的企业意识到品牌传播的重要意义,并借当前网络直播的潮流扩大品牌传播的效应.但是,由于网络直播刚刚兴起,各个 ...
- 运营级低延时网络直播平台建设解决方案
运营级低延时网络直播平台建设解决方案 [简介] 这是一篇专业的运营级低延时网络直播平台建设解决方案,适合进行直播平台建设的专业人士参考. 目 录 第1章 应用简介... 3 第2章 方案的实现原理.. ...
- 低延时的RTMP网络直播
互联网时代的直播需求越来越多,观看直播的人群对直播的要求也越来越高.在百度或谷歌等搜索引擎里输入关键词"网络直播延时",大家的疑问不少: ü 什么软件看直播无延迟? ü 为什么 ...
- 直播中那几秒延时到底来自哪?
简介:7月16日,亚太内容分发大会上,阿里云高级产品运营专家俞翔受邀出席,并分享了基于CDN网络构建超低延时直播的场景实践.以下为演讲原文. 7月16日,亚太内容分发大会上,阿里云高级产品运营专家俞翔 ...
- 腾讯云低延时直播系统架构设计与弱网优化实践
"直播带货"可能是2020年最具代表性的词汇之一,那么传统电商该如何融合直播系统,直播过程如何保障用户的最佳观看体验?本文由腾讯云资深架构师何书照在LiveVideoStack线上 ...
- 开源直播推流sdk_直播中那几秒延时到底来自哪?
7月16日,亚太内容分发大会上,阿里云高级产品运营专家俞翔受邀出席,并分享了基于CDN网络构建超低延时直播的场景实践.以下为演讲原文. 近几年,直播带货已经逐渐走进大众视野.在今年上半年受疫情原因影响 ...
- 网络直播,如何跳出组播的坑!
互联网上的直播,其数据传输方式都采用"单播"方式,所以大家在讨论直播技术时,少有人提及"组播"这个词. 然而,作为直播的组成部分,在广电有线电视.IPTV等应用 ...
- linux mtr运行脚本,使用mtr测试网络丢包率和平均延时的脚本实例
A h4u}+XLFSj0#!/bin/bash r+Q0hW m KH0# 测试网络丢包率和平均延时,注意变量clr和cdt的赋值,不同版本的mtr对应的字段位置不同51Testing软件测试网yS ...
- 实时检测服务器延迟和丢包率脚本,使用mtr测试网络丢包率和平均延时的脚本实例...
mtr(a network diagnostic tool)是一个神奇的指令,能按要求对路由中所有节点进行批量测试.简单敲一个"mtr qq.com"将会有意外收获! 当需要进行产 ...
最新文章
- Linux Kernel TCP/IP Stack — 网卡监控
- Apollo 1 融合 Spring 的三个入口
- 第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(济南)(热身赛)
- MATLAB数字图像处理(一)图像的基本操作
- DFT compiler极简示例2(使用autofix)
- html中实现LED字体步骤记录
- mac忘记mysql初始密码怎么办_Mac下忘记Mysql密码重新设置密码的图文教程
- 学完计算机控制系统的感受,管理信息系统学习心得体会(精选5篇)
- 更改Ubuntu 18.04的时区
- AS3动画效果公式,常用处理公式代码,基本运动公式,三角公式
- 【软件测试】可以写进简历的项目实战内容
- 计算机表示图形的几种方法。
- Micropython进阶小实验 如何用单片机制作鞋码匹配仪
- 'config.h' file not found 的解决方法以及可能遇到的问题
- WinEdt, eso-pic.sty not found
- 为My97DatePicker日期插件设置默认日期
- 小米手机拦截返回音设置不了_为了让自己的手机更好用,我利用了 MIUI 10 的这些功能...
- 有时候我们停下来是为了走的更远
- C#获取网络时间(初学者)
- Oracle 中的定时任务