Как определить, когда закончится воспроизведение звукового эффекта?
Я использую SimpleAudioEngine и пытаюсь определить, закончился ли звуковой эффект, прежде чем продолжить.
Я ищу любой метод, но тот, который я пытаюсь реализовать, не работает!
CDSoundEngine *engine = [CDAudioManager sharedManager].soundEngine;
ALuint soundId = [[SimpleAudioEngine sharedEngine] playEffect:soundId];
float seconds = [engine bufferDurationInSeconds:soundId];
Каждый раз, когда я использую bufferDurationInSeconds, он возвращает значение с плавающей запятой от -1 до переменной секунды. Я проверил реализацию, и она возвращает -1, когда идентификатор недействителен, но я на 100%, идентификатор действителен!
Может кто-нибудь помочь мне в этой проблеме, или предложить мне другой способ обнаружить конец звукового эффекта?