Linux下 ffmpeg-4.1.3版本的安装以及简单的程序测试
准备工具也可以先安装ffmpeg,等到报错的时候再去安装报错的库。安装ffmpeg前还需要一些安装好一些工具:yasm libx264-dev libx265-dev libmp3lame libopus-dev libfdk-aac-dev cmake mercurial上面直接用sudo apt-get install 来获取例如:sudo apt-get install cmake...
·
本人系统Ubuntu16.04
准备工具
也可以先安装ffmpeg,等到报错的时候再去安装报错的库。
安装ffmpeg前还需要一些安装好一些工具:
yasm libx264-dev libx265-dev libmp3lame libopus-dev libfdk-aac-dev cmake mercurial
上面直接用sudo apt-get install 来获取
例如:sudo apt-get install cmake mercurial
若没有可以从我的网盘自己拿需要的,然后安装方法看下面:
网盘:
链接:https://pan.baidu.com/s/1bD7d6Fytd_kAvrLt4942Wg
提取码:kqpf
X265安装方法:
cd x265/build/linux
cmake -G "Unix Makefiles" -DENABLE_SHARED:bool=off ../../source
make
make install
编译完成可以make clean掉
其它包的安装方式都是一样的,如下:
解压
cd 进目录(x265需要进入)
./configure
sudo make
sudo make install
编译完成可以make clean掉
开始安装ffmpeg
1、下载ffmpeg包,我是从官网下载的4.1.3版本,也可以从我的网盘下载
链接:https://pan.baidu.com/s/1bD7d6Fytd_kAvrLt4942Wg
提取码:kqpf
2、解开并进入目录
tar -xvf ffmpeg-4.1.3.tar.bz2
cd ffmpeg-4.1.3
3、生成Makefile
注:安装有如有报错,解决方法请参考https://blog.csdn.net/weixin_38890593/article/details/94736651
执行./configure
//我这里不选择任何参数,全部默认安装
//不想默认安装就加--prefix=等参数,自己指定路径等等
一般默认路径是/usr/local
4、编译
sudo make
sudo make install
编译完成,查看/usr/local/lib和/usr/local/include是否生成ffmpeg的库
如下图,可以看到很多ffmpeg的库
5、编译完成后,下面来进行简单的测试
建一个test1.c文件
测试代码一、
#include <stdio.h>
#include <libavutil/avstring.h>
#include <libavutil/eval.h>
#include <libavutil/mathematics.h>
#include <libavutil/pixdesc.h>
#include <libavutil/imgutils.h>
#include <libavutil/dict.h>
#include <libavutil/parseutils.h>
#include <libavutil/samplefmt.h>
#include <libavutil/avassert.h>
#include <libavutil/time.h>
#include <libavformat/avformat.h>
#include <libavdevice/avdevice.h>
#include <libswscale/swscale.h>
#include <libavutil/opt.h>
#include <libavcodec/avfft.h>
#include <libswresample/swresample.h>
int main(int argc, char* argv[])
{
printf("this is a test program for ffmpeg\n");
av_register_all();
return 0;
}
编译方法
1、终端输入生成test可执行文件
gcc test1.c -o test -I /usr/local/include -L /usr/local/lib -lavutil -lavformat -lavcodec -lavutil -lswresample -lm -lrt -lpthread -lz
2、终端输入
./test
如下图,顺利编译通过!
测试代码二、
#include <stdio.h>
#include <libavutil/avstring.h>
#include <libavutil/eval.h>
#include <libavutil/mathematics.h>
#include <libavutil/pixdesc.h>
#include <libavutil/imgutils.h>
#include <libavutil/dict.h>
#include <libavutil/parseutils.h>
#include <libavutil/samplefmt.h>
#include <libavutil/avassert.h>
#include <libavutil/time.h>
#include <libavformat/avformat.h>
#include <libavdevice/avdevice.h>
#include <libswscale/swscale.h>
#include <libavutil/opt.h>
#include <libavcodec/avfft.h>
#include <libswresample/swresample.h>
int main(int argc, char* argv[])
{
printf("this is a test program for ffmpeg\n");
printf("%s", avcodec_configuration());
getchar();
return 0;
}
编译方法请参照例一!
更多推荐
已为社区贡献3条内容
所有评论(0)