OneNET视频能力体验------使用树莓派摄像头推流
手里有树莓派和摄像头的同学,可以来体验一波OneNET的视频能力整个流程比较简单,只需要修改几个配置文件,都不用自己写代码就可以搞定
----------------------
目的:把树莓派摄像头变成一个onvif摄像头,并通过OneNET sdk推流。
简述:因为ONENET视频SDK的demo是支持onvif camera的,因此把树莓派的摄像头变成一个支持onvif camera的摄像头,然后在ubuntu中运行OneNET的sdk,并修改config.json文件,就可以直接推流到OneNET了。
实现方法:
使用官方Raspberry Pi相机,通过rtsp传输h264视频。树莓派上使用了硬件h264编码,还用到了live555
硬件准备:
树莓派 *1
树莓派摄像头OV5647 *1
步骤流程:
一:把树莓派变成一个支持onvif的ip camera
1、在树莓派上执行“rasps-config”命令,在config中去打开camera,并重启树莓派
2、安装NODEJS和Live555
[*]curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
3、使用git clone命令直接获取源代码
[*]git clone https://git***.com/BreeeZe/rpos.git
(请把***替换掉)
4、进入RPOS目录
[*]cd rpos
5、安装插件模块,这个命令会把package.json里面的依赖给安装上
[*]npm 1nstall
(1要换成i)
6、使用本地Gulp模组编译
[*]./node_modules/gulp/bin/gulp.js
7、重编译RTSP服务器。其中源代码放在cpp文件夹中,执行下面的脚本进行编译。
[*]sh setup_v4l2stspserver.sh
8、如果你想修改ONVIF服务器的端口的话,可以去修改文件rpsoConf.json
9、以管理员身份来执行程序
[*]sudo node rpos.js
之后就可以使用onvif device manager来查看摄像头实时传输的视频了
http://upfiles.heclouds.com/forum-app/2018/03/12/4f2bc52d241dad38b28bdd543c9ed62d.png
10、可以登录http://rpos-ip:8081来修改配置(前面是树莓派的ip地址)
另:如果图像传输不稳定容易中断,可调低图像传输的分辨率。建议使用640*480或320*240
[*]cd lib
[*]gedit camera.js
修改代码的第35行,将Width和Height分别修改为320和240就可以。
二:使用OneNET sdk推流
https://open.iot.10086.cn/bbs/static/image/hrline/line1.png
注:如果还没有使用过ubuntu推流的同学可以参考这篇文章:
https://open.iot.10086.cn/bbs/thread-20004-1-1.html
1、进入ubuntu系统,打开命令行窗口,进入开发目录,修改配置文件
[*]rm ont_device_ctx
[*]gedit config.json
(ont_deivce_ctx这个文件会记录上次设备的信息,因此在修改设备id之后需要删除,在编译后会重新生成)
然后将config.json里面的信息改为树莓派的onvif设备ip地址
2、返回sdk目录,直接输入命令 sh videosamplebuild.sh,即可开始生成项目文件。
3、进入开发目录,输入以下两个命令,在输入这两个命令后,能够在OneNET开发者中心设备管理栏中看到该设备上线(会有一个小绿点提示)
[*]cd bin/
[*]./sample_ov5640
3、进入OneNET开发者中心,打开该产品,点击设备管理
再点击播放即可
https://open.iot.10086.cn/bbs/static/image/hrline/line5.png
OVER
写得不对的地方,欢迎一起指正探讨
------------------------
贴一个交叉编译,移植SDK的例子
https://blog.csdn.net/jo_joe/article/details/79628963
OneNET视频推流------使用树莓派交叉编译工具
页:
[1]