首先,请确保从他们的下载页面安装最新版本的 FFmpeg 。对于 Windows、Linux 和 OS X,有可用的静态构建。在 OS X 上,您还可以使用Homebrew(带有brew install ffmpeg
)。
为了从文件中提取音频流,我们导出到 WAV 容器中的 PCM 立体声音频,因为它是无损的并且不会被重新编码:
ffmpeg -i input-file.avi audio.wav
Run Code Online (Sandbox Code Playgroud)
当然,您可以使用许多其他编解码器,例如 FLAC 或 ALAC。不过,WAV(或 Apple 上的 AIFF)中的 PCM 内容可能最适合编辑。
现在,根据需要对音频流应用任何效果。
要重新组合音频流和视频文件,请运行:
ffmpeg -i input-file.avi -i audio.wav -c copy -map 0:0 -map 1:0 output.avi
Run Code Online (Sandbox Code Playgroud)
对于流映射-i video
,视频和音频文件的顺序正确 ( , -i audio
)很重要。否则可能无法正常工作。
该-map 0:0 -map 1:0
选项会将音频从第二个输入文件(1
in 1:0
)映射到 AVI,而不是使用原始音频。这是这里最重要的参数。
理论上,您可以将 更改-c copy
为仅复制视频比特流 ( -c:v copy
) 并使用任何其他压缩音频编解码器,因为copy
将尝试使用未压缩的 PCM 立体声音频。同样,您当然可以将编辑后的音频文件保存为 MP3 并使用它,但保留copy
.
要将 PCM 立体声 WAV 文件编码为 MP3,请执行以下操作:
ffmpeg -i input-file.avi -i audio.wav -c:v copy -c:a libmp3lame -map 0:0 -map 1:0 output.avi
Run Code Online (Sandbox Code Playgroud)
如果您的音频文件比视频文件短,您可能需要循环播放。提供-loop 1
执行此操作的选项。
归档时间: |
|
查看次数: |
3624 次 |
最近记录: |