在我的项目中,我有多次从iPhone麦克风录制的录音,我用这段代码循环
-(IBAction)loop1{
NSError *error;
audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:temporaryRecFile error:&error];
audioPlayer.numberOfLoops = 100;
[audioPlayer play];
}
并停止使用此代码
-(IBAction)loopstop1{
audioPlayer.numberOfLoops = 0;
[audioPlayer stop];
}
当多个录音循环播放时,这个停止方法只会停止设置为循环的最后一个录音,我想知道是否还有断开所有音频循环,或打破这些特定的循环,因为我是只是设法停止我已经循环的最后一次录音。
感谢您提供任何帮助或建议
答案 0 :(得分:1)
我会做什么:
NSMutableArray
以保留audioPlayer
s 将AVAudioPlayer
个对象添加到数组
AVAudioPlayer* newLoop = [[AVAudioPlayer alloc] initWithContentsOfURL:temporaryRecFile
error:&error];
newLoop.numberOfLoops = 100;
[loopsArray addObject:newLoop];
将索引传递给每个开始/停止功能,以了解启动/停止哪个audioPlayer
。
提示要停止所有这些操作,只需在stop