linux安装FFMPEG库

本文详细介绍了在Linux环境下,如何一步步安装ffmpeg 4.4,包括下载安装包、解压、配置、编译、安装及检查安装成功的过程。此外,还讲解了在程序中使用ffmpeg时的编译步骤,确保相关库文件的正确引用,并提供了问题排查方法。适合Ubuntu和Debian用户参考。
摘要由CSDN通过智能技术生成

最开始需要安装相关依赖库

$ apt-get install build-essential git-core checkinstall yasm texi2html

$ apt-get install libvorbis-dev libx11-dev libvpx-dev libxfixes-dev zlib1g-dev pkg-config

$ apt-get install netcat libncurses5-dev

一、使用wget下载ffmpeg4.4安装包

$ wget http://ffmpeg.org/releases/ffmpeg-4.4.tar.bz2

二、解压

$ tar jxvf ffmpeg-4.4.tar.bz2

三、进入解压后生成的ffmpeg-4.4文件夹

四、运行configure文件

./configure --enable-shared --enable-swscale --enable-gpl --enable-nonfree --enable-pic --enable-version3 --enable-postproc --enable-pthreads --enable-static --enable-libvorbis --enable-libvpx

五、编译

make -j8

六、安装

make install

七、检查是否安装成功

ffmpeg -version

如出现类似于下列的情况,证明安装成功:

ffmpeg -version
ffmpeg version 4.0 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.4) 20160609
configuration: --enable-version3 --enable-postproc --enable-libvorbis --enable-libvpx
libavutil      56. 14.100 / 56. 14.100
libavcodec     58. 18.100 / 58. 18.100
libavformat    58. 12.100 / 58. 12.100
libavdevice    58.  3.100 / 58.  3.100
libavfilter     7. 16.100 /  7. 16.100
libswscale      5.  1.100 /  5.  1.100
libswresample   3.  1.100 /  3.  1.100

如出现下列情况,证明有问题:

./ffmpeg: error while loading shared libraries: libavdevice.so.58: cannot open shared object file: No such file or directory

解决方法如下:

1、通过ldd ffmpeg命令查找缺少的库

    $ldd ffmpeg 

	linux-vdso.so.1 (0x0000fffc106b0000)
	libavdevice.so.58 => not found
	libavfilter.so.7 => not found
	libavformat.so.58 => not found
	libavcodec.so.58 => not found
	libpostproc.so.55 => not found
	libswresample.so.3 => not found
	libswscale.so.5 => not found
	libavutil.so.56 => not found
	libm.so.6 => /lib64/libm.so.6 (0x0000fffc105b0000)
	libpthread.so.0 => /lib64/libpthread.so.0 (0x0000fffc10570000)
	libc.so.6 => /lib64/libc.so.6 (0x0000fffc103e0000)
	/lib/ld-linux-aarch64.so.1 (0x0000fffc106c0000)

2、使用find命令查找库

# find / -name 'libavdevice.so.58' 

/root/ffmpeg-4.3/libavdevice/libavdevice.so.58 
/home/ffmpeg/lib/libavdevice.so.58

第三行是指安装包里的so文件,不是我们要的

第四行是指安装后生成的so文件位置,是我们想要的

3、引用相关目录

在/etc/profile文件中的最后增加如下内容

export LD_LIBRARY_PATH=/home/ffmpeg/lib/

保存后退出,在终端输入命令:

# source /etc/profile

最后再次输入ffmpeg -version,提示安装成功

问题解决。

八、如何编译用到ffmpeg的程序

1、找到ffmpeg对应的所有.h文件,一般在/usr/local/include中,将其复制到你的程序目录下,可用一个include文件夹装起来后一起复制到程序目录,如下图

2、找到ffmpeg对应的所有.a .so文件,一般在/usr/local/lib中(找不到的话,可以用find / -name搜索),将其复制到你的程序目录下,可用一个lib文件夹装起来后一起复制到程序目录,如下图

 

编写对应的cmake,编译 执行


总结
      本文介绍了如何在linux安装ffmpeg,在ubuntu debian系统尝试后均有效。

  • 5
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值