跳转到内容

Mac 上移除视频音频的 2 种方法

使用 FFmpeg -an 在 Mac 上移除视频音频,生成真正的静音文件,并配合 QuickTime 进行裁剪预处理。让演示和叠加层保持安静。

作者 Petr Samokhin

带有通知音的屏幕录制、配有背景音乐的 B-roll 素材,以及存在麦克风串音的 Bug 视频,往往需要生成静音文件。仅将播放器静音并不足够。你需要无音频流,以确保演示文稿、LMS 工具和编辑器不会意外播放隐藏声音。

为何移除音频流

场景静音的作用
实时解说下的 UI 演示防止声音重叠
带有提示音的屏幕录制消除干扰性的提示音
股票 B-roll 叠加层避免音乐冲突
稍小的附件去除未使用的音频字节

QuickTime 没有可靠的“导出时不含音频”复选框。-an 是精确的工具。若需单独保留音轨,请先通过 Mac 上 MP4 转 MP3 提取音频,再剥离视频。若只需减小文件体积且需保留声音,请参阅 Mac 上如何压缩视频

方法 1:使用 FFmpeg 剥离音频

适用场景: 确保生成静音的 MP4MOV,支持批量处理。

如需,通过 Homebrew 安装 FFmpeg:

brew install ffmpeg

仅复制视频流(编解码器允许时速度最快):

ffmpeg -i input.mp4 -c:v copy -an output-silent.mp4

复制失败或需要适合网络的 MP4 时,进行重新编码:

ffmpeg -i input.mov -c:v libx264 -crf 22 -preset medium \
 -an -movflags +faststart output-silent.mp4

批量处理文件夹中的每个 MP4

mkdir silent-out
for f in *.mp4; do
 ffmpeg -i "$f" -c:v copy -an "silent-out/${f%.mp4}-silent.mp4" 2>/dev/null || \
 ffmpeg -i "$f" -c:v libx264 -crf 22 -preset medium \
 -an -movflags +faststart "silent-out/${f%.mp4}-silent.mp4"
done
参数含义
-an输出中无音频流
-c:v copy保持视频不变。即时完成
-movflags +faststart更适合网络播放

对于多轨道源文件,显式映射视频:

ffmpeg -i input.mkv -map 0:v:0 -c:v copy -an output-silent.mp4

限制: 需自行维护命令。当容器也需要更改时,可结合 Mac 上 MOV 转 MP4 的参数使用。

方法 2:先在 QuickTime 中裁剪

适用场景: 在剥离音频前切除静音片段。

  1. QuickTime Player 中打开视频。
  2. 选择 编辑 → 修剪 (⌘T),仅保留所需片段。
  3. 导出或保存裁剪后的文件,然后使用 -an 运行方法 1。

不要依赖编辑器中的音量归零。静音轨道仍可能保留在容器中。

限制: 仅使用 QuickTime 无法生成真正的静音文件。

确认文件真正静音

在 QuickTime 中打开结果文件,确认 音频 菜单缺失或呈灰色。在终端中也可检查流信息:

ffprobe -hide_banner output-silent.mp4

应看到视频流且无音频流。若仍有静音轨道残留,请重新运行并配合 -an 进行重新编码,而非使用 -c:v copy

FFmpeg 单独使用的适用场景

FFmpeg 足以应对一次性静音演示和脚本化的 QA 文件夹。

GetCompress 并非专用的音频剥离工具。在获得静音文件后(或若体积是主要问题且声音可保留),使用它通过预设和本地预览来压缩或转换视频。它不替代 FFmpeg 用于确保流移除。对于有大小限制的静音嵌入,请使用 Mac 上如何压缩视频 压缩静音导出文件。