将音频转换为 8 位签名的 PCM

Convert audio to 8-bit signed PCM

我有一个 .mp4 音频文件,我想使用 TMRpcm 库将其转换为 Arduino Uno 的 8-bit unsigned PCM 格式。

它也可以是 .wav 文件。无论如何,我尝试了很多事情都无济于事。我得到的最接近的是使用 NIST Sphere 编解码器的 Audacity。我尝试用 FFmpeg 来做到这一点,但它只支持 demuxing NIST Sphere 文件。如何在 Mac OS X (10.10.2) 上将音频转换为这种格式?

avconv 是 ffmpeg 的分支...所以如果您愿意,请使用 ffmpeg

avconv -i input.mp4 -ar 8000 -acodec pcm_u8 -ac 1 output.wav

WAV 是 PCM 编解码器的容器格式,所以如果你 必须 有 PCM 然后进入二进制文件编辑器(wxHexEditor 是一个不错的编辑器)并删除前 44 个字节该 WAV 文件的 (its header)

所以上面给出了每秒 8000 个样本和 8 位的位深度,以及单声道。

使用

验证这一点
avprobe some_video_audio_file.wav

see bit depth listing available using avconv here

我意识到我正在尝试转换损坏的音频文件。 Audacity 正确转换了有效文件。