воспроизводить набор звуков один за другим, используя AVAudioPlayer - PullRequest
0 голосов
/ 21 сентября 2011

Я хочу использовать AVAudioPlayer в своем приложении.Логика такова: сначала воспроизводить набор звуков одновременно, а затем воспроизводить другой набор звуков. Но я обнаружил, что приложение воспроизводит только все эти наборы вместе и не может воспроизводить один за другим набор. Будучи новее, я обнаружил, что этоТрудно для меня, у кого-нибудь есть идеи?Спасибо за вашу помощь и идеи.

1 Ответ

1 голос
/ 21 сентября 2011

Используйте метод Delegate для распознавания окончания первой песни, затем в этом методе начинайте новую песню.

- (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag
{
   //play next song from List/Array of songs.
}

для воспроизведения песни Код AVAudioPlayer выглядит следующим образом.

NSString* filename = [soundsList objectAtIndex:YOURINDEXNUMBER];
NSString *path = [[NSBundle mainBundle] pathForResource:filename ofType:@"mp3"];  

AVAudioPlayer * newAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];  
self.theAudio = newAudio; // automatically retain audio and dealloc old file if new file is loaded

[newAudio release]; // release the audio safely

theAudio.delegate = self; 
[theAudio prepareToPlay];
[theAudio setNumberOfLoops:0];
[theAudio play];
...