Android + Mini2440 无线网络视频监控系统 mjpg-streamer的移植

发布者:TranquilSilence最新更新时间:2024-06-24 来源: elecfans关键字:Android  Mini2440  mjpg-streamer  移植 手机看文章 扫描二维码
随时随地手机看文章

一、环境

主机环境 :Ubuntu 10.10
        目标机 :FS2410(S3C2410)
        主机工具链 :gcc-4.4.5
        交叉工具链 :arm-none-linux-gnueabi-gcc-4.3.2
        摄像头 :ZC301

二、移植过程

1、配置内核是内核支持芯片为ZC301的摄像头
        Make menuconfig
                Device Drivers ---> 
                        <*> Multimedia support --->
                                <*> Video For Linux 
                                [*] Enable Video For Linux API 1 (DEPRECATED) (NEW)
                                [*] Video capture adapters (NEW) --->
                                        [*] V4L USB devices (NEW) ---> 
                                                <*> USB Video Class (UVC) 
                                                [*] UVC input events device support (NEW)
                                        <*> USB ZC0301[P] webcam support (DEPRECATED)

2、重新编译内核

make zImage

通过上面两个步骤就可以驱动我们的摄像头了。但是这个驱动是基于V4l2的。以前基于V4L的一些上层应用就不能用了,或需要做大量的修改!这里我们要实现网络视频的功能,以前都是用servfox这个网络视频服务器,但是这个服务器就是基于V4L的,我们如果想用的话就得对servfox的源码进行修改。这里我们选用另外一种方案mjpg-stream。

3、mjpg-stream的移植

关于mjpg-stream的资料大家可以在下面这个网址查看:

http://sourceforge.net/apps/mediawiki/mjpg-streamer/index.php?title=Main_Page 
        mjpg-stream的移植需要jpeg的库,所以我们先移植jpeg的库

(1)jpeg库的移植

        1)jpeg源码包通过下面这个网址下载
                http://www.ijg.org/files/jpegsrc.v8b.tar.gz
                2)解压源码包
                tar xvf jpegsrc.v8b.tar.gz
                3)配置源码
                cd jpeg-8b
                ./configure --prefix=/home/linux/s3c2410-2.6.35/video/jpeg --host=arm-none-linux-gnueabi
                4)编译
                make
                5)安装
                make install
                6)拷贝库到文件系统中
                cp //home/linux/s3c2410-2.6.35/video/jpeg /lib/libjpeg.so.8 /source/rootfs/lib

(2)mjpg-stream的移植

        1)mjpg-stream源码包通过下面这个网址下载
                http://sourceforge.net/projects/mjpg-streamer/ 
                2)解压源码
                tar xvf mjpg-streamer-r63.tar.gz
                3)修改源码
                cd mjpg-streamer-r63
                修改顶层makefile及plugins目录中的各级makefile将所有
                CC=gcc
                修改为
                CC=arm-none-linux-gnueabi-gcc

        修改plugins/input_uvc/Makfile
                修改
                CFLAGS += -O2 -DLINUX -D_GNU_SOURCE -Wall -shared -fPIC
                为
                CFLAGS += -O2 -DLINUX -D_GNU_SOURCE -Wall -shared -fPIC -I/home/linux/s3c2410-2.6.35/video/jpeg/include
                修改
                $(CC) $(CFLAGS) -ljpeg -o $@ input_uvc.c v4l2uvc.lo jpeg_utils.lo dynctrl.lo
                为
                $(CC) $(CFLAGS) -ljpeg -L/home/linux/s3c2410-2.6.35/video/jpeg/lib -o $@ input_uvc.c v4l2uvc.lo jpeg_utils.lo dynctrl.lo

         jpeg_utils.c:27: fatal error: jpeglib.h: No such file or directory
                4)编译
                make
                5)测试
                mkdir /source/rootfs/mjpg
                cp *.so /source/rootfs/mjpg
                cp mjpg-stream /source/rootfs/bin

        打开开开发板运行
                mjpg_streamer -i '/mjpg/input_uvc.so' -o '/mjpg/output_http.so -w /www'
                在源码目录下有start.sh,这个脚本里有一些mjpg-stream的使用方法及说明

        打开一个网页输入下面地址就能够看到一个视频(开发板的IP为192.168.1.202):
                http://192.168.1.202:8080/?action=stream 
                打开一个网页输入下面地址就能够看到一个静态图片:
                http://192.168.1.202:8080/?action=snapshot 
                6)在mjpg源码下有一个www的目录,这个一个网络使用mjpg的实例,结合web服务器(boa)可以实现一些其他相关功能。


关键字:Android  Mini2440  mjpg-streamer  移植 引用地址:Android + Mini2440 无线网络视频监控系统 mjpg-streamer的移植

上一篇:Android + Mini2440 无线网络视频监控系统 SQLite的移植
下一篇:Android + Mini2440 无线网络视频监控系统 Android客户端程序

推荐阅读最新更新时间:2024-11-05 09:47

linux-2.6.32在mini2440开发板上移植 LCD背光控制
编者:lcd的背光控制,其实就是一个I/O口的驱动,其和led控制如出一辙,甚至更是简单,因为一般都是同时控制几个LED,这里就这是一个。标准的入门级驱动。这个不多说,按照手册来。这里的I/O端口是GPG4. 1 LCD 背光控制原理 在mini2440/micro2440 开发板中,LCD 背光是通过CPU 的LCD_PWR 引脚来控制的,从原理图中可以看出,它对应于GPG4,当LCD_PWR 输出为高电平“1”时,将打开背光;当输出为低电平“0”时,将关闭背光(注意:这里只是打开和关闭背光,而并没有背光亮度的调节作用)。 2 在内核中添加背光驱动程序 现在,我们需要增加一个简单的背光驱动,以便能够通过软件便可简单的控制背光
[单片机]
linux-2.6.32在<font color='red'>mini2440</font>开发板上<font color='red'>移植</font> LCD背光控制
Google Android打开IC开源大门
  围绕Google的最新Android移动操作系统,2008年全球移动大会上推出了许多新品,其中TI、高通等发布了早期试用版。但是Android的演示(基于Linux,开放移动平台),引发了许多问题。   一个公开的问题是:在与手机应用处理器一样极具竞争力的市场,作为“开源”半导体制造商意味着什么?几个半导体制造商是开放手机联盟(一组技术和移动公司致力于使用Android平台部署手机和服务)的积极成员,其中包括领先的手机芯片制造商博通、TI和高通。   这些公司向Android平台贡献了他们的低层次驱动和库,还承诺开放源代码模式。他们将使得全面的源代码可以对每个人开放,包括他们的竞争者。这样就提出了了一些问题,以至于需要数年
[焦点新闻]
基于Android的车载监控管理系统设计
1 概述 随着3G业务在中国的全面铺开,智能手机性能和用户群体的不断上升,将互联网强大的应用服务能力扩展到终端上,为用户随时随地的提供信息服务是社会信息化发展的必然趋势。GIS技术也由传统的基于单机应用向基于互联网应用做转变。随着智能手机的迅猛发展,智能手机平台将成为GIS技术互联网应用新的应用平台。 2 Android Android 是基于Linux内核的操作系统,是Google 公司在2007 年11 月5 日公布的手机操作系统,早期由Google 开发,后由开放手持设备联盟(Open Handset Alliance)开发。它采用了软件堆层(software STack,又名以软件叠层)的架构,主要分为三部分。底层Linu
[嵌入式]
屏下指纹识别安卓手机预计2018年夏天量产
  7月1日消息 此前高通骁龙在2017世界移动大会上宣布推出下一代超声波指纹解决方案Qualcomm指纹传感器,在上一代指纹技术基础上实现全新增强特性,包括面向显示屏、玻璃和金属的传感器、定向手势检测、水下指纹匹配和设备唤醒。下面就随手机便携小编一起来了解一下相关内容吧。   具体来说,面向显示屏的指纹传感器能透过厚至1200微米的OLED显示屏实现指纹的扫描、录入和匹配;面向玻璃和金属的指纹传感器可透过厚至800微米玻璃面板和厚至650微米铝材质外壳实现扫描的解决方案,在上一代400微米的玻璃或金属穿透能力之上实现提升。   在之前的报道中,我们未能知晓高通新一代超声波指纹解决方案具体的量产计划,而不久前,业内分析师@孙昌旭
[手机便携]
分析师预计明年平板电脑市场可达249亿美元
摩根大通分析师马克·莫斯考维茨(Mark Moskowitz)预计,2011年平板电脑市场的规模将达到249亿美元,2012年将达到341亿美元,苹果仍将占据市场主导地位。   莫斯考维茨认为,尽管平板电脑的概念已经诞生了10年,但直到今年1月苹果发布iPad,这种设备才成为主流消费电子产品之一。iPad树立了业界难以企及和超越的标准。   他说:“我们预计,苹果的统治地位将一直持续到市场发展的中期,但随着技术进步和元件成本的降低,其他厂商将能够生产出‘足够好’的产品,与苹果展开竞争。由于Android 3.0将于明年春天发布,2011年下半年平板电脑市场的竞争将十分激烈。”   但是,Android操作系统的升级并不能使
[手机便携]
未来或问世智能钞票 移植无线芯片有效预防假币
科学家最新研究可将RFID芯片植入纸张之中,为未来研制智能纸币奠定基础   据国外媒体报道,从宾馆毛巾至足球毛线衫,都可以标记无线射频识别(RFID)芯片。目前,科学家最新研究可将RFID芯片植入纸张之中,为未来研制智能纸币奠定基础。   美国北达科达州立大学一支研究小组最新研制这种装配RFID芯片的智能纸片,潜在可应用于法律文件、入场券、包装标签和钞票,研究人员称,这项技术能够有效预防诈骗和伪装。   虽然无线射频识别纸已存在,其它领域仍依赖于较厚的芯片,导致纸张厚重、表面不平,让人们无法打印。然而,北达科达州立大学研究小组最新研制一种工艺叫做“激光激活先进包装”,能够制造超薄硅质芯片,无缝植入纸张之中。   这一工艺使用等离子
[安防电子]
可以升级Android 13的三星Galaxy设备清单
日前发布的第 2 个 Android 13 开发者预览版中引入了大量新的功能,更强的隐私管控、更优秀的交互体验。如果你正在使用三星品牌的手机,那么你手头上正在使用的手机能否升级到 Android 13 呢?国外科技媒体 Wccftech 近日盘点汇总了可以升级到 Android 13 的三星设备清单。   清单列表如下:   Galaxy S 系列 ● Galaxy S22 Ultra ● Galaxy S22+ ● Galaxy S22 ● Galaxy S21 FE ● Galaxy S21 Ultra (LTE/5G) ● Galaxy S21+ (LTE/5G) ● Galaxy S21 (LTE/5G) ● Gal
[手机便携]
移植strace调试工具到arm平台
strace工具是一个非常强大的工具,是调试程序的好工具。要移植到arm平台,就需要使用交叉编译工具编译生成静态链接的可执行文件。具体步骤如下:1.下载 strace-4.5.16 移植strace调试工具到arm平台 由Linux系统中文网(Linux521.com)编辑收集整理,除Linux521注明原创文章外,其版权归原作者所有。如果您在学习中遇到问题欢迎在下面的评论中留言,我们会尽全力解答您的问题。 strace工具是一个非常强大的工具,是调试程序的好工具.要移植到arm平台,就需要使用交叉编译工具编译生成静态链接的可执行文件.具体步骤如下: 1.下载 strace-4.5.16.tar.bz2;下载
[单片机]
<font color='red'>移植</font>strace调试工具到arm平台
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

更多往期活动

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved