【发布时间】:2012-09-08 04:33:36
【问题描述】:
我有一个包含大约 2000 个短 mp3 文件的程序。我现在将所有这些文件存储到文件夹 Supporting Files 中,当我想玩时,我调用这个函数:
-(void)playSound:(NSString *)mySoundFileName{
NSString *filePath = [[NSBundle mainBundle] pathForResource:mySoundFileName ofType:@"mp3"];
if ([NSData dataWithContentsOfFile:filePath]) {
url = [NSURL fileURLWithPath:filePath];
audioPlayer = [[AVAudioPlayer alloc]
initWithContentsOfURL:url
error:nil];
[audioPlayer play];
}
}
但是,我第一次播放声音时,搜索/加载文件总是需要很长时间。更具体地说,在按下“播放声音”按钮播放声音后,我必须等待至少 5 秒才能播放。之后播放其他声音就可以了,即当我按下“播放声音”按钮时它几乎立即播放。你有什么建议可以更有效地存储和播放这些文件吗?非常感谢
【问题讨论】:
-
您可以使用 AudioToolbox 框架从它们中创建系统声音,理论上可以预加载文件。