开发前言
最近在折腾直播,这是个很繁琐的工作.这都不是问题,问题在于web端的播放问题
;与App,小程序等采用rtmp
播放而言,web端
是个很累人的活.
鉴于国内厂商恶心的video劫持这种勾当,我们只考虑微信webview内联播放,除了白名单外不考虑如QQ或UC之类浏览器.
目标:
打造一个全新的播放器,重点的是移动端直播/点播时候的流量控制,及直播时自动追帧到最新画面,保证直播的实时性.
无奈的选择hls:
flv
是最优的直播/点播格式,延迟极低,开发方便.
但众所周知的是Apple
如神经质般的死活不支持MSE
,导致hls
成了唯一的选择.
比较庆幸的是,我开发的直播服务端的hls延迟被我压缩到了5s
左右,相对hls
而言算是很低的延迟了,通常都是20s
.
服务器端:
采用我独立开发的直播程序,可以将接收的客户端rtmp/rtsp推流转发出rtmp/rtsp/hls/flv/mp4/fmp4/ts/dash等多种协议,以便播放.
web播放器:
目前市面上国内外的开源播放器非常多,比如