1.X264
2.X265
3.fdk-acc
4.ffmpeg-4.3
5.demo
1.X264
![](https://i-blog.csdnimg.cn/blog_migrate/ecd0ef41167fe8a4c8d177111d983121.png)
#windows \n\t linux \n 不一样 #库都是在环境变量中
#安装前要先安装
sudo apt-get install build-essential
sudo apt-get install nasm
sudo apt-get install yasm
sudo apt-get install make cmake
sudo apt-get install diffutils
sudo apt-get install pkg-config
#1. 解压
tar -xvf x264-master.tar.bz2
cd x264-master #进目录
#2.设置配置
./configure --enable-shared --prefix=/usr/ #设置配置项,
make -j32 # 32线程进行编译
#编译完成界面如下
make install #安装到 /usr/lib下的
2.X265
![](https://i-blog.csdnimg.cn/blog_migrate/389984f0a93cd9c1e4d271d1177af1ac.png)
#进入到 cd X265/build/linux/
#运行./make-Makefiles.bash
make -j32 #32线程编译
make install
![](https://i-blog.csdnimg.cn/blog_migrate/943b3882633f1b10fe297622bd7b93a1.png)
3.fdk-acc
![](https://i-blog.csdnimg.cn/blog_migrate/1822068f06a8d42c06d8fcebbbd1ba02.png)
#cd /fdk-aac/
# ./autogen.sh 生成config文件
./autogen.sh:
#错误: autoreconf: not found
sudo apt-get install autoconf automake libtool
#编译成动态链接库,并设定路径
./configure --enable-shared --prefix=/usr/
#编译和安装
make -j32
make install
![](https://i-blog.csdnimg.cn/blog_migrate/13cbf88701753256ebce1de8ef97940a.png)
4.ffmpeg-4.3
![](https://i-blog.csdnimg.cn/blog_migrate/5fbc815287b582e175ece474a86b3a19.png)
./configure --prefix=/usr/ --enable-shared --disable-programs --disable-ffplay --disable-ffmpeg --disable-ffprobe --enable-libx264 --enable-gpl --enable-libfdk-aac --enable-nonfree --enable-libx265
make -j32
sudo make install
5.demo
1.在frist_ffmpeg下创建一个makefile文件,内容如下
first_ffmpeg:first_ffmpeg.cpp
g++ $^ -o $@ -lavcodec
2.写一个frist_ffmpeg.cpp文件
/ first_ffmpeg.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include <iostream>
using namespace std;
extern "C" { //指定函数是C语言,函数名不包含重载标注
#include<libavcodec/avcodec.h>
}
//预处理指令导入库
#pragma comment(lib,"avcodec.lib")
int main()
{
std::cout << "Hello World!\n";
cout << avcodec_configuration() << endl;
}
3.运行
# 1 对前面的makefile make
make
# 2 复制lib
cp /usr/local/lib/libx265.* /usr/lib/
# 3 运行
./first_ffmpeg