CentOs7.5安装FFmpeg
一、FFmpeg简介
FFmpeg是一个自由软件,可以运行音频和视频多种格式的录影、转换、流功能,包含了libavcodec ─这是一个用于多个项目中音频和视频的解码器库,以及libavformat——一个音频与视频格式转换库
"FFmpeg"这个单词中的"FF"指的是"Fast Forward"。有些新手写信给"FFmpeg"的项目负责人,询问FF是不是代表“Fast Free”或者“Fast Fourier”等意思,"FFmpeg"的项目负责人回信说“Just for the record, the original meaning of "FF" in FFmpeg is "Fast Forward"...”
FFmpeg在Linux平台下开发,但它同样也可以在其它操作系统环境中编译运行,包括Windows、Mac OS X等。这个项目最初是由Fabrice Bellard发起的,而现在是由Michael Niedermayer在进行维护。许多FFmpeg的开发者同时也是MPlayer项目的成员,FFmpeg在MPlayer项目中是被设计为服务器版本进行开发。
2011年3月13日,FFmpeg部分开发人士决定另组libav,网址http://libav.org,同时制定了一套关于项目继续发展和维护的规则。
组成组件
此计划由几个组件组成:
- ffmpeg是一个命令行工具,用来对视频文件转换格式,也支持对电视卡实时编码
- ffserver是一个HTTP多媒体实时广播流服务器,支持时光平移
- ffplay是一个简单的播放器,基于SDL与FFmpeg库
- libavcodec包含了全部FFmpeg音频/视频编解码库
- libavformat包含demuxers和muxer库
- libavutil包含一些工具库
- libpostproc对于视频做前处理的库
- libswscale对于图像作缩放的库
参数
FFmpeg可使用众多参数,参数内容会根据ffmpeg版本而有差异,使用前建议先参考参数及编解码器的叙述。此外,参数明细可用ffmpeg -h显示;编解码器名称等明细可用ffmpeg -formats显示。
下列为较常使用的参数。
主要参数
- -i设置输入文件名。
- -f设置输出格式。
- -y若输出文件已存在时则覆盖文件。
- -fs超过指定的文件大小时则退出转换。
- -ss从指定时间开始转换。
- -title设置标题。
- -timestamp设置时间戳。
- -vsync增减Frame使影音同步。
图像参数
- -b设置图像流量,默认为200Kbit/秒。(单位请引用下方注意事项)
- -r设置帧率值,默认为25。
- -s设置画面的宽与高。
- -aspect设置画面的比例。
- -vn不处理图像,于仅针对声音做处理时使用。
- -vcodec设置图像图像编解码器,未设置时则使用与输入文件相同之编解码器。
声音参数
- -ab设置每Channel(最近的SVN版为所有Channel的总合)的流量。(单位请引用下方注意事项)
- -ar设置采样率。
- -ac设置声音的Channel数。
- -acodec设置声音编解码器,未设置时与图像相同,使用与输入文件相同之编解码器。
- -an不处理声音,于仅针对图像做处理时使用。
- -vol设置音量大小,256为标准音量。(要设置成两倍音量时则输入512,依此类推。)
注意事项
- 以-b及ab首选项流量时,根据使用的ffmpeg版本,须注意单位会有kbits/sec与bits/sec的不同。(可用ffmpeg -h显示说明来确认单位。)
- 例如,单位为bits/sec的情况时,欲指定流量64kbps时需输入‘ -ab 64k’;单位为kbits/sec的情况时则需输入‘ -ab 64’。
- 以-acodec及-vcodec所指定的编解码器名称,会根据使用的ffmpeg版本而有所不同。例如使用AAC编解码器时,会有输入aac与libfaac的情况。此外,编解码器有分为仅供解码时使用与仅供编码时使用,因此一定要利用
ffmpeg -formats确认输入的编解码器是否能运作。
二、CentOs7.5下安装FFmpeg
1.官网下载linux版本的ffmpeg源码包 ffmpeg-4.1.tar.xz
(此步骤也可以使用git clone下载源码包,本质上是一样的 )

2.使用xftp将源码包ffmpeg-4.1.tar.xz上传至linux主机(usr/local/ffmpeg目录;直接使用linux命令下载到linux也可以)
cd /usr/local/
mkdir ffmpeg #在usr/local目录下创建ffmpeg目录

3.解压源码包
cd /usr/local/ffmpeg
tar xvJf ffmpeg-4.1.tar.xz
4.切换到ffmpeg-4.1目录、安装gcc编译器
cd ffmpeg-4.1
yum install gcc #安装gcc编译器
yum install yasm #安装yasm编译器
5.输入如下命令/usr/local/ffmpeg为自己指定的安装目录
./configure --enable-shared --prefix=/usr/local/ffmpeg
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
如果出现如下错误信息:
If you think configure made a mistake, make sure you are using the latest
version from Git. If the latest version fails, report the problem to the
ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "config.log" produced by configure as this will help
solve the problem.
则需要先安装yasm
步骤(如已安装 则跳过此步骤):
①wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz #下载源码包
②tar zxvf yasm-1.3.0.tar.gz #解压
③cd yasm-1.3.0 #进入目录
④./configure #配置
⑤make && make install #编译安装
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
6.执行make(非常非常久.......)
make
7.执行make install(安装)
8.修改文件/etc/ld.so.conf
vim /etc/ld.so.conf
输入以下内容
include ld.so.conf.d/*.conf
/usr/local/ffmpeg/lib/
输入ldconfig使修改生效。
9.查看版本
/usr/local/ffmpeg/ffmpeg-4.1/ffmpeg -version

10.配置环境变量
# vim /etc/profile
在最后PATH添加环境变量:
#set ffmpeg environment
PATH=$PATH:/usr/local/ffmpeg/bin
export PATH
source /etc/profile #使配置生效
11.查看环境变量是否配置成功
ffmpeg -version

至此安装成功
参考文章:
2、FFMPEG系列二:linux下下载编译安装ffmpeg(超详细附采坑完整版)
<<<<<<<<<<<<<<<<<<
CentOs7.5安装FFmpeg的更多相关文章
- centos7上安装ffmpeg
FFmpeg介绍 FFmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件).它提供了录制.转换以及流化音视频的完整解决方案.它包含了非常先进的音 ...
- centos7 yum安装ffmpeg,以及ffmpeg的简单用法
yum install ffmpeg: 安装EPEL Release,因为安装需要使用其他的repo源,所以需要EPEL支持: yum install -y epel-release #如果出现缺少C ...
- docker下centos7编译安装ffmpeg
1.安装基础命令 docker下精简版centos没有make等命令,先安装: yum -y install gcc automake autoconf libtool make yum instal ...
- CentOS7下安装caffe(包括ffmpeg\boost\opencv)
因为有项目想采用深度学习,而caffe是深度学习框架中比较理想的一款,并且跨平台,以及可以采用python/matlab的方式进行调用等优势,所以想在服务器上安装,下面就开始了血泪史... 服务器是阿 ...
- centos7 安装 ffmpeg
升级系统 yum install epel-release -yyum update -y 安装Nux Dextop Yum源 由于centos 没有官方软件包,我们可以使用第三方YUM源(Nux D ...
- CentOS7 安装ffmpeg
安装EPEL Release,因为安装需要使用其他的repo源,所以需要EPEL支持:yum install -y epel-release#如果出现缺少Code提示,可以: sudo rpm --i ...
- centos7+nginx+rtmp+ffmpeg搭建流媒体服务器(保存流目录与http目录不要随意配置,否则有权限问题)
搭建nginx-http-flv-module升级代替rtmp模块,详情:https://github.com/winshining/nginx-http-flv-module/blob/master ...
- centos7+nginx+rtmp+ffmpeg搭建流媒体服务器
1.安装前需要的工具 #net-tool 查本地IP #wget 下载安装包 #unzip 解压zip包 #gcc gcc-c++ perl 编译软件包用 yum install -y net-too ...
- cent7安装ffmpeg
FFmpeg是一个领先的多媒体框架工具集,几乎能够对任何格式的音视频文件进行解码,编码,转码,复用,解复用,流式传输,过滤和播放. 不管这些音视频文件所采用的格式是由某些标准委员会,社区还是公司设计的 ...
随机推荐
- 关于禅道提示未安装VC++环境的问题(做个记录)
明明安装了VC++环境,总是提示未安装,这个问题有可能是你的mysql或其他服务开启影响的,关闭服务就可以了! 我这边是这个问题,把mysql和其他一些服务停止就好了.
- WPF ListView 居中显示
原文:WPF ListView 居中显示 今天遇到的问题: 方法1:设置GridViewColumn的ActualWidth <ListView > <ListView.View&g ...
- WPF 界面实现多语言支持 中英文切换 动态加载资源字典
1.使用资源字典,首先新建两个字典文件en-us.xaml.zh-cn.xaml.定义中英文的字符串在这里面[注意:添加xmlns:s="clr-namespace:System;assem ...
- Lexer的设计--下(5)
一个礼拜之后我终于从成都回来了, 从今天开始更新会恢复... 一点小的改进 写lex()的时候距离我上一次写已经一个礼拜了, 所以我回顾了一下之前的代码, 发现还是有瑕疵. 比如考虑到一个较短的程序, ...
- python3 无法使用flask.ext.* 报错的解决方法
python3 使用flask的一些扩展功能的导入方法是 from flask_bootstrap import Bootstrapfrom flask_moment import Momentfro ...
- Assertion failure in UITableViewCell layoutSublayersOfLayer解决办法
iOS6 设备在更新UITableViewCell的时候遇到了 Assertion failure in -[UITableViewCell layoutSublayersOfLayer:], /So ...
- SQL Server 数据库所有表增加同一列
SET @COLUMN_NAME = 'ColumnNameYouWantToAdd'; SET @COLUMN_DATATYPE = 'DataTypeOfColumn'; ------------ ...
- 线程间操作无效: 从不是创建控件“labMessage”的线程访问它。
解决方法:1.在窗体加载时加上这一句 private void FormDate_Load(object sender, EventArgs e) { Control.CheckForIllegalC ...
- Markdown 入门
一. Markdown语法的简要规则 标题 标题是非常重要的一个标记,一段文字标记为标题,只需要在文字前加 #.具体可以支持到1到6个# 1 2 3 4 # 一级标题 ## 二级标题 ### 三级标题 ...
- intellij开发安卓与genymotion配合
原文:intellij开发安卓与genymotion配合 [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http: ...