格式化大量音频文件的最有效方法

时间:2012-01-19 18:04:54

标签: iphone objective-c ios

我目前正在开发一款包含大量音频的应用,大约需要60-120分钟。大多数语音音频文件。我的问题是什么是存储它们的最佳方式。例如,一个单独的大文件,单独的音频文件,按需下载的缓存文件。

有关文件格式的任何建议吗?

4 个答案:

答案 0 :(得分:3)

这些audio formats decoded by iPhone hardware应该起到最小的作用。

  

其他iPhone OS音频格式使用硬件编解码器进行播放。   这些格式是:

     
      
  • AAC
  •   
  • ALAC(Apple Lossless)
  •   
  • MP3
  •   

是将音频与应用分发还是分开取决于使用情况。如果您可以合理地期望用户按顺序浏览材料,您可能希望允许用户逐个下载或流式传输音频以节省其设备上的空间,而如果音频是更随机的访问,则您可以d可能在设备上想要一切。

答案 1 :(得分:2)

包括Apple自己在内的多个应用程序似乎都使用开源speex编解码器来压缩语音质量的音频,即使这似乎不受硬件或任何公共API的支持。

答案 2 :(得分:1)

正如Joachim建议您可以选择AAC / ALAC / MP3音频格式。我现在提出的建议是从用户体验的角度考虑问题:

  1. 使用质量选项将您的所有音频转换为所选格式 满足您和您的潜在用户。
  2. 接下来,计算所有文件的大小并问自己一个问题: " X兆字节太多了,无法捆绑我的应用程序?"和 "那个大/小的应用程序包是否会鼓励用户下载我的应用程序?"。
  3. 可选择播放一些带有质量选项的文件来缩小文件(迭代)。
  4. 在下一步中,决定(根据您的应用程序特征)是否捆绑所有文件。例如,游戏应该具有所有文件并且可以很大(用户接受)。如果你的应用有例如仅播客,然后选择最佳播客并将其捆绑 - 一旦用户上钩,他就可以下载其余内容(让用户触发),这样文件就会存储在设备上。同时向用户提供他们即将下载的数据量,并在文件相当大而且他们不在Wi-Fi上时发出警告;或者介绍仅在Wi-Fi上下载的选项。
  5. 我希望听起来合理。

答案 3 :(得分:1)

对于音乐,以下方法会有很大不同。

由于它只是声音,因此您可以在大多数情况下显着降低采样率。试试[8kHz ... 20kHz]。

如果它们是多声道的话 - Mono对于声音应该没问题。

一旦完成,我建议AAC的尺寸和质量平衡。

在您的设备上进行一些听力测试。如果需要,调整设置。然后批处理/转换它们全部。如果信号源为16 / 44.1,则可以将您的尺寸缩小10或更多。

除非文件非常小(例如每个文件秒),否则你必须快速打开并阅读其中的许多文件,我不会为这个庞大的文件烦恼。对于许多情况,几MB是一个很好的尺寸。