【webrtc-streamer】关于webrtc-streamer使用时CPU占用过高处理方式记录

关于webrtc-streamer使用时CPU占用过高处理方式记录

最近项目中需要集成海康、大华等摄像头的视频流进来,从最初的研究海康自带的SDK中demo到现在统一走onvif方式取rtsp流,各种艰辛不再提了,把卡住时间最长的这个问题记录下来供其他小伙伴使用。

摄像头取流:
Onvif方式取到所有摄像头信息

云台控制方式:
通过PTZ方式统一控制云台和调焦

取流显示:
1.传统的ffmpeg方式有很大的一点就是延迟会比较高,而且为了降低延迟要牺牲掉画质和音频流。
2.Gstreamer 也是比较传统的方式,延迟非常低,但是仅限于静态画面,一旦图像发生变化就满脸马赛克…
3.最新的webrtc-streamer方式,下载地址: webrtc-streamer,windows下直接是exe的方式启动,启动后访问本地localhost:8000可以看到管理页面,本地屏幕等流。
如果要抓取rtsp流,可以通过cmd命令启动
webrtc-streamer.exe rtsp://admin:admin@192.168.1.64:554/h264/ch1/main/av_stream
也可以直接访问
http://localhost:8000//webrtcstreamer.html?video=rtsp://admin:admin@192.168.1.64:554/h264/ch1/main/av_stream方式看到画面
此时延迟极低,大概200ms。

问题出现了:当你同时打开多个视频流/访问窗口时,会发现本地CPU以每增加一个增加10%的幅度在上涨,到了70%左右已经打字都非常卡了。这个问题墙内外来回查,也没看见好的解决方案。
在github上一堆参数也没看到有什么帮助…
在这里插入图片描述

直到看issues上有外国老哥儿说在配置文件内发现了-o这个配置,但是没有效果。
procfile
然后突发奇想,在cmd里命令启动exe,加上这个配置参数…

神奇的事情就出现了,同时开7路摄像头画面,webrtc-streamer的进程竟然cpu只占了3%…这他娘的真是个人才,目前不知道这个降低是通过禁止/降低了什么转码内容达到的,但是确实解决了CPU占用太高的问题。

问题解决完成,后续小伙伴们建议搭配-o食用效果更佳。
评论 25
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值