当前位置:首页 > 嵌入式培训 > 嵌入式学习 > 讲师博文 > S5PV210 上mjpg_streamer的移植

S5PV210 上mjpg_streamer的移植 时间:2018-09-28      来源:未知

本文的目的在与通过S5PV210板利用usb摄像头实现视频或图片捕获,mjpg_streamer的移植就是其中一种方法;并且本文重点在mjpg_streamer的移植,zImage和根文件系统的的制作与开发板的运行已省略,此三项请参考其他文档;

 

材料: Ubuntu 12.04.5 LTS 虚拟机

       S5PV210开发板一块

       USB摄像头一个

       jpegsrc.v8b.tar.gz压缩包

       mjpg-streamer-code-182.zip压缩包

       交叉编译工具链  toolchain-4.5.1-farsight.tar.bz2

       可能用到(usb转口驱动)

  

文档导读:

             

      1.jpeg库的移植;                          12%

      2.mjpg_streamer的移植                     39%

      3.开发板运行                               65%

      4.打开开发板运行mjpg_streamer             67%

      5.从网页上查摄像头工作情况                 88%

 

 

1. jpeg库的移植;

 

(1) 在ubuntu的home目录下建立一个Videos目录;

          mkdir    Videos          

(2) 把下载好的jpegsrc.v8b.tar.gz放入Videos目录下并解压;

             tar  -xvf  jpegsrc.v8b.tar.gz 

(3) 配置源码;

         cd jpeg-8b    

       进入解压后的目录执行下列命令

 ./ configure  --prefix =/home/lpf/Videos/jpeg-8b    --host= arm-none-linux-gnueabi 

(4)  编译

       make  

(5)  安装

           make install

(6) 进入lib目录并把所有.so文件拷贝到/opt/rootfs/lib/目录下

            cp  libjpeg.so.*  /opt/rootfs/lib/

(7) 到此为开发板运行时的根文件系统的jpeg库准备完成.

 

 2.mjpg_streamer的移植

    

(1) 把下载好的mjpg-streamer-code-182.zip放入Videos目录并解压;

               unzip  mjpg-streamer-code-182.zip

(2) 进入mjpg-streamer-code-182下的mjpg-streamer目录; 

               cd  mjpg-streamer-code-182/mjpg-streamer

 

(3) 修改当前目录下及plugins 目录下的各级Makefile ;

        ①  将上述的Makefile 中的

       CC = gcc

    修改为

       CC = arm-none-linux-gnueabi-gcc

   

    ② 修改plugins/input_uvc/Makefile

         修改

     CFLAGS += -O1 -DLINUX -D_GNU_SOURCE -Wall -shared -fPIC 

          为

     CFLAGS += -O1 -DLINUX -D_GNU_SOURCE -Wall -shared -fPIC -I/home/lpf/Videos/jpeg-8b/include     

          

       注:/home/lpf/Videos/jpeg-8b/include  为你的jpeg中的include下文件路径

      

 修改

     $(CC) $(CFLAGS)  -o $@ input_uvc.c v4l2uvc.lo jpeg_utils.lo dynctrl.lo 

  为

    $(CC) $(CFLAGS) -L/home/lpf/Videos/jpeg-8b/lib -o $@ input_uvc.c v4l2uvc.lo jpeg_utils.lo dynctrl.lo 

          

        注:/home/lpf/Videos/jpeg-8b/lib为你的jpeg中的lib下文件路径

 

(4) 编译(回到 mjpg-streamer-code-182/mjpg-streamer)执行

          make 

       目的: 生成mjpg_streamer的.so文件

 

(5) 进入/opt/rootfs目录下创建mjpg目录

         cd  /opt/rootfs/

         mkdir   mjpg

   

(6) 拷贝文件(回到mjpg-streamer-code-182/mjpg-streamer)

       cp    mjpg_streamer /opt/rootfs/bin/

       cp    *.so  /opt/rootfs/mjpg/

       cp    www/  -raf  /opt/rootfs/     

 

(7)到此:为开发板板准备的jpeg库和mjpg_streamer文件完毕;

 

3. 开发板运行

       略

4. 在开发板运行mjpg_streamer

 

 ./mjpg_streamer -i “/mjpg/input_uvc.so -d/dev/video3” -o “/mjpg/output_http.so -w.www”

     

 注:video3  为你的usb接口 若一切ok,你的摄像头指示灯会亮;

 

5. 从网页上查摄像头工作情况(注: 192.168.7.106 为你的ubuntu地址);

      (1). 打开一个网页输入如下指令就能看到图片;

            http:/192.168.7.106:8080/?action=snapshot

 

      (2). 打开一个网页输入如下指令就能看到视频;

            http:/192.168.7.106:8080/?action=stream

  

 补充:若环境不同,移植细节可能会有差异,请灵活处理!!

上一篇:PHP使用Memcache实现数据缓存

下一篇:C语言中的typedef新解

热点文章推荐
华清学员就业榜单
高薪学员经验分享
热点新闻推荐
前台专线:010-82525158 企业培训洽谈专线:010-82525379 院校合作洽谈专线:010-82525379 Copyright © 2004-2022 北京华清远见科技集团有限公司 版权所有 ,京ICP备16055225号-5京公海网安备11010802025203号

回到顶部