Я пытаюсь перехватить в реальном времени аудиопоток файлового видеоресурса, чтобы применить к звуковой дорожке некоторые живые эффекты и смешать его с другими источниками звука во время воспроизведения видео.
В идеале было бы здорово иметь возможность взять звуковую дорожку объекта AVPlayer, вставить ее в звуковой график в качестве отдельно адресуемого входа, обработать ее с помощью обратного вызова с подходящими аудиоустройствами, а затем повторно ввести ее в реальном времени. для доставки на аудиовыход, но я не могу найти простой способ сделать это при сохранении целостности исходного видеоресурса. Мне не удалось узнать, как получить доступ к аудиобуферу AVPlayer, чтобы переслать его необработанные данные в обратный вызов обработки звука.
Мне кажется, что единственный подходящий подход состоял бы в том, чтобы разделить аудио- и видеодорожки, обработав их как отдельные файлы, а затем обработать видеодорожку (с удаленным звуком) с помощью AVPlayer и пропустить весь звук через отдельный Путь обработки Core Audio работает параллельно, но я боюсь, что такой подход затруднит синхронизацию AV, в дополнение к добавлению обременительной задачи автономной подготовки. Есть идея или альтернативный подход?