基于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应用程序,下载地址:

http://download.csdn.net/detail/sunkwei/3425209

下面开始交叉编译,编译过程中会遇到几个小问题,一一解决

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的视频远程监控(附上编译好的库文件)_第1张图片
         
4、库文件和编译
          以下转自《  arm mini2440 基于v4l2 ffmpeg x264的视频远程监控》只是修改了原作者的几处笔误。

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


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

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

基于v4l2 ffmpeg x264的视频远程监控(附上编译好的库文件)_第2张图片

你可能感兴趣的:(ffmpeg,h264,v4l2)