据我所知,WAV 文件格式只是多种声音格式的容器。是否可以将 MP3 嵌入到 WAV 文件中,以便文件大小小于典型的 WAV 文件?
如果是的话,该怎么做呢?
答案1
WAV 文件是基于 RIFF 的容器,因此确实可以在其中使用不同的声音编解码器。旧版 Windows 中的“录音机”应用程序(基于 Windows 多媒体 API 构建)过去就是这样做的 - 您可以选择 PCM、µ-Law、ADPCM、CELP、MP3 等,但它始终会使用 WAV 格式作为文件本身。
请注意,它不能保证能正常工作。较新的编解码器(例如 Vorbis 或 AAC)似乎无法与 ffmpeg 生成的 WAV 文件配合使用 - 播放器可以识别编解码器,但无法识别实际数据。我不知道这背后的理论。
有一个示例文件列表在 Wikipedia 上。您可以使用例如 FFMPEG 来生成它们:
ffmpeg -i Test.mp3 -c:a copy Test.wav
ffmpeg -i TestPCM.wav -c:a libmp3lame TestMP3.wav
...或者如果您需要对奇怪的旧编解码器的编码支持,可以使用一些 Windows 多媒体 API 程序(例如相同的 sndrec32,我不知道还有其他的)。