在zedboard上移植和搭建嵌入式网络摄像机mjpg-streamer。具体步骤如下:

来自:http://write.blog.csdn.net/postedit/13741451

1.安装libtool工具

1.1 下载libtool工具libtool-2.2.10.tar.gzhttp://mirrors.ustc.edu.cn/gnu/libtool/

1.2  tar -xvzf libtool-2.2.10.tar.gz -C /home/xzy/sdb1/JPEG/

1.3  进入解压后的目录,执行./configure

1.4  make

1.5  make install


2.JPEG编码库移植

2.1 下载JPEG源码包,选择jpegsrc.v6b.tar.gz    http://www.ijg.org/files/

2.2  解压  tar jpegsrc.v6b.tar.gz  -C /home/xzy/sdb1/JPEG/

2.3  进入解压后的目录,将刚刚libtool-2.2.10目录下的libltdl/config/config.sub和config.guess拷贝至此目录中。

2.4  配置./configure CC=arm-xilinx-linux-gnueabi-gcc  --host=arm-unknown-linux 

–prefix=/home/xzy/sdb1/JPEG/jpeg-6b  --enable-shared   --enable-static

2.5  make

2.6  进入安装路径,创建如下目录   mkdir bin lib include man man/man1,我的安装目录就在这个目录,注意必须要创建这些目录,不然是不然make install的(试过了。)

2.7  make install,然后就ok了。


3.mjpg-streamer移植

3.1 下载源码http://sourceforge.net/projects/mjpg-streamer/files/mjpg-streamer/Sourcecode/

3.2     解压tar -xvzf mjpg-streamer-r63.tar.gz  -C  /home/xzy/sdb1/JPEG/


3.3 进入解压后的目录,修改./plugins/input_uvc目录下的Makefile文件

修改1:将CFLAGS += -O2 -DLINUX -D_GNU_SOURCE -Wall -shared -fPIC改为
CFLAGS += -O2 -DLINUX -D_GNU_SOURCE -Wall -shared -fPIC -I
/home/xzy/sdb1/JPEG/jpeg-6b/include


修改2:

将$(CC) $(CFLAGS) -ljpeg -o $@ input_uvc.c v4l2uvc.lo jpeg_utils.lo dynctrl.lo改为
$(CC) $(CFLAGS) -ljpeg –L
/home/xzy/sdb1/JPEG/jpeg-6b/lib -o $@ input_uvc.c v4l2uvc.lo jpeg_utils.lo dynctrl.lo



3.4 
编译make CC=arm-xilinx-linux-gnueabi-gcc,出错


提示找不到linux/videodev.h,原因是在2.6.38内核以后移除了对v411的支持,新的头文件是linux/videodev2.h

修改mjpg-streamer-r63/plugins/input_uvc/v4l2uvc.h

修改mjpg-streamer-r63/plugins/input_uvc/uvcvideo.h

修改mjpg-streamer-r63/plugins/input_uvc/input_uvc.c

修改mjpg-streamer-r63/mjpg_streamer.c

修改mjpg-streamer-r63/plugins/output_file/output_file.c

修改mjpg-streamer-r63/plugins/output_http/output_http.c

修改mjpg-streamer-r63/plugins/input_testpicture/input_testpicture.c

修改mjpg-streamer-r63/plugins/output_autofocus/output_autofocus.c

修改mjpg-streamer-r63/plugins/input_gspcav1/spcav4l.h

修改mjpg-streamer-r63目录下的Makefile文件,将$(CC) $(CFLAGS) $(LFLAGS) $(OBJECTS) -o $(APP_BINARY)改为$(CC) $(CFLAGS) $(OBJECTS) $(LFLAGS) -o $(APP_BINARY)

mjpg-streamer-r63/目录下执行make CC=arm-xilinx-linux-gnueabi-gcc

编译还是出错,如下图,但是已经生成了一些lib文件,具体错误的原因有待查明。

ls 看一下:

拷贝出我们需要的mjpg_streamer,output_http.so,input_uvc.so,已经libjpg的一些库,有如下

4测试

启动demo系统,拷贝那些lib到/usr/lib下面去,mkdir /www/camwww这个目录,插好网线和usb摄像头。

运行./mjpg_streamer -i "/usr/lib/input_uvc.so -yuv" -o  "/usr/lib/output_http.so -p 8080 -w /www/camwww"

我的摄像头那里必须要有-yuv,不然报错

_http.so -p 8080 -w /www/camwww"
MJPG-streamer [726]: starting application
MJPG Streamer Version.: 2.0
MJPG-streamer [726]: MJPG Streamer Version.: 2.0

i: Using V4L2 device.: /dev/video0
MJPG-streamer [726]: Using V4L2 device.: /dev/video0

i: Desired Resolution: 640 x 480
MJPG-streamer [726]: Desired Resolution: 640 x 480

i: Frames Per Second.: 5
MJPG-streamer [726]: Frames Per Second.: 5

i: Format............: MJPEG
MJPG-streamer [726]: Format............: MJPEG

Unable to set format: Invalid argument
 Init v4L2 failed !! exit fatal 
 i: init_VideoIn failed
MJPG-streamer [726]: init_VideoIn failed

还有需要注意的是:最好直接把摄像头插在路由器上我插在没有外接电源的HUB不能成功 ,不然报错

Unable to start capture: No space left on device(设备空间不足)
i: Error grabbing frames

如果出现下面的就成功了,

用Mozilla Firefox来打开 202.38.214.211/?action=stream就可以了看到下面的情景。

 有点慢,可能是一秒传送的帧数比较少,5帧。

用360浏览器和ie打开就是显示和boa服务器那样的图片。另外还有一些问题没有解决,也没有喝Boa服务器结合使用。


zedboard--嵌入式网络摄像机(mjpg-streamer)的移植和搭建(二十二)的更多相关文章

  1. Java基础学习笔记二十二 网络编程

    络通信协议 通过计算机网络可以使多台计算机实现连接,位于同一个网络中的计算机在进行连接和通信时需要遵守一定的规则,这就好比在道路中行驶的汽车一定要遵守交通规则一样.在计算机网络中,这些连接和通信的规则 ...

  2. OpenStack入门篇(二十二)之实现阿里云VPC的SDN网络

    1.修改/etc/neutron/neutron.conf配置 [root@linux-node1 ~]# vim /etc/neutron/neutron.conf [defalut] ... co ...

  3. Redis源代码分析(二十二)--- networking网络协议传输

    上次我仅仅分析了Redis网络部分的代码一部分,今天我把networking的代码实现部分也学习了一遍,netWorking的代码很多其它偏重的是Clientclient的操作.里面addReply( ...

  4. 嵌入式Linux驱动学习之路(二十二)用内存模拟磁盘

    安装驱动后,可在/dev/目录下发现已经生成了相应的设备文件. 格式化设备:mkdosfs /dev/ramblock. 挂载设备. 读写设备 . 驱动程序代码: /***************** ...

  5. 【原创】go语言学习(二十二)网络编程

    目录 TCP/IP协议介绍 GO快速实现TCP服务端 GO快速实现TCP客户端 UDP协议介绍 UDP编程实例 TCP/IP协议介绍 1.互联网起源 A. 起源于美国五角大楼,它的前身是美国国防部高级 ...

  6. Atitit 智能云网络摄像机的前世今生与历史 优点  密码默认888888

    Atitit 智能云网络摄像机的前世今生与历史 优点  密码默认888888 用户名admin  密码aaaaaa 网络摄像机是一种结合传统摄像机与网络技术所产生的新一代摄像机,它可以将影像通过网络传 ...

  7. 【RL-TCPnet网络教程】第1章 当前主流的小型嵌入式网络协议栈

    第1章   当前主流的小型嵌入式网络协议栈 这几年物联网发展迅猛,各种新产品.新技术也是层出不穷,本章节就为大家介绍当前主流的小型嵌入式网络协议栈. 1.1  当前主流的嵌入式网络协议栈 1.2  u ...

  8. 基于uIP和uC/OS-II嵌入式网络开发

    基于uIP和uC/OS-II嵌入式网络开发 ——uIP主动发送数据分析 摘要:uIP协议栈简单易用,可以为16位单片机或者是更低级的处理器使用,占用的资源很少,相关移植网上有详细介绍,本文主要讨论uI ...

  9. LwIP协议栈开发嵌入式网络的三种方法分析

    LwIP协议栈开发嵌入式网络的三种方法分析   摘要  轻量级的TCP/IP协议栈LwIP,提供了三种应用程序设计方法,且很容易被移植到多任务的操作系统中.本文结合μC/OS-II这一实时操作系统,以 ...

随机推荐

  1. (15) go 方法

  2. 湖南大学ACM程序设计新生杯大赛(同步赛)A - Array

    题目描述 Given an array A with length n  a[1],a[2],...,a[n] where a[i] (1<=i<=n) is positive integ ...

  3. 洛谷P3168 [CQOI2015]任务查询系统 [主席树,差分]

    题目传送门 任务查询系统 题目描述 最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分.超级计算机中的任务用三元组(Si,Ei,Pi)描述,(Si,Ei,Pi)表示任 ...

  4. 关于 Unity 的一些小细节,不注意可能会被“坑”一些时间。

    关于 Unity 的一些小细节,不注意可能会被"坑"一些时间. 最近因为一些"小"问题,总是需要找很久的原因,总结一下 UnityEngine.Input 在使 ...

  5. 网页后门工具laudanum

     网页后门工具laudanum laudanum是Kali Linux预先安装的Web Shell工具.它支持多种Web后台技术,如ASP.ASP.net .JSP.PHP.Coldfusion.它提 ...

  6. Failed to add VMware DC to zone due to : This DC is being managed by other CloudStack deployment.

    1.下载VMware-PowerCLI 2.安装VMware-PowerCLI 安装过程中会重复重启,请确认重启,不要设置稍后手动重启. 3.在开始,菜单中选择 vmware ->VMware ...

  7. HDU4893【线段树单点、区间更新】

    题目链接[http://acm.hdu.edu.cn/showproblem.php?pid=4893] 题意:输入n.q.表示有n个数,初始化默认这n个数都为零,有q次操作,操作种类分为三种:1.输 ...

  8. [Codeforces 1060F] Shrinking Tree

    Link: 传送门 Solution: 原来CF的官方题解也能鸽啊…… 详细题解 该题思路: 1.对于每个点删边方案数为$fac[n-1]$,总贡献为每种方案下满足的概率的和,接下来直接求贡献 2.每 ...

  9. 【BZOJ2763/洛谷p4563】【分层图最短路】飞行路线

    2763: [JLOI2011]飞行路线 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 4630  Solved: 1797[Submit][Stat ...

  10. 2015 UESTC 数据结构专题G题 秋实大哥去打工 单调栈

    秋实大哥去打工 Time Limit: 1 Sec  Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/contest/show/59 Descr ...