基于mjpg-streamer远程视频WEB监控 项目笔记二

来源:互联网 发布:淘宝开店要押金么 编辑:程序博客网 时间:2024/05/22 06:41

基于mjpg-streamer远程视频WEB监控 项目笔记二

3140人阅读 评论(7)收藏举报
本文章已收录于:
分类:
作者同类文章X

            mjpg-streamer是基于jpeg库来处理摄像头数据的,因此在移植mjpg-streamer之前必须先移植jpeg库,否则在编译mjpg-streamer时会报告错误。

            现在这里下载jpeg库的源代码和mjpg-streamer源代码:

            jpeg库下载地址:http://download.csdn.NET/detail/laoylhuli/5029006

            mjpg-streamer源代码下载地址:http://download.csdn.Net/detail/laoylhuli/5029022


    1、jpeg库的移植:

    1)、解压源码包

    [html] view plain copy
    print?
    1. #tar zxvf jpegsrc.v8b.tar.gz  
    2)、配置源码

    [html] view plain copy
    print?
    1. #./configure --prefix=/home/laoyl/jpeg --host=arm-none-linux-gnueabi  
    3)、编译

    [html] view plain copy
    print?
    1. #make  
    4)、安装

    [html] view plain copy
    print?
    1. #make install  
    5)、将jpeg库移至开发板

    安装完毕在指定的安装路径下/home/laoyl/jpeg出现了bin include lib share 4个文件夹,将lib目录下的所有库文件移植到开发板根目录下的lib下就可以了


    2、mjpg-streamer源代码移植:

    1)、解压源码包

    [html] view plain copy
    print?
    1. #tar zxvf mjpg-streamer-r63.tar.gz  
    2)、在源码文件夹下,修改顶层的Makefile和plugins中各级目录的Makefile
            CC=gcc
        修改为
            CC=arm-none-linux-gnueabi-gcc        #编译器替换成交叉编译器

    3)、定位jpeg库

            修改plugins/input_uvc/Makfile
           
    修改
            CFLAGS += -O2 -DLINUX -D_GNU_SOURCE -Wall -shared -fPIC
           

            CFLAGS += -O2 -DLINUX -D_GNU_SOURCE -Wall -shared -fPIC -I/home/laoyl/jpeg/include
           
    修改
            $(CC) $(CFLAGS) -ljpeg -o $@ input_uvc.c v4l2uvc.lo jpeg_utils.lo dynctrl.lo
           

            $(CC) $(CFLAGS) -ljpeg -L/home/laoyl/jpeg/lib -o $@ input_uvc.c v4l2uvc.lo jpeg_utils.lo dynctrl.lo

    4)、编译

    [html] view plain copy
    print?
    1. #make  
    当编译完毕之后,会在顶层目录中出现mjpg-streamer和一些input和output的插件库。将这些插件库xx.so全部放到开发板的lib目录下(这样就不用修改开发板lib的环境变量了),并且把mjpg-streamer可执行文件放到开发板的bin目录下,把www文件夹也放到开发板的目录下。

    5)、运行

    在开发板上执行

    [html] view plain copy
    print?
    1. mjpg_streamer -i "input_uvc.so" -o "output_http.so -w /www"  
    如果一切正常则开始了视频传输。

    具体的指令请看start.sh脚本,这个脚本里面包含了一些基本指令,例如打开的视频设备号,和图像是否保存等。

    在火狐浏览器下http://192.168.1.230:8080/?action=stream   (192.168.1.230是自己的开发板ip,不同的开发板ip会不同)。

    在火狐浏览器下http://192.168.1.230:8080/?action=snapshot    (静态图片)

    未完待续,下一讲将介绍如果建立WEB服务器和配置花生壳,利用花生壳剥壳技术实现外网的视频监控。

    0
    1
     
     

    我的同类文章

    http://blog.csdn.net
    • linux进程的挂起和恢复2013-06-21
    • libjpeg库的简单使用使用----jpeg图片解压2013-04-19
    • Boa服务器移植2013-04-13
    • 学习嵌入式linux的路2013-02-24
    • ARM模拟器——SkyEye的使用2013-01-02
    • linux线程介绍2013-05-06
    • libjpeg移植arm2013-04-19
    • ubuntu配置tftp2013-03-07
    • 基于mjpg-streamer远程视频WEB监控 项目笔记一2013-01-26
    • linux时间编程2012-12-28
    更多文章
    0 0
    原创粉丝点击