FFmpeg 提取音频命令指南 ,适用于各种场景,包括格式转换、音质控制、时间裁剪、声道设置等。无论你是新手还是高级用户,都能找到你需要的内容。
一、基本提取音频命令
✅ 1. 提取视频中的音频并转为 MP3 格式
ffmpeg -i input.mp4 output.mp3
✅ 2. 更高质量的 MP3 输出(推荐)
ffmpeg -i input.mp4 -q:a 0 -map a output.mp3
-q:a 0
:最高音质(范围是 09,数值越小质量越高)
-map a
:仅提取音频流(避免输出视频)
二、无损提取音频(直接复制编码)
适用于不想重新编码音频,速度快、不损失质量:
✅ 1. 复制原始音频流(如 AAC)
ffmpeg -i input.mp4 -vn -c:a copy output.aac
-vn
:忽略视频流
-c:a copy
或 -acodec copy
:复制音频编码
- 注意:输出格式需与原始音频编码一致(如
.aac
, .mp3
, .ac3
)
三、转换为不同音频格式
FFmpeg 支持几乎所有音频格式转换:
目标格式 | 命令示例 |
WAV(无损) | ffmpeg -i input.mp4 output.wav |
FLAC(无损压缩) | ffmpeg -i input.mp4 output.flac |
M4A(AAC 编码) | ffmpeg -i input.mp4 -c:a aac output.m4a |
OGG(Vorbis) | ffmpeg -i input.mp4 output.ogg |
OPUS(网络音频) | ffmpeg -i input.mp4 -c:a libopus output.opus |
四、提取视频中某段时间的音频
✅ 1. 提取从第 10 秒到第 30 秒的音频
ffmpeg -i input.mp4 -ss 00:00:10 -to 00:00:30 -vn output.mp3
-ss
:起始时间
-to
:结束时间
-vn
:不处理视频
✅ 2. 提取前 30 秒音频
ffmpeg -i input.mp4 -t 30 -vn output.mp3
五、音频参数控制
✅ 1. 设置采样率(如 44.1kHz)
ffmpeg -i input.mp4 -ar 44100 output.mp3
✅ 2. 设置比特率(如 192k)
ffmpeg -i input.mp4 -b:a 192k output.mp3
✅ 3. 转换为单声道
ffmpeg -i input.mp4 -ac 1 output.mp3
✅ 4. 指定声道数(如立体声 2 声道)
ffmpeg -i input.mp4 -ac 2 output.mp3
六、批量处理多个视频文件(Windows 批处理)
如果你有多个 .mp4
文件想批量提取音频,可以使用如下脚本(保存为 .bat
文件):
@echo off
for %%a in ("*.mp4") do (
ffmpeg -i "%%a" -q:a 0 -map a "%%~na.mp3"
)
- 会把当前目录下所有
.mp4
文件转为同名 .mp3
音频文件
七、查看视频中的音频信息(用于判断编码类型)
ffmpeg -i input.mp4
在输出信息中查找类似如下内容:
Stream #0:1(und): Audio: aac (LC)...
说明音频编码是 AAC,可使用 -c:a copy
无损提取。
八、常用音频编码器一览表
编码器 | 对应格式 | 参数 |
libmp3lame | MP3 | -c:a libmp3lame |
aac | M4A / AAC | -c:a aac (某些平台支持) |
libvorbis | OGG | -c:a libvorbis |
flac | FLAC | -c:a flac |
libopus | OPUS | -c:a libopus |
pcm_s16le | WAV(PCM) | -c:a pcm_s16le |
总结一句话:
ffmpeg -i [输入视频] [选项] [输出音频]
你只需根据需求选择合适的参数即可完成提取任务。