------------------------------------全系列文章目录------------------------------------
以下为本人在搭建ffmpeg开发环境时遇到的问题和解决方法
-
下载源码:https://launchpad.net/ubuntu/+source/ffmpeg/7:4.4.1-3ubuntu5
选择某个版本,比如:ffmpeg_4.4.1.orig.tar.xz
-
解决运行时的lib依赖:https://blog.csdn.net/shizhe0123/article/details/93733802
-
编译ffplay和SDL:https://blog.csdn.net/lbaihao/article/details/53148788
-
SDL运行出问题:https://blog.csdn.net/quantum7/article/details/104672966
-
SDL编译报错:https://blog.csdn.net/Arpenx/article/details/75044498
-
开发环境搭建模板:https://blog.csdn.net/wawayu_0/article/details/80564349
-
开发模板
FFMPEG = /home/odin/ffmpeg/output # ffmpeg编译输出的文件夹 SDL = /usr/local # SDL编译输出的文件夹 CC = gcc SRC_DIR = src INC_DIR = inc OUT_DIR = output # ffmpeg和SDL头文件路径 CFLAGS += -g -I $(FFMPEG)/include \ -I $(SDL)/include/SDL2 \ -I $(INC_DIR) # ffmpeg和SDL编译出来的库文件路径 LDFLAGS += -L$(FFMPEG)/lib/ -lswscale -lswresample -lavformat -lavdevice -lavcodec -lavutil -lavfilter -lm \ -L$(SDL)/lib/ -lSDL2 -lm SRC += main.cpp $(SRC_DIR)/*.cpp TARGETS = $(OUT_DIR)/main all: $(TARGETS) $(TARGETS):$(SRC) $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS) clean: rm -rf $(TARGETS)
#include <stdio.h> #include "libavformat/avformat.h" #include "SDL2/SDL.h" int main(int argc, char **argv) { if (avformat_network_init()) { /*初始化音视频格式网络连接*/ printf("init avformat error !\n"); } if (SDL_Init(SDL_INIT_VIDEO)) { /*初始化SDL*/ printf("init SDL error: %s !\n", SDL_GetError()); } return 0; }