FFmpeg音视频处理技术:基于Linux下QT Creator的FFmpeg环境搭建(史上最全)

前言

  阅读本文章的小伙伴需要注意,本作者主要是从4个方面进行FFmpeg环境的搭建(完全适应利用常见操作系统平台进行FFmpeg音视频开发),大家根据需要自行选择相应的环境进行搭建:
(1)Linux(ubuntu)下FFmpeg命令行环境搭建
(2)Windows下FFmpeg命令行环境搭建
(3)Linux(ubuntu)下QT Creator的FFmpeg环境搭建
(4)Windows下QT Creator的FFmpeg环境搭建(后期更新…)

一、Linux(ubuntu)下FFmpeg命令行环境搭建

1、Linux终端输入命令:sudo apt update或sudo apt-get update

2、Linux终端输入命令:sudo apt install ffmpeg或sudo apt-get install ffmpeg

3、测试FFmpeg是否安装成功,Linux终端输入命令:ffmpeg --version,如果出现版本信息,环境安装成功

在这里插入图片描述

4、如果需要卸载FFmpeg,终端输入命令:sudo apt-get purge ffmpeg或sudo apt purge ffmpeg

二、Windows下FFmpeg命令行环境搭建

注:需要去FFmpeg官网下载FFmpeg编译后的包,FFmpeg官网:

http://ffmpeg.org/

1、FFmpeg官网下载相应的包

本作者下载的是:FFmpeg4.2.2版本,大家可以根据实际需要下载相应的版本,如果找不到想要的版本,可以利用以下网址:http://ffmpeg.org/releases/
在这里插入图片描述

2、将下载好的FFmpeg包里的bin文件添加到系统环境变量Path里

在这里插入图片描述

3、测试下载好的FFmpeg环境,Windows下命令行工具cmd,输入命令:ffmpeg -version,如果出现版本信息,环境安装成功

在这里插入图片描述

4、可以测试一下能不能播放视频,cmd命令行工具输入:ffplay -x 800 -y 1000 C:/Users/lenovo/Desktop/meeting_01.mp4

在这里插入图片描述

在这里插入图片描述

三、Linux(ubuntu)下QT Creator的FFmpeg环境搭建

注:由于本作者非FFmpeg专业,故参考以下博主(CSDN名:雲天之巔,博客号:qq214517703)发布的文章和视频链接进行环境搭建(其中本作者删减了H265编码部分),如有侵权,请原作者联系QQ:35175419,本作者会及时删除以保护原创者的合法权益

博主文章链接:

https://blog.csdn.net/qq214517703/article/details/106500008

博主视频链接:

https://www.bilibili.com/video/BV1Sz411v7Wm/?spm_id_from=888.80997.embed_other.whitelist&t=767&vd_source=8c0e94c43c8556178a1925558ef1ae3e

1、下载FFmpeg资源依赖包

(1)yasm包

链接:
http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz

(2)nasm包

链接:
https://www.nasm.us/pub/nasm/releasebuilds/2.14.02/nasm-2.14.02.tar.bz2

(3)x264包

链接:
http://ftp.videolan.org/pub/videolan/x264/snapshots/

(4)x265包(可以根据需要进行下载)

链接:
http://ftp.videolan.org/pub/videolan/x265/

2、将下载好的yasm、nasm、x264、x265拷贝到虚拟机中并解压

在这里插入图片描述

3、开始安装FFmpeg依赖环境

(1)安装yasm
第一步:进入yasm文件中,打开终端,输入命令:./configure

在这里插入图片描述
在这里插入图片描述

第二步:终端继续输入命令:make或sudo make进行编译

在这里插入图片描述

第三步:终端继续输入命令:make install或sudo make install(注:最好使用sudo提升权限)进行下载

在这里插入图片描述

(2)安装nasm
第一步:进入nasm文件中,打开终端,输入命令:./configure

在这里插入图片描述
在这里插入图片描述

第二步:终端继续输入命令:make或sudo make

在这里插入图片描述

第三步:终端继续输入命令:make install或sudo make install(注:最好也要加sudo提升权限)

在这里插入图片描述

(3)安装cmake(x265编码构建时需要,由于本作者未用x265,故可安装也可不安装),打开终端,输入命令:sudo apt install cmake -y或apt install cmake -y

在这里插入图片描述

(4)编译x264静态库
第一步:进入x264文件下,打开终端,输入命令:./configure --enable-static --prefix=…/x264 --enable-pic

在这里插入图片描述

第二步:终端继续输入命令:sudo make -j16或make -j16

在这里插入图片描述

第三步:终端继续输入命令:sudo make install或make install

在这里插入图片描述

(5)下载FFmpeg源码,并开始安装FFmpeg环境(注:之前装的FFmpeg命令行环境和这里装的FFmpeg环境不冲突)
第一步:下载FFmpeg源码,并拷贝到虚拟机中进行解压

在这里插入图片描述
在这里插入图片描述

第二步:进入FFmpeg-6.0文件夹,打开终端,输入命令:export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:…/x264/lib/pkgconfig

在这里插入图片描述
在这里插入图片描述

第三步:终端继续输入命令:./configure --enable-shared --enable-nonfree --enable-gpl --enable-pthreads --enable-libx264 --prefix=…/ffmpeg

在这里插入图片描述

第四步:终端继续输入命令:sudo make -j64或make -j64 //这一步花的时间比较多

在这里插入图片描述

第五步:终端继续输入命令:sudo make install或make install

在这里插入图片描述
##########################至此整个环境搭建完成 ##########################

  编译完成后,发现在路径下生成了ffmpeg文件夹(前面第三步),这是之前在编译时生成,该文件里生成了相应的动态库和静态库等
在这里插入图片描述

4、Linux下QT Creator搭建FFmpeg环境

(1)Linux下搭建QT Creator环境
本作者链接:https://blog.csdn.net/Mr_zhang1911116/article/details/132184656?spm=1001.2014.3001.5502
(2)QT Creator搭建FFmpeg环境
第一步:建立QT Creator工程(本作者工程命名:QT_Test),将之前生成的ffmpeg文件拷贝到QT_Test项目文件中

在这里插入图片描述

第二步:在QT_Test项目文件QT_Test.pro中,导入FFmpeg库
导入的内容如下:
INCLUDEPATH += $$PWD/ffmpeg/include
LIBS +=-L$$PWD/ffmpeg/lib -lavcodec -lavutil -lavformat -lavdevice -lavfilter -lpostproc -lswresample -lswscale
#注:-L是指在指定路径下,$$PWD是指当前路径

在这里插入图片描述

第三步:在主界面文件dialog.cpp(当然可以根据实际情况选择在哪个文件中添加)中,加入FFmpeg库文件
导入的内容如下:
extern "C"{
    
    
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#include <libswscale/swscale.h>
#include <libavutil/imgutils.h>
#include <libswresample/swresample.h>
}   //可以根据自己需要进行添加即可,由于ffmpeg是C的库,故需要extern “C”进行引入

在这里插入图片描述

第四步:在程序文件中,调用任意一个库函数,例如:av_version_info()//打印版本信息函数,然后运行整个QT_Test工程,如果出现版本信息,说明环境安装完成

在这里插入图片描述

四、Windows下QT Creator的FFmpeg环境搭建

后期更新!!!

猜你喜欢

转载自blog.csdn.net/Mr_zhang1911116/article/details/132202952