如何减小iPhone应用程序的.wav音频文件的大小?

时间:2009-06-08 04:20:47

标签: iphone audio

我有一些循环播放的音乐。 .wav文件大小约为8兆。我加载它只是循环它...一切正常,直到我添加另一个4 meg .wav文件。现在游戏崩溃了...删除了额外的音频文件修复了崩溃。

那么如何减小这些.wav文件的大小呢?我想在完成4 meg文件之后释放内存,但我尝试的不起作用(我宁愿游戏本身是一个较小的文件大小,因此下载更容易)。

谢谢!

5 个答案:

答案 0 :(得分:7)

如果您一次只播放一个声音文件,请使用mp3或aac。这样你就可以获得硬件解码,从而提高性能和电池寿命。

不幸的是,iPhone一次只能播放一个硬件解码的声音文件。因此,如果您希望一次播放多个,您需要自己解码第二个文件;建议使用IMA 4:1,但是你必须找到或实现自己的解码器,Apple不会给你一个。

这完全基于this blog post,更详细。

答案 1 :(得分:7)

实际上.WAV是一个容器。内容可以压缩或解压缩,这完全取决于.WAV文件中第一个“fmt”标记中包含的WAVEFORMATEX结构。

例如,在Windows 7中,所有内置声音都是包含MP3数据的.WAV文件。

您可以将.WAV文件创作为MP3文件,并且(假设iPhone正确处理.WAV容器)它们应该可以正常工作。

答案 2 :(得分:3)

未压缩格式的Wav将不可避免地占用大量空间。 8 Megs对于未压缩的wav来说并不是很大。

您应该考虑使用其他压缩格式,例如mp3或aac。您可能需要在解码库中进行链接。

在iphone应用中查看包含mp3文件的link

答案 3 :(得分:2)

如果您的WAV文件是立体声,您可以尝试将它们设为单声道。这基本上是文件大小的一半。显然,缺点是你的声音现在是单音。

答案 4 :(得分:1)

我不会使用WAV。看看ffmpegx。它是免费的,可以在Mac上运行,并将您的wave文件转换为MP3或其他格式的主机。