Qualcomm技术论坛
直播中

李丽华

7年用户 1424经验值
私信 关注
[经验]

基于DragonBoard 410c的远程家居监控平台四之远程图像传输(下)

一.背景

这个系列博客博主给大家分享了如何利用motion建立局域网内的基于DragonBoard 410c远程家居监控系统,包括手机远程监控摄像头以及移动物体的实时侦测功能。不过有些童鞋跟博主反馈,motion传输的图像有时会有卡顿现象,今天我们一起来解决这个问题。

二.思路

1.motion卡顿原因分析:

         a.摄像头传输的像素与帧率过大,CPU占用率过高;

b.接了YUV的摄像头,410c内部一直在执行YUV转MJPG动作;

         c.motion的移动侦测功能太灵敏占用过多系统资源。

综上所述,在保证camera的动态图像质量的前提下,最直接的方式就是更换成MJPG流的摄像头,同时根据实际情况降低motion移动侦测的灵敏度(加大移动侦测的像素点个阀值)。实测是可以将CPU占用率从90%降低到60%左右。

但其实,博主今天是想借此推荐一个更轻量级的框架------Mjpg-stremaer

三.Mjpg-stremaer

1.介绍

Mjpg-stremaer跟motion一样,是一款开源的视频流分发处理框架,但相对于motion来说,其代码架构及设计

更加简洁高效。




图1 Mjpg-streamer代码目录





图2 Mjpg-streamer工作流程



2.安装

sudo apt-get update
sudo apt-get install subversion
sudo apt-get install libjpeg8-dev
sudo apt-get install imagemagick
sudo apt-get install libv4l-dev
sudo apt-get install cmake
sudo apt-get install git
git clone https://github.com/jacksonliam/mjpg-streamer.git
cd mjpg-streamer/mjpg-streamer-experimental
make all
sudo make install


3.使用

启动指令:

./mjpg_streamer -i "./input_uvc.so -d /dev/video0
-n -y -f 25 -r 640x480" -o "./output_http.so -n -w /usr/local/www"




PC端打开火狐浏览器(目前仅有两三款浏览器支持MJPG视频流显示),并输入地址:410c的IP:8081
如我这里输入的是192.168.0.101:8081,即可观察到图像(这里因为我们只是构建内网,请保证PC端与410c处于同一网段下,后续会教大家如何开放外网访问)


四.实测效果




图3 客户端实时显示图像

更多回帖

发帖
×
20
完善资料,
赚取积分