系统环境说明: Ubuntu12.10.由于不同版本的发行版,apt-get安装的库的版本是不一样的,特别对于ffmpeg来说不同版本API变更很大,会导致编译不过去!
想学习这个v4l2的webcam的应用。但是东西太多了,在《基于v4l2的webcam应用, 本地预监》好不容易找到一个可以学习的例子,有了源代码编译怎么编译都不会。真是无语。(参考「1」)
不过总算编译完了,写下来:
1.下载源代码
http://download.youkuaiyun.com/detail/sunkwei/34252092.安装ffmpeg环境,命令:sudo apt-get install ffmpeg 。过程如下:
如果出现应用程序编译不过说明是ffmpeg版本过低的问题,需要手动编译ffmpeg-1.0库,这里有个脚本:
#!/bin/sh# ffmpeg install shell script.# author: kangear# time : 2014-06-03# 1. download sourcetest -f ffmpeg-1.0.tar.gz || wget http://www.ffmpeg.org/releases/ffmpeg-1.0.tar.gz &&# 2. tar and cd dir.tar -xzvf ffmpeg-1.0.tar.gz && cd ffmpeg-1.0 &&# 3.config# 配置过程中缺什么,下载什么,直到配置完成。例如提示缺少yasm:apt-get install yasm./configure --enable-gpl --enable-shared --enable-pthreads &&# 4. buildmake &&# 5. installmake install &&make install-libs
3.安装libavcodev-dev ,命令:sudo apt-get install libavcodec-dev 过程如下:
4.安装libswscale-dev,命令:sudo apt-get install libswscale-dev 过程如下:
5.安装libx264-dev, 命令:sudo apt-get install libx264-dev 过程如下:
另:版本为123,如果出现找不到函数的问题,请源码编译该库.
6.修改/usr/include/libavutil/common.h, 添加如下内容。(否则会:报c与c++兼容问题 参考「
2」)
#ifndef UINT64_C #define UINT64_C(value)__CONCAT(value,ULL) #endif
7.试试:
再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.youkuaiyun.com/jiangjunshow