我是靠谱客的博主 呆萌豆芽,最近开发中收集的这篇文章主要介绍CentOS7下 ffmpeg编译安装CentOS7下 ffmpeg编译安装,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

CentOS7下 ffmpeg编译安装

本文主要讲述centos7下ffmpeg源码编译安装的过程,我自己安装过程中遇到很多问题,搜了些资料,感觉不少文章写的都不是很完整,因此本文主要是基于自己的经验进行ffmpeg源码编译安装。

获取ffmpeg源码

既然是ffmpeg源码编译安装首先要获取ffmpeg的源码,该源码从官网上就可以获取,http://ffmpeg.org/download.html,可以直接选择下载主页上的最新源码,也可以下载过去的版本。ffmpeg的版本更新比较快,因此建议还是使用新的ffmpeg。当前时间2020年6月,ffmpeg官网上下载的最新版本为4.2.3(感慨一下ffmpeg版本更新真的快,去年12月刚接触ffmpeg的时候最新版源码是4.2.1,才过去半年就更新了连两个版本)

安装ffmpeg相关依赖

ffmpeg是一套多媒体解决方案,对于不同的应用场景需要安装不同的依赖,对于主流的音视频的编码格式来说,包括hevc,h264,aac,mp3等,ffmpeg源码就包含了其对应的软件解码器,但对于编码来说,ffmpeg主要只有aac音频的编码器,因此如果需要使用ffmpeg进行音视频编码的话(主要有转码加滤镜等功能)需要根据自己的编码格式安装对应的编码器,例如需要将h264编码格式的视频转码为hevc格式的视频就需要安装hevc的编码器,但h264的解码器不是必须的。对于转封装,如.mp4转换成.flv,ffmpeg不需要安装别的依赖,不过可以在安装参数中设置disable取消其安装,可以减少不必要的编译时间和编译后文件大小。

我在初学过程中,经常看到网上的文章要装一堆依赖,其实新手根本不需要这么多依赖的库,花较大的时间安装这样那样的库,最后还失败就很搞心态,因此本文安装的依赖主要为经常使用的libx264和x265,进行h264和h265的编码。如果不需要进行编码,连这两个都不需要安装

安装yasm

yasm是汇编的优化,ffmpeg默认要求安装,安装不麻烦,网上找对应的yasm包,默认安装流程,./configure,make,make install就好

./configure
make
make install

安装x265

我使用的h265的编码库是x265,选用的安装包为x265_3.2.tar.gz,x275安装需要使用CMake,首先安装CMake,CentOS下用yum安装

yum install -y cmake

获取x265_3.2.tar.gz后,解压缩,进入build/linux目录下,执行其名字较长的脚本,再make,make install

安装x264

安装x264编码库,使用的是x264-master.zip,解压后的安装过程

./configure --enable-shared
make
make install

ffmpeg编译安装

完成源码获取和依赖的安装后,就可以编译了,需要注意的是ffmpeg的播放器ffplay需要SDL2的库才能安装,如果需要对播放器这块研究,还需要安装SDL2,可以直接yum安装SDL2的开发版。因为我平常工作的主要是流媒体服务器方面的,对终端播放器不是很了解,所以对于ffplay的安装就先忽略了

# 首先修改/etc/profile,让ffmpeg找到对应的依赖库
vim /etc/profile
# 在末尾添加
export PKG_CONFIG=/usr/bin/pkg-config
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
# 修改生效
source /etc/profile
# 进入ffmpeg的源码目录
./configure --prefix=/usr/local/ffmpeg --enable-shared --enable-debug --disable-stripping 
--enable-shared --enable-libx264 --enable-libx265 --enable-nonfree 
--enable-gpl
# 编译参数相关解释,prefix - 安装路径,debug和stripping是为了debug调试
# shared是安装动态库,后续ffmpegAPI开发需要
# libx264,libx265是对应的两个软件编码库
make
make install

编译时间较长,编译完成后,因为我们编译的是使用动态库的ffmpeg,所以还需要配置动态库路径

vim /etc/ld.so.conf
# 添加上前面安装的ffmpeg的lib路径
/usr/local/ffmpeg/lib/
ldconfig
# 为了方便使用添加环境变量
vim /etc/profile
# 添加
export PATH=/usr/local/ffmpeg/bin:$PATH
# 生效
source /etc/profile
# 接下来ffmpeg就能使用了
./ffmpeg

最后

以上就是呆萌豆芽为你收集整理的CentOS7下 ffmpeg编译安装CentOS7下 ffmpeg编译安装的全部内容,希望文章能够帮你解决CentOS7下 ffmpeg编译安装CentOS7下 ffmpeg编译安装所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部