Проверьте, воспроизводит ли AVAudioPlayerNode буфер / файл, запланированный или завершенный? - PullRequest
0 голосов
/ 09 июля 2019

Необходимо проверить состояние AVAudioPlayerNode.Если он воспроизводит какой-то буфер / файл, завершен, запланирован ... Может быть получен только после завершения обновления переменной с завершением с помощьюhandHandler.Но ... в любом случае, чтобы узнать, запланировано ли это или проигрывание буфера в определенный момент?

(Переход с рендеринга аудио AUGraph на AVAudioPlayerNode - это боль ...)

PD: мне удалось это с помощью массива AVAudioTime, добавляя каждый раз новый scheduleBuffer, проверяя массив по завершениюHandler иудаление старых, когда значение AVAudioTime + buffLength ниже текущего времени.

Чтобы проверить, воспроизводится ли что-либо, снова выполните итерацию всех значений массива и убедитесь, что текущее время больше значения AVAudioTime, но меньше значения + buffLength.

Утомительное задание.Я надеюсь, что есть лучшее решение

...