基于v4l2 ffmpeg x264的视频远程监控(附上编译好的库文件)

说明:主要是基于ghostyu网友整理的《 arm mini2440 基于v4l2 ffmpeg x264的视频远程监控》。自己做了一遍,遇到不少问题,就整理记录下来。


 

1、平台

硬件:arm mini2440,usb摄像头(UVC免驱)

软件:ubuntu12.10,arm-Linux-gcc v4.4.3

 

2、源文件

功能体验包:http://download.csdn.net/detail/kangear/5202160

--------------------------------------------------

源码编译包:

ffmpeg-1.0.tar.bz2 (ghostyu用的是-0.10.1版本的不过我没有编译通过,改为1.0的可以编译通过了)

last_x264.tar.bz2 (Git clone git://git.videolan.org/x264.git 获得 )

zlib-1.2.5.tar.gz (mini2440中没有libz.so,但是程序运行时需要这个库支持,所以下载源文件交叉编译)

网友sunkwei写的webcam应用程序,下载地址:

下面开始交叉编译,编译过程中会遇到几个小问题,一一解决
3、功能体验
         ARM版本的库和应用程序都已经打包,可以直接运行,也可以自己编译。对应包中的kangear_webcam/Server/arm目录下的webcam.tar.gz,解压后对应的目录如下:

 

webcam-|

               |_Server    //arm端的可执行程序加源码

               |_ffmeg      //制作好的库文件(包括ffmpeg,x264,zlib,用于编译或者应用程序的运行)

               |_webcam  //在开发板上运行此shell脚本会设置一些环境变量并运行Server目录下的webcam_server。


        这个包解压后放到开发板上,把webcam这个shell脚本中的ip改成linux pc的ip就可以运行了。
        关于PC端的显示程序可以参考《基于v4l2的webcam应用, 本地预监(编译过程)》,安装PC端的环境。然后在kangear_webcam/Client执行make就可以运行webcam_shower。(这个Client程序我加入了LINUX PC的IP自动获取,不需要再改IP)。
         运行效果:
         基于v4l2 ffmpeg x264的视频远程监控(附上编译好的库文件)
         
4、库文件和编译
          以下转自《 arm mini2440 基于v4l2 ffmpeg x264的视频远程监控》只是修改了原作者的几处笔误。

。。。最后想了想还是好好整理一下,单独写一篇文章吧。整理好就可以安心研究源码了。

 

(20130809补充)关于USB摄像头型号:

   很多人问我关于摄像头型号的问题,主要是说zc301的不支持,我今天没有事,就特意再次试了一下,确实是不支持的:

基于v4l2 ffmpeg x264的视频远程监控(附上编译好的库文件)

上一篇:机器学习 基础理论 学习笔记 (8)特征选择(feature selection)(一)


下一篇:mysql 存储过程,以及mybatis如何调用