可以将音频转换为原始 PCM 吗? 如果可以,如何?

我目前正在使用 ffmpeg成功地将 FLV/Speex转换为 WAV/pcm_s16le。但是,我现在需要的输出格式是 RAW,即 PCM 符号16位小端点,没有 WAV 头。我尝试了以下方法:

ffmpeg -y -i input.flv -vn -acodec pcm_s16le output.raw

但 ffmpeg 的回应是:

Unable to find a suitable output format for 'output.raw'

我还尝试使用 output.pcmoutput作为输出文件名,结果是相同的。

我还尝试使用 -f标志来指定原始格式,但它给出的结果是:

Unknown input or output format: raw

用 FFmpeg 这可能吗? 如果可能,怎么做?

127614 次浏览

试试这个:

ffmpeg -i input.flv -f s16le -acodec pcm_s16le output.raw

您可以通过运行以下命令获得以下选项:

ffmpeg -formats

详情请参阅 https://trac.ffmpeg.org/wiki/audio%20types

mp4文件转换为 pcm

ffmpeg -y  -i input.mp4  -acodec pcm_s16le -f s16le -ac 1 -ar 16000 output.pcm

你也可以用它把 mp3转换成 pcm

ffmpeg -y  -i input.mp3  -acodec pcm_s16le -f s16le -ac 1 -ar 16000 output.pcm

Key params 的意思是:

-f s16le … PCM signed 16-bit little-endian samples


-ac 1 … 1 channel (mono)


-ar 16000 … sample rate 16000Hz