Centos7下安装FFmpeg最全踩坑记录
Posted 学如逆水行舟
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos7下安装FFmpeg最全踩坑记录相关的知识,希望对你有一定的参考价值。
环境准备
开始安装
ffmpeg -loglevel error -y -i Mp4视频绝对路径 -threads 5 -c:v libx264 -hls_time 20 -hls_list_size 0 -c:a aac -strict -2 -f hls xxx.m3u8
- 常用的配置项解释
- -loglevel error 定义日志的输出级别
- -threads 定义线程数
- -y 覆盖
- 首先安装ffmpeg源码包,依旧是老三步:
./configure
make
make install
install 完成后,配置到环境变量即可
- 上述命令是最基础的源码包编译安装的过程,当然针对ffmpeg没那么简单,如果想实现mp4转m3u8我们还需要安装很多依赖库。同时编译命令也需要换成下面这个
./configure --prefix=/opt/app/ffmpeg --enable-version3 --enable-libvpx --enable-libmp3lame --enable-libvorbis --enable-libx264 --enable-libxvid --enable-shared --enable-gpl --enable-postproc --enable-nonfree --enable-avfilter --enable-pthreads
# --prefix:指定安装目录
# --enable-xxxx:开启一系列的依赖
- 如果不出意外那么一定会出意外,报错各种依赖库缺少,下面我已经整理出来了大部分,大家可以缺什么,装什么,然后返回执行2中到configure即可
-
yasm
-
lame
-
libogg
-
libvorbis
-
nasm
-
x264
- 下载地址:https://code.videolan.org/videolan/x264.git
- 安装方式:git clone下来或者网络不好直接访问链接下载压缩包,然后继续老三步
-
xvidcore
-
特殊问题一:如果安装了某个依赖库,但是configure ffmpeg的时候依旧还是报错,那么需要:
echo /usr/local/lib >> /etc/ld.so.conf; ldconfig
- 特殊问题二:当一切依赖库都已经安装完成,不再报错那个xxx依赖not found了之后,执行ffmpeg命令的时候又报错:
- 第一步:通过命令查看一下ffmpeg的依赖:
ldd ffmpeg
,就会发现什么什么.so not found - 第二步:搜索一下在哪:
find / -name libavdevice.so.58
,找到所在位置后只需要添加到全局环境变量即可,例如添加到/etc/profile,export LD_LIBRARY_PATH=xxx.so所在的那个目录
,然后在执行一下source /etc/profile即可 - 第三步:在执行ffmpeg命令即可
以上是关于Centos7下安装FFmpeg最全踩坑记录的主要内容,如果未能解决你的问题,请参考以下文章