ubuntu下安装FFmpeg和OpenCV

Posted 果果小师弟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ubuntu下安装FFmpeg和OpenCV相关的知识,希望对你有一定的参考价值。

一个好的程序猿就要做到尽量使用现成的东西做开发,减少精力,减少时间,甚至提高稳定性。

FFmpeg和OpenCV对比

  • 区别:OpenCV专注处理图像,以及图像相关的处理应用,不严谨地可以认为是PhotoShop。Opencv主要做一些识别 跟踪机器视觉应用。FFmpeg专注处理视频、音频的编解码、转换等,不严谨地可以认为是格式工厂和PotPlayer的结合体。主要应用是编解码,各种格式转换。

  • 联系:opencv的视频编解码部分是使用的ffmpeg,都可以处理图像和视频的编解码。

一、安装FFmpeg

1、进入usr目录下

cd usr/

2、进入管理员权限

sudo su

3、创建ffmpeg4.1文件夹

mkdir ffmpeg4.1/

4、赋权限

chmod 777 -R ffmpeg4.1/

5、将shared文件夹中的内容拷贝至ffmpeg4.1中

cp ffmpeg-4.2.3.tar.bz2 x264-snapshot-20191024-2245-stable.tar.bz2 nasm-2.14.02.tar.bz2 yasm-1.3.0.tar.gz sqlite-autoconf-3380500.tar.gz /usr/ffmpeg4.1/ -r

二、安装yasm

1、接着上面的操作,进入到ffmpeg4.1中

cd ffmpeg4.1/

2、解压yasm-1.3.0.tar.gz

tar xvzf yasm-1.3.0.tar.gz

3、进入到yasm-1.3.0

cd yasm-1.3.0/

3、配置信息,生成Makefile

./configure

4、编译安装

make && make install

三、安装nasm

1、接着第一步的操作,进入到ffmpeg4.1文件夹中中解压nasm-2.14.02.tar.bz2

tar xvf nasm-2.14.02.tar.bz2

2、进入到nasm-2.14.02

cd nasm-2.14.02

3、配置信息,生成Makefile

./configure

4、编译和安装

make && make install

4、进入ffmpeg4.1文件夹安装其他依赖

1、安装cmake

apt install cmake -y

2、进入ffmpeg4.1解压x264后进入x264目录

tar xvf x264-snapshot-20191024-2245-stable.tar.bz2
cd x264-snapshot-20191024-2245-stable

3、配置信息,生成Makefile

./configure --enable-static --prefix=../x264 --enable-pic 

4、编译安装(只编译静态库)

make -j16
make install

5、解压ffmpeg-4.2.3后进入ffmpeg-4.2.3

tar xvf ffmpeg-4.2.3.tar.bz2
cd ffmpeg-4.2.3

6、编译ffmpeg

export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:../x264/lib/pkgconfig

7、配置信息,生成Makefile

./configure --enable-shared --enable-nonfree --enable-gpl --enable-pthreads --enable-libx264 --prefix=../ffmpeg 

8、编译和安装

make -j32
make install

9、配置ffmpeg环境变量:gedit ~/.bashrc

export FFmpeg_PATH=/usr/ffmpeg4.1/ffmpeg 

10、需要让os能够找到 ffmpeg ffprobe等命令

export PATH=$FFmpeg_PATH/bin:$PATH 

11、需要提供路径, 让ffmpeg ffprobe等命令找到需要的依赖

export LD_LIBRARY_PATH=$FFmpeg_PATH/lib:$LD_LIBRARY_PATH 

12、让脚本生效

source ~/.bashrc

5、ffmpeg是否安装正确

ffmpeg -version

6、安装opencv

1、在/home/zhiguoxin/下新建opencv文件夹,将源码拷贝至opengcv文件夹后解压

cd /home/zhiguoxin/
mkdir opencv
chmod 777 -R opencv/
cd opencv/
cp opencv-3.4.12.zip /home/zhiguoxin/opencv/
unzip opencv-3.4.12.zip

2、安装各种依赖

在安装依赖之前建议先执行下面这两条命令

sudo apt-get update
sudo apt-get upgrade
  • sudo apt-get update 从服务器获取软件列表,并在本地保存为文件。这个命令,会读取软件仓库的所有源列表,然后保存在本机。方便本机用户检索、对比。
  • sudo apt-get upgrade 本地安装软件与本地软件列表对比,如本地安装版本低,会提示更新。将本地安装软件与本地软件列表对比,如本地安装版本低,会提示更新。

然后执行下卖弄命令安装opencv所需要的依赖

sudo apt-get install build-essential
sudo apt-get install libavcodec-dev
sudo apt-get install libavformat-dev
sudo apt-get install libswscale-dev
sudo aptitude install libgtk2.0-dev     
sudo apt-get install libjpeg.dev    
sudo apt-get install libtiff5.dev 
sudo apt-get install libjasper-de 

3、在opencv目录下创建build文件夹

mkdir build

4、进入build文件夹

cd build

5、使用cmake编译参数

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..

6、使用make创建编译(时间很长)

sudo make -j4

7、安装

sudo make install

8、修改 opencv.conf 文件

sudo gedit /etc/ld.so.conf.d/opencv.conf

打开后的文件是空的,添加 opencv 库的安装路径:/usr/local/lib ,保存退出

/usr/local/lib

9、执行如下命令使得刚才的配置路径生效

sudo ldconfig  

10、修改 bash.bashrc 文件

sudo gedit /etc/bash.bashrc  

11、在bash.bashrc 文件最末尾添加

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig  
export PKG_CONFIG_PATH  

12、保存退出,执行如下命令使得配置生效

source /etc/bash.bashrc  

13、更新一下

sudo updatedb 

14、至此所有的配置都已经完成。不放心的话可以查看一下opencv版本信息

pkg-config --modversion opencv

以上是关于ubuntu下安装FFmpeg和OpenCV的主要内容,如果未能解决你的问题,请参考以下文章

Ubuntu16.4下QT配置opencv3.1+FFmpeg

Ubuntu安装编译OpenCV一键脚本(带ffmpeg)

ubuntu14.04安装opencv2.4.13报错 -fPIC

[ubuntu][原创]ubuntu16.04 安装gstreamer0.10-ffmpeg正确方法

Ubuntu 9.10下安装和使用ffmpeg的详细过程!

RedHat下安装OpenCV]