【发布时间】:2011-04-20 05:48:48
【问题描述】:
我用 AVAudioPlayer 播放了一个 10 秒的 wav 文件,效果很好。 现在我要在第 4 秒停止 wav 然后从 非常第一秒。
这是我试过的代码:
NSString *ahhhPath = [[NSBundle mainBundle] pathForResource:@"Ahhh" ofType:@"wav"];
AVAudioPlayer *ahhhhhSound =[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:ahhhPath] error:NULL];
[ahhhhhSound stop];
[ahhhhhSound play];
我得到的是,wav 在第 4 秒停止,但是当我再次运行 [XXX play] 时,wav 继续播放第 5 秒,而不是从头开始播放。
我怎样才能做到这一点?任何帮助将不胜感激。
【问题讨论】:
-
对于简短的声音,明显的症状是声音没有播放第二次 - 调用停止和播放只是导致声音完成播放,听起来第二次播放被忽略了。这就是我的代码中发生的事情,下面的答案修复了它。
标签: cocoa-touch avaudioplayer avfoundation