Tag: simpleaudioengine

在cocos2d v3中播放audio

我试图让背景音乐播放和循环,以及一次又一次的发音,例如升级等。 我find了很多关于使用SimpleAudioEngine的教程,但是当我导入SimpleAudioEngine.h时,编译器显示“SimpleAudioEngine.h file not found” 我正在使用SpriteBuilder和cocos2d v3。 有谁知道我从哪里可以得到这个class? 谢谢

按照SimpleAudioEngine的顺序播放声音

我正在用cocos2d 2构build一个iOS应用程序,并使用SimpleAudioEngine来播放一些效果。 在上一个声音完成后,是否有sorting多个声音的方法? 例如在我的代码中: [[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];

如何检测何时播放完音效?

我正在使用SimpleAudioEngine,并试图在继续之前检测音效是否完成播放。 我正在寻找任何方法,但我试图实施的方法不起作用! CDSoundEngine *engine = [CDAudioManager sharedManager].soundEngine; ALuint soundId = [[SimpleAudioEngine sharedEngine] playEffect:soundId]; float seconds = [engine bufferDurationInSeconds:soundId]; 每次我使用bufferDurationInSeconds时,它都会返回-1的浮点值给variables秒。 我检查了实现,并且当id无效时返回-1,但是我是100%ID是有效的! 任何人都可以帮助我解决这个问题,或build议我另一种方式来检测声音效果的结束?