如何使用ffmpeg从mp4中提取音频部分?

vde*_*nne 5 audio ffmpeg

我尝试使用以下命令:

ffmpeg -i video.mp4 -acodec copy -ss 00:30:00 -to 00:60:00 extract.mp3
Run Code Online (Sandbox Code Playgroud)

但它失败并说

[mp3 @ 0x3bfade0] Invalid audio stream. Exactly one MP3 audio stream is required.
Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument
Run Code Online (Sandbox Code Playgroud)

我相信这是因为我需要先提取 mp3 数据并将其提供给命令,但是没有办法在一个命令中执行此操作并避免创建我不需要的完整 mp3 文件吗?

Gya*_*yan 8

您的音轨可能是 AAC,而不是 MP3。

所以要么

ffmpeg -i video.mp4 -acodec copy -ss 00:30:00 -to 00:60:00 extract.aac
Run Code Online (Sandbox Code Playgroud)

或者

ffmpeg -i video.mp4 -vn -ss 00:30:00 -to 00:60:00 extract.mp3
Run Code Online (Sandbox Code Playgroud)

如果您需要故障安全命令,请将其保存为通用 MP4。

ffmpeg -i video.mp4 -map 0:a:0 -acodec copy -ss 00:30:00 -to 00:60:00 extract.mp4
Run Code Online (Sandbox Code Playgroud)