【发布时间】:2014-06-13 13:29:26
【问题描述】:
我需要在不改变采样率和位深度的情况下将 flac 文件转换为 wav 文件。据我所知,更改这些属性可能会扭曲音频,那么如何指定它们不被更改?
另外,有什么方法可以防止元数据被写入输出文件?
【问题讨论】:
-
ffmpeg -i output.wav 可能适合你
我需要在不改变采样率和位深度的情况下将 flac 文件转换为 wav 文件。据我所知,更改这些属性可能会扭曲音频,那么如何指定它们不被更改?
另外,有什么方法可以防止元数据被写入输出文件?
【问题讨论】:
sox infile.flac outfile.wav
应该这样做,而不复制元数据。
我用它把一个从 wav 转换成 flac 的声音转换回来,得到了与原始 wav 完全相同的文件。
【讨论】:
正如rogerdpack所说,命令行:
ffmpeg -i inputfile.flac output.wav
应该做你想做的事。
解决您对保持生成的音频完整的担忧,FLAC 是一种无损格式,将其解码为存储在 WAV 文件中的原始 PCM 将保持完美的保真度。您可能需要担心的唯一一件事是您的 FLAC 文件是否高于正常的位深度,例如每个样本 24、32 或 64 位,或者具有疯狂的多通道配置。我没有跟上 FFmpeg 是否支持所有这些组合。但是,大多数 FLAC 文件只是 16 位、44.1 kHz 的音频文件,所以这应该不是问题。
关于清理元数据,请查看Superuser question。
【讨论】:
pcm_s16le、pcm_f64le)