我有一个几乎可以工作的功能。根据您所在的页面播放不同的音频文件。问题是,一些音频文件突然结束。例如,尽管音频文件播放到结尾的“情况1”,上“的情况下2”它在停止约90%。AVAudioPlayer在文件结束前停止
- (void)playAudio
{
NSURL *audioURL;
[voiceAudio release];
switch (pageNumber)
{
case 1:
audioURL = [[NSURL alloc] initFileURLWithPath:[[NSBundle mainBundle] pathForResource:@"file1" ofType:@"aac"]];
voiceAudio = [[AVAudioPlayer alloc]
initWithContentsOfURL:audioURL error:nil];
[audioURL release];
voiceAudio.delegate = self;
[voiceAudio play];
break;
case 2:
audioURL = [[NSURL alloc] initFileURLWithPath:[[NSBundle mainBundle] pathForResource:@"file2" ofType:@"aac"]];
voiceAudio = [[AVAudioPlayer alloc]
initWithContentsOfURL:audioURL error:nil];
[audioURL release];
voiceAudio.delegate = self;
[voiceAudio play];
break;
// And so on...
}
}
AACS中是长几分钟。也许有更好的方法去做这件事? AVAudioPlayer可以有点时髦。谢谢!
与您的问题无关,但您可以通过放置''audioURL release';'''voiceAudio.delegate = self;'和'[voiceAudio play];'只需要在交换机中重复某些代码行一次在switch语句之后。 – 2012-09-18 09:45:41
谢谢,我最终这么做了。 – Alex