FFmpeg编译安装手记

最近闲下来,整理了自己的 Idea计划表 (又名坑表),准备研究一下关于直播推流这块的“姿势”。一说到直播推流这类涉及视频音频的,就会不由自主的想到伟大的 FFmpeg。FFmpeg 是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。

Tip: 记得更新系统组件和相关编译器(gcc 、 gcc-cc+)哦~

手记的系统是:CentOS 7.1 x86_64

yum install autoconf automake gcc gcc-c++ git libtool make nasm pkgconfig zlib-devel

Yasm :

为什么要安装 Yasm ?
因为 FFmpeg 为了提高速度,使用了汇编指令。安装 Yasm 有助于提高编解码效率。

Yasm 官网:>传送门

#Bash
wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar -xvzf yasm-1.3.0.tar.gz
cd yasm-1.3.0/
./configure
make
make install

CMake-Tool

编译Lib_x265库的时候需要C++编译工具

CMake 官网:>传送门

#Bash
wget https://cmake.org/files/v3.10/cmake-3.10.2.tar.gz
tar -xvzf cmake-3.10.2.tar.gz
cd cmake-3.10.2/
./configure
make
make install

FFmpeg

FFmpeg 官网:>传送门

#Bash
wget http://ffmpeg.org/releases/ffmpeg-3.4.1.tar.bz2
tar -xvf ffmpeg-3.4.1.tar.bz2
cd ffmpeg-3.4.1/
./configure --enable-shared --prefix=/usr/local/ffmpeg
make
make install

Something

[错误] libavdevice.so.57: cannot open shared object file: No such file or directory

原因是lib目录未加载到链接到系统库中(系统ld目录列表在 /etc/ld.so.conf 中)

#Bash    
vim /etc/ld.so.conf.d/ffmpeg.conf
[INSERT] /usr/local/ffmpeg/lib
ldconfig

[PATH] 全局命令 ffmpeg

修改 /etc/profile 文件使其永久性生效,并对所有系统用户生效,在文件末尾加上如下两行代码:

PATH=\$PATH:/monchickey/ffmpeg/bin
export PATH

生效:source /etc/profile

标签: Linux, 音频, FFmpeg, Install, gcc, Yasm, 直播, 推流, 视频

添加新评论