FFmpeg – 轻松从视频文件中提取音频

FFmpeg 命令行工具具有大量功能,尤其是在您处理大量媒体处理(例如音频和视频编辑)时。

将音频与视频文件分开的原因有很多,尤其是在您参与多媒体编辑的情况下。 可以在前景中显示图像或任何其他视频而不是原始视频时添加音频片段。

或者你也可以在不同的视频中使用相同的音频片段,如果你从一开始就有一个单独的 mp3 文件,整个过程就会变得容易得多。 正如我们已经讨论过的, 如何将 HEVC 编码的视频文件编码为 h264 编码,我们现在将在本文中讨论音频提取过程。

下载并安装 FFmpeg

由于 FFmpeg 在每个 Linux 发行版的官方存储库中都可用,因此可以使用发行版的包管理器轻松安装它。 只需键入以下命令,具体取决于您的 Linux 发行版:

对于基于 Debian 和 Ubuntu 的发行版:

打开终端并键入以下命令:

sudo apt update && sudo apt install ffmpeg 

为了 Fedora 工作站:

在终端中,执行以下命令:

sudo dnf install ffmpeg 

对于 Arch Linux 和基于 Arch 的发行版:

在终端中键入并执行以下命令:

sudo pacman -S ffmpeg 

伟大的! 您已经完成了本教程的前半部分,现在我们将看看我们将音频与视频文件分离的过程。

分割音频

我们应该首先使用已与 FFmpeg 一起安装的 ffprobe 命令列出流(音频、视频和字幕,如果存在)。 在终端中,导航到您存储视频文件的目录并键入以下命令:

ffprobe <FULL_VIDEO_NAME.extension> 
使用 ffprobe 查找音频编码的类型

正如我们在输出中看到的,我拥有的文件在 Stream #0:1 中有 AAC 音频,现在我们的输出将命名为 Midsommar.aac。 现在,要拆分文件,请使用以下命令:

ffmpeg -i Midsommar.mkv -map 0:a -acodec copy Midsommar.aac 
使用 ffmpeg 从视频文件中提取音频

在这个命令中,

  • -i 标志表示输入(视频文件)
  • 和 map 0:a 拾取可用的音频流
  • -codec 标志复制拾取的音频流(无需重新编码)

我们还可以通过指定视频的开始时间(-ss 标志)和结束时间(-t 标志)直接从视频中修剪掉音频流的任何部分。 像这样输入命令:

ffmpeg -i Midsommar.mkv -map 0:a -ss 00:03:00 -t 00:00:30.0 -acodec copy Short_Audio.aac 
从视频中修剪短音频剪辑修剪视频中的短音频剪辑

概括

在本文中,我们成功地学习了如何使用 FFmpeg CLI(命令行)实用程序从视频文件中提取全部或部分音频。 这是一个高度专业化的工具,上述功能是众多功能之一。

参考

Archwiki – ffmpeg