目录
工具简介
适配初衷
第三方模块适配问题
源码代编译问题
最后完美运行如图
工具简介
屏幕截图web端展示功能、视频设备如摄像头、视频流等接入,并可web端展示。
适配初衷
这样的工具如果能完美运行在嵌入式linux上是极好的,目前仅适配了windows,所以决定适配下树莓派。
第三方模块适配问题
1.qwebapp比较简单,直接qmake编译就可生成;
2.opencv440比较费劲,这里选择了捷径,使用了网络上编译好的410动态库,参考(1条消息) 树莓派编译opencv4_Hello_wshuo的博客-CSDN博客_树莓派 opencv编译时 设置虚拟内存;
3.ffmpeg直接源码编译即可,首先源码编译h264,然后编译ffmpeg。可以参考树莓派ffmpeg 编译_CindyWangry的博客-CSDN博客_树莓派编译ffmpeg
configure的时候可能会报mmal的问题,直接将--enable-mmal去掉即可。
源码代编译问题
1.screen()->geometry()有问题,换成qApp->primaryScreen()->geometry()即可。
编译完成后运行./screenviewer:
2.动态库找不见:libmmal_core.so。
解决:全局搜索,发现该库在/opt/vc/lib下,于是将/opt/vc/lib放在/etc/ld.so.conf中并sudo ldconfig使其生效。
3.opencv依赖libjasper提示没找到。
执行以下命令即可解决:
sudo apt install libjasper1 libjasper-dev
4.因为使用到了qmultimedia与qwebsocket,而树莓派安装qt时默认没有安装这些库,所以手动安装:
sudo apt-get install libqt5multimedia5 libqt5multimedia5-plugins
sudo apt-get install libqt5websockets5-dev
最后完美运行
web截图
直播推流: