我的应用程序需要播放声音文件。我可以使用的唯一跨平台文件格式是WAVE(我正在使用Qt框架的QSound)。
这些声音的文件大小非常大,我想知道是否有办法减少它,而不会损失(太多)质量。
我需要文件是立体声。
答案 0 :(得分:6)
减小wav文件大小的唯一方法是将其重新采样到较低的比特率或每个样本使用较少的比特。 Wav文件没有像mp3或ogg这样的压缩功能。
如果您使用的是16位44 khz文件,您可以通过采用22khz的采样率将文件大小减半,而您将失去的只是一些高频。
答案 1 :(得分:3)
为什么不使用FLAC?这是在不牺牲任何质量的情况下对WAV进行无损压缩的最佳方法。
答案 2 :(得分:1)
您可以压缩它们(使用zlib或类似产品),然后根据需要解压缩它们。如果你有很多分钟的连续wav,可能值得研究像FLAC这样的音频专用无损压缩算法。
答案 3 :(得分:1)
我知道这是一个老问题,但我没有看到任何一个使用录音机的州。
应该这样做我必须为我的电话服务这样做,因为它只允许2.5MB .wav格式。将文件缩小到低于我5MB的25%。
这有何帮助
克里斯托弗迈克尔 贸易推动者 www.trademovers.net答案 4 :(得分:0)
您可能应该查看Qt的Phonon Module。它是跨平台的,支持不同平台的原生格式。我认为你可以为大多数操作系统提供MP3支持。
答案 5 :(得分:0)
根据定义,WAV 未压缩且无损。为了减小WAV文件的大小,您需要降低比特率或更改文件格式。然而,两者都涉及音频质量的损失(除非你使用FLAC或类似的东西)。
通常,您可以将比特率从41000或48000 Hz更改为32000 Hz而不会损失太多质量。或者,将文件转换为其他格式。