索引地址:系列教程索引地址
FFmpeg开发需要完整(不完整也行)的C/C++知识。
软件配置:
我的操作系统是Manjaro Linux,所有的软件直接从Manjaro软件仓库中安装,保持更新。
Makefile
如果是纯C/C++开发的话,使用Makefile或者CMake编译。
模板Makefile文件:
CMake
如果使用cmake编译的话:
Qt配置
如果使用Qt开发(我用的就是Qt),在*.pro文件中添加:
1
2
3
4
5
6
7
8
9
10
11
|
unix{
#FFmpeg部分
INCLUDEPATH+=/usr/include
LIBS += -L/usr/lib \
-lavcodec -lavdevice -lavfilter -lavformat -lavutil -lpostproc \
-lswresample -lswscale
#SDL2部分
INCLUDEPATH+=/usr/include/SDL2/
LIBS+=-L/usr/lib \
-lSDL2
}
BASH
|
这样Qt会自动寻找头文件和库文件位置.
在文件中包含头文件以便编程时使用:
1
2
3
4
5
6
7
8
9
10
11
12
|
extern "C"{
#include "libavcodec/avcodec.h"
#include "libavfilter/avfilter.h"
#include "libavformat/avformat.h"
#include "libavutil/avutil.h"
#include "libavutil/ffversion.h"
#include "libswresample/swresample.h"
#include "libswscale/swscale.h"
#include "libpostproc/postprocess.h"
}
#include "SDL2/SDL.h"
CPP
|
参考资料
FFmpeg开发时会遇到不会等地方,最好的参考手册就是官方等手册.
官方教程:官方教程
官方在线参考手册:官方在线参考手册(带搜索功能)
本系列GitHub项目地址(源代码):ffmpeg_beginner
下一篇:FFmpeg5开发入门教程01:编译
ref:FFmpeg5开发入门教程00:准备 - 食铁兽 - FFmpeg/Linux/OpenCV/Qt/VAPSXT/VxWorks/Wayland编程入门技术分享 (feater.top)