代码改变世界

什么是网络直播延时:起播延时及优化

2016-11-26 14:42  JG2014  阅读(728)  评论(0编辑  收藏  举报
1一、直播延时 直播延时主要分为直播起播延时,直播内容延时。 直播起播延时:从发出指令,到显示画面,所消耗的时间。 直播内容延时:用户端播放的画面和现场画面的时间差。 二、各类直播的起播延时 起播延时超过1s,用户能明显感觉到停顿,影响主观体验。 各种直播类型的起播延时见下: 1 三、各类直播起播延时的构成及优化 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 (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)设置合理的缓冲区大小