Please enable Javascript to view the contents

ffmpeg 从flv视频中的提取音频

 ·  ☕ 1 分钟

ffmpeg内置的音频解码器为:

  • libfdk-aac
  • aac

以下操作为从input.mp4文件提取音频为output.mp3:

ffmpeg -i input.mp4  -vn -c:a copy output.mp3

其中

  • -vn :移除视频
  • -c:a:指定音频编码器
  • copy:直接复制,不经过重新编码

今天,我从 bilibili.com 下载了一个input.flv的视频,根据以上命令修改:

ffmpeg -i input.flv  -vn -c:a copy output.mp3

产生错误无法提取。


原因分析

原因是没有mp3的解码器。

因为提取音频的操作其实是移除视频内容,mp4文件中有mp3的音频文件,可直接生成mp3文件。

而flv文件中的音频非mp3格式,没有相应的音频解码器,所以无法转换。


解决办法有2个:

1 生成 aac 的音频文件

因为ffmpeg默认为aac音频解码器,可将flv文件内置aac音轨的提取出来。

ffmpeg -i input.flv -vn -c:a copy output.aac

2 下载mp3音频解码器

下载 mp3 音频解码器: libmp3lame

指定音频解码器为 libmp3lame

ffmpeg -i input.flv -vn -c:a libmp3lame output.mp3
分享

码中人
作者
码中人
Web Developer