如何在CentOS 8/RHEL 8 Linux系统上安装FFmpeg? FFmpeg是一个免费的开源多媒体框架,用于播放,编码,解码,流式传输,转码,多路复用,多路复用和过滤各种格式的多媒体文件,包括MPEG1音频和视频,MPEG4,h263,ac3,asf,avi,real, mjpeg和Flash。
FFmpeg是一个跨平台应用程序,可以在各种构建环境,配置和机器架构下的Linux,macOS,Windows,BSD,Solaris等上运行。大多数可用于Linux的媒体播放器以及音频/视频下载器和转换器(例如youtube-dl)都需要FFmpeg才能工作。
[linuxidc@localhost ~/www.linuxidc.com]$ffmpeg -i www.linuxidc.com.mp4 -i linuxidc.png -filter_complex overlay linuxidc.com.mp4
这些是FFmpeg的主要构建块:
- ffmpeg–用于在格式之间转换多媒体文件的命令行工具
- ffplay–基于SDL和FFmpeg库的简单媒体播放器
- ffprobe–简单的多媒体流分析仪
- FFmpeg还包含开发人员库– libavutil,libavcodec,libavformat,libavdevice,libavfilter,libswscale和libswresample。
ffmpeg中每个输出的转码过程可以通过下图描述:
如何在CentOS/RHEL 8上安装FFmpeg
按照下文的步骤在CentOS 8/RHEL 8 Linux发行版上安装FFmpeg。
步骤1:安装RPMfusion Yum存储库
创建RPM Fusion存储库是为了提供Fedora和基于Red Hat的发行版未提供的软件。该存储库中可用的所有软件应用程序均以预编译的RPM文件的形式提供。我们将从RPMfusion存储库在CentOS 8/RHEL 8上安装FFmpeg。
在启用RPM Fusion for EL之前,需要在RHEL或兼容发行版(如CentOS)上启用EPEL。
[linuxidc@localhost ~/www.linuxidc.com]$sudo dnf -y install https://download.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
使用以下命令将其添加到您的系统中。
[linuxidc@localhost ~/www.linuxidc.com]$sudo dnf localinstall –nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm
[linuxidc@localhost ~/www.linuxidc.com]$sudo dnf install –nogpgcheck https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-8.noarch.rpm
接受安装。
步骤2:在CentOS 8/RHEL 8上安装FFmpeg
添加EPEL和RPM Fusion存储库后,在终端中运行以下命令以在CentOS 8 / RHEL 8 Linux系统上安装FFmpeg。
[linuxidc@localhost ~/www.linuxidc.com]$sudo dnf install http://rpmfind.net/linux/epel/7/x86_64/Packages/s/SDL2-2.0.10-1.el7.x86_64.rpm
[linuxidc@localhost ~/www.linuxidc.com]$sudo dnf install ffmpeg
将安装许多依赖项,验证并同意安装。
[sudo] linuxidc 的密码:
上次元数据过期检查:0:39:41 前,执行于 2020年02月29日 星期六 03时25分14秒。
依赖关系解决。
================================================================================
软件包 架构 版本 仓库 大小
================================================================================
安装:
ffmpeg x86_64 4.2.2-1.el8 rpmfusion-free-updates 1.4 M
安装依赖关系:
libva x86_64 2.4.1-1.el8 AppStream 93 k
libvdpau x86_64 1.1.1-7.el8 AppStream 40 k
ocl-icd x86_64 2.2.12-1.el8 AppStream 51 k
openal-soft x86_64 1.18.2-7.el8 AppStream 394 k
libatomic x86_64 8.3.1-4.5.el8 BaseOS 22 k
jack-audio-connection-kit x86_64 1.9.12-8.el8 epel 519 k
libaom x86_64 1.0.0-8.20190810git9666276.el8
epel 1.6 M
libass x86_64 0.14.0-4.el8 epel 110 k
libdav1d x86_64 0.5.2-1.el8 epel 347 k
libmfx x86_64 1.25-4.el8 epel 36 k
libvmaf x86_64 1.3.15-1.el8 epel 347 k
pugixml x86_64 1.9-1.el8 epel 97 k
soxr x86_64 0.1.3-4.el8 epel 97 k
vid.stab x86_64 1.1.0-12.20190213gitaeabc8d.el8
epel 47 k
zimg x86_64 2.9.2-1.el8 epel 268 k
zvbi x86_64 0.2.35-9.el8 epel 424 k
ffmpeg-libs x86_64 4.2.2-1.el8 rpmfusion-free-updates 7.2 M
libavdevice x86_64 4.2.2-1.el8 rpmfusion-free-updates 96 k
opencore-amr x86_64 0.1.5-7.el8 rpmfusion-free-updates 180 k
vo-amrwbenc x86_64 0.1.3-8.el8 rpmfusion-free-updates 77 k
x264-libs x86_64 0.157-12.20190717git34c06d1.el8
rpmfusion-free-updates 651 k
x265-libs x86_64 3.1.2-1.el8 rpmfusion-free-updates 1.9 M
xvidcore x86_64 1.3.7-1.el8 rpmfusion-free-updates 268 k
事务概要
================================================================================
安装 24 软件包
总下载:16 M
安装大小:56 M
确定吗?[y/N]: y
通过运行以下命令安装开发库:
[linuxidc@localhost ~/www.linuxidc.com]$sudo dnf -y install ffmpeg-devel
步骤3:在CentOS/RHEL 8上检查FFmpeg版本
使用以下命令检查RHEL/CentOS系统上安装的FFmpeg版本。
[linuxidc@localhost ~/www.linuxidc.com]$rpm -qi ffmpeg
Name : ffmpeg
Version : 4.2.2
Release : 1.el8
Architecture: x86_64
Install Date: 2020年02月29日 星期六 04时12分47秒
Group : Unspecified
Size : 1939204
License : GPLv2+
Signature : RSA/SHA1, 2020年01月03日 星期五 19时26分34秒, Key ID 979f0c69158b3811
Source RPM : ffmpeg-4.2.2-1.el8.src.rpm
Build Date : 2020年01月01日 星期三 16时32分02秒
Build Host : buildvm-03.online.rpmfusion.net
Relocations : (not relocatable)
Packager : RPM Fusion
Vendor : RPM Fusion
URL : http://ffmpeg.org/
Summary : Digital VCR and streaming server
Description :
FFmpeg is a complete and free Internet live audio and video
broadcasting solution for Linux/Unix. It also includes a digital
VCR. It can encode in real time in many formats including MPEG1 audio
and video, MPEG4, h263, ac3, asf, avi, real, mjpeg, and flash.
[linuxidc@localhost ~/www.linuxidc.com]$ffmpeg -version
ffmpeg version 4.2.2 Copyright (c) 2000-2019 the FFmpeg developers
built with gcc 8 (GCC)
FFmpeg使用帮助
[linuxidc@localhost ~/www.linuxidc.com]$ffmpeg –help
更多:
CentOS 7.5下FFmpeg安装、简单使用总结 http://www.info110.com/Linux/2018-10/154934.htm
如何在 Ubuntu 18.04 / Linux Mint 19.x 中安装 FFmpeg 4.2 http://www.info110.com/Linux/2019-08/160266.htm
Linux中安装FFmpeg详解 http://www.info110.com/Linux/2019-03/157443.htm