?1.X264 ?2.X265
?3.fdk-acc ?4.ffmpeg-4.3 5.demo ?
1.X264
?
#windows \n\t linux \n 不一样 #库都是在环境变量中
#安装前要先安装
sudo apt-get install build-essential
sudo apt-get install nasm
sudo apt-get insall yasm
sudo apt-get insall make cmake
sudo apt-get insall diffutils
sudo apt-get insall 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
?
#进入到 cd X265/build/linux/
#运行./make-Makefiles.bash
?
make -j32 #32线程编译
make install
3.fdk-acc
?
#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
4.ffmpeg-4.3
?
./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
|