FFmpeg是用于处理多媒体文件的自由开放源代码工具集合。它包含一组共享的音频和视频库,例如libavcodec,libavformat和libavutil。
使用FFmpeg,您可以在各种视频和音频格式之间转换,设置采样率,捕获音频流/视频和调整视频大小。
本教程说明如何在CentOS 7安装FFmpeg。我们将启用EPEL软件存储库和Nux存储库,然后使用yum安装FFmpeg。
为了能够添加新的存储库并在CentOS系统上安装软件包,您必须以具有sudo权限的用户登录。
FFmpeg在CentOS 7存储库中不可用。您可以选择从源代码构建FFmpeg,也可以启用Nux Dextop存储库,然后使用yum进行安装。我们将选择第二个选项。
Nux存储库部分软件来自EPEL软件存储库。如果您的系统上未启用EPEL存储库,请运行命令sudo yum install epel-release
命令启用它。
接下来,导入存储库GPG密钥并通过安装rpm软件包来启用Nux存储库。一旦启用存储库,就可以安装FFmpeg。
安装完成后可以运ffmpeg -version
命令验证FFmpeg安装。在撰写本文时,Nux Dextop存储库中可用的FFmpeg的当前版本为2.8.15
。
sudo yum install epel-release
sudo rpm -v --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
sudo yum install ffmpeg ffmpeg-devel
ffmpeg -version
ffmpeg version 2.8.15 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-28)
...
转换mp4 webm
使用ffmpeg
转换音频和视频文件时,不必指定输入和输出格式。 FFmpeg自动检测输入文件的格式,并从文件扩展名中猜测输出格式。
以下是两个简单的示例,将视频文件从mp4转换为webm。将音频文件从mp3转换为ogg。
ffmpeg -i input.mp4 output.webm
ffmpeg -i input.mp3 output.ogg
指定编解码器
转换文件时,使用-c
选项指定编解码器。它可以是任何受支持的解码器/编码器的名称,也可以是仅复制输入流的特殊值copy
。
下面的例子,使用libvpx
视频编解码器和libvorbis
音频编解码器将视频文件从mp4转换为webm。使用libopus
编解码器将音频文件从mp3转换为ogg。
ffmpeg -i input.mp4 -c:v libvpx -c:a libvorbis output.webm
ffmpeg -i input.mp3 -c:a libopus output.ogg
结论
您已在CentOS 7上成功安装了FFmpeg。您现在可以访问FFmpeg官方文档页面,并学习如何使用FFmpeg转换视频和音频文件。如果您遇到问题或有反馈,请在下面发表评论。