Skip to content

超低延迟娃娃机抓取播放方案

daniulive edited this page Feb 2, 2018 · 21 revisions

市面上的娃娃机方案五花八门,daniulive认为最简单靠谱粗暴性价比的方案如下:

娃娃机直播方案:

RTMP摄像机-->CDN-->daniulive player(专门针对直播娃娃机开通了“超低延迟”模式,公网实际延迟在200~400毫秒).

娃娃机抓取过程录制方案:

行业内首屈一指的录制方案,利用大牛直播播放端SDK,支持两个摄像头切换过程中(SmartPlayerSwitchUrl)录制到同一个MP4文件,便于用户分享抓取过程或进行申诉。

娃娃机视频管理方案:

利用大牛直播的Windows播放器,同时多窗口播放rtmp摄像机数据,采用轮询播放的方式,有设备发生重连或断线之类,实时统计或者告警,保证前端rtmp摄像机的正常运转。

相关播放器下载:

Windows平台下载

Android平台下载

iOS平台下载

比快更快,效果轻松PK市面上“全球第一、国际领先”的各类技术方案。

感兴趣的请联系QQ 89030985 或 2679481035,或直接致电 130-7210-2209。

最近接到最大的质疑是:为什么只有大牛直播推荐这种rtmp摄像头方案?

回答:我们不是做云服务的,通俗点说,我们不是靠带宽盈利的,我们期望客户采用更稳定靠谱的技术方案,服务于更好的商业模式。

可能的其他方案:

PC机(或工控机)一台或工业主板(android或linux),每个连接两个摄像头。

a) 操作娃娃机的用户,走私有协议,来实现所谓低延迟抓取;

b) 其他观看者,数据传到特定服务器,走标准协议,延迟1-3秒;

c) 部分厂商大肆宣扬的H5直播方案。

为什么我们不采用这个方案:

  1. 码率:

a) 以720*1280分辨率,20帧码流为例,如果以android板件或windows系统编码,再优化的算法也要占用1.2M码流;如果走rtmp摄像头,因为摄像头本身数据压缩率比较高,码流大概占用在0.3至0.4M,也就是说,同一台摄像机,同等分辨率,码流只有windows或android采集摄像头编码的1/4~1/3。

b) 此外,目前大多H5方案是通过websocket或者HTTP,感兴趣的可以下载个实时流量监控软件,一看究竟(这也是为什么好多H5方案的不敢提高分辨率的原因)。

  1. 成本决策:以1M码流一天的流量费用1块钱为例,1000个并发,走PC或工业主板,带宽成本1000元,rtmp摄像机成本250~300元。

  2. 实际上下行带宽:问题来了,上行1.2M的码流好传,还是0.3M更容易抗网络抖动?下行呢?答案不言而喻。

  3. 平台稳定性:娃娃机属于24小时不间断推送的,一般rtmp摄像机,可靠运行60天,出问题的概率远小于PC或工业板件;

  4. 隔离效应:

a) 摄像机单独部署,网线直接接交换机,每个模块独立,相互干扰的可能性为0;

b) PC或工控机连摄像头,普通摄像头(非工业级摄像头)连续运行60天面临功耗和稳定性问题;

c) PC或工控机,托两路,上行带宽2.4M,是不是能一直得到保障?如厂商考虑成本,顺带娃娃机控制模块也跑在这个板件,相互影响的概率是不是增大了?

质疑1:别扯了,我可以用480*640分辨率啊,反正也能满足娃娃机抓取要求,0.6M就够了

回答:是的,两路1.2M,如果rtmp,每一路大概0.13至0.2M,两路0.3至0.4M,如果没有用户抓娃娃,场景不发生变化时候,你关注下哪怕是720*1280分辨率下,rtmp摄像头实际占用码流,小到吓人

质疑2:说了这么多,你们只能用rtmp摄像头吗?

回答:我们有提供android工业主板推两路rtmp数据的方案,问题在于,这个带宽成本和其他风险,你们愿意买单吗?

附录:如何简单粗暴的测试Windows推送端和Windows播放器

附录2:大牛直播Android工业板推两路效果

啥也不说,直接看视频演示

android板件 播放延迟展示

附录3:大牛直播Windows两路推送方案实现: 每台工控机同时连接两个USB摄像头,利用大牛直播的Windows推送SDK,同时推两路rtmp流到CDN或自建服务器即可。