我正在用 cocos2d 2 构建一个 iOS 应用程序,并且我正在使用 SimpleAudioEngine 来播放一些效果。
有没有办法在前一个声音完成后对要播放的多个声音进行排序?
例如在我的代码中:
[[SimpleAudioEngine sharedEngine] playEffect:@"yay.wav"];
[[SimpleAudioEngine sharedEngine] playEffect:@"youDidIt.wav"];
当此代码运行时,yay.wav
并youDidIt.wav
在完全相同的时间播放,彼此重叠。
我yay.wav
想玩,一旦完成,youDidIt.wav
就玩。
如果不使用 SimpleAudioEngine,是否有使用 AudioToolbox 或其他方法的方法?
谢谢!
==更新==
我想我将使用 AVFoundation 使用这种方法:
AVPlayerItem *sound1 = [[AVPlayerItem alloc] initWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"yay" ofType:@"wav"]]];
AVPlayerItem *sound2 = [[AVPlayerItem alloc] initWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"YouDidIt" ofType:@"wav"]]];
AVQueuePlayer *player = [[AVQueuePlayer alloc] initWithItems: [NSArray arrayWithObjects:sound1, sound2, nil]];
[player play];