基于V4L2、X264、UDP的webcam应用(本地预监)

4870阅读 0评论2013-12-23 gfvvz
分类:LINUX

              基于V4L2、X264、UDP的webcam应用(本地预监)
    
   
    想了解v4l2读取读取摄像头,然后encode进行传输,decode显示,在网上找到了的一个可以参考的例子基于v4l2的webcam应用, 本地预监》,原文地址http://blog.csdn.net/sunkwei/article/details/6530343,在Ubuntu12.04LTS上进行了初步测试,源代码可在如下地址下载:
         
    另外参考了的另一篇博客基于v4l2的webcam应用, 本地预监(编译过程)
原文地址
http://blog.csdn.net/kangear/article/details/8721068

测试步骤如下:

1.      安装ffmpeg环境,命令:sudo apt-get install ffmpeg

2.      安装libavcodev-dev ,命令:sudo apt-get install libavcodec-dev

3.      安装libswscale-dev,命令:sudo apt-get install libswscale-dev

4.      安装libx264-dev, 命令:sudo apt-get install libx264-dev

5.      修改/usr/include/libavutil/common.h, 添加如下内容。(否则会报c与c++兼容问题)

点击(此处)折叠或打开

  1. #ifndef UINT64_C
  2. #define UINT64_C(value)__CONCAT(value,ULL)
  3. #endif


6.      至此编译程序,会出现错误x11/xlib.h nosuch file or directory

解决方法:

先安装X11,命令为sudo apt-get install libx11-dev

sudo apt-cache search x11-dev,结果如下:

libgl1-mesa-swx11-dev - free implementation of the OpenGL API -- development files

libx11-dev - X11 client-side library (development headers)

libghc-x11-dev - Haskell X11 binding for GHC

libghc6-x11-dev - transitional dummy package

以此安装以上软件包:

sudo apt-get install libghc6-x11-dev

sudo apt-get install libghc-x11-dev

sudo apt-get install libx11-dev

sudo apt-get install libgl1-mesa-swx11-dev

    编译测试:
    在webcam下执行make
        # cd webcam
        # make
    编译可得到服务器端和客户端的应用程序  webcam_server和  webcam_shower
    测试:
    在一个终端执行./webcam_server,开启另一个终端执行./webcam_shower,结果如下:

       
上一篇:《深入理解计算机系统(第2版)》读书笔记
下一篇:《Python基础教程(第2版)》读书笔记