Linux系统安装ffmpeg & 升级ffmpeg

一、介绍

多媒体视频处理工具FFmpeg有非常强大的功能,包括视频采集功能、视频格式转换、视频抓图、给视频加水印等。由于最近要处理音视频格式转换问题,因此需要安装、升级ffmpeg,下面来记录一下踩坑过程。

二、安装 ffmpeg

1、下载并解压ffmpeg

复制代码
wget http://www.ffmpeg.org/releases/ffmpeg-3.1.tar.gz
tar -zxvf ffmpeg-3.1.tar.gz

2、指定安装路径(/usr/local/ffmpeg)

复制代码
cd ffmpeg-3.1
./configure --prefix=/usr/local/ffmpeg

指定安装路径报yasm/nasm not found or too old. Use --disable-yasm for a crippledbuild错误

复制代码
安装ffmpeg过程中,执行./configure时,报yasm/nasm not found or too old. Use --disable-yasm for a crippledbuild错误,分析、解决如下:

分析:yasm是汇编编译器,ffmpeg为了提高效率使用了汇编指令,如MMX和SSE等。所以系统中未安装yasm时,就会报上面错误。

解决:安装yasm编译器。安装方法如下:

在http://www.tortall.net/projects/yasm/releases下面找到适合自己平台的yasm版本。然后进行安装。举例如下:

1)下载:wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz

2)解压:tar zxvf yasm-1.3.0.tar.gz

3)切换路径: cd yasm-1.3.0

4)执行配置: ./configure

5)编译:make

6)安装:make install

3、安装

复制代码
make
make install

4、配置变量

首先打开配置文件:

复制代码
vi /etc/profile

在文件最后添加环境变量PATH:

复制代码
export PATH=$PATH:/usr/local/ffmpeg/bin

保存并退出vim

5、设置生效

复制代码
source /etc/profile 设置生效

6、检查版本

复制代码
ffmpeg -version 

三、升级ffmpeg

当安装的ffmpeg版本过低时,需要对其进行升级,步骤如下:

1、下载并解压高版本的ffmpeg

复制代码
wget http://www.ffmpeg.org/releases/ffmpeg-3.4.9.tar.gz
tar -zxvf ffmpeg-3.4.9.tar.gz

2、指定安装路径(/usr/local/ffmpeg)

复制代码
cd ffmpeg-3.4.9
./configure --enable-shared --prefix=/usr/local/ffmpeg

3、安装

复制代码
make
make install

4、动态链接库

使用vi打开配置文件

复制代码
vi /etc/ld.so.conf

添加以下内容:

复制代码
/usr/local/ffmpeg/lib

保存并退出vim,然后执行:

复制代码
ldconfig

5、为 ffmpeg 加入环境变量

首先打开配置文件:

复制代码
vi /etc/profile

在文件最后添加环境变量PATH:

复制代码
export PATH=$PATH:/usr/local/ffmpeg/bin

保存并退出vim

注;如果已经有了export PATH=$PATH:/usr/local/ffmpeg/bin,就不需要重复添加了。

6、使修改立即生效

复制代码
source /etc/profile

7、检查版本

复制代码
ffmpeg -version
相关推荐
无足鸟ICT2 小时前
【RHCA+】vmstat命令(监控系统资源)
linux·服务器
闪亮的路灯2 小时前
Linux 安装mqtt服务mosquitto
linux·运维·服务器
HideF3 小时前
nmcli
linux·服务器·网络
qetfw3 小时前
UOS DHCP Relay:跨网段分配与 IP、DNS、网关验证
linux·服务器·网络·tcp/ip·uos
szxinmai主板定制专家5 小时前
X86 工控机 vs RK3588 异构主控:AMR 控制器 BOM、散热、长期运维对比
运维·stm32·单片机·嵌入式硬件·fpga开发·am62x
叼烟扛炮5 小时前
Linux 学习笔记(四十一):TCP 并发演进——从单进程到多线程服务器
linux·运维·服务器·网络·笔记·学习·tcp/ip
ynchyong5 小时前
Linux 有两个 “版本“
linux·发行版·内核版本
叼烟扛炮5 小时前
Linux 学习笔记(四十四):HTTP 协议解析与极简 Web 服务器实战
linux·服务器·学习
叼烟扛炮6 小时前
Linux 学习笔记(四十三):网络编程进阶——自定义协议解决 TCP 粘包与守护进程
linux·开发语言·网络·笔记·tcp/ip
Decay__6 小时前
09_MySQL 闪回与时间点恢复 —— binlog 回放、mysqlbinlog、PITR 与误删恢复
运维·数据库·sql·mysql·架构