Как объединить несколько аудиобуферов(система микрофон) из широковещательного расширения ReplayKit с помощью AVAssetWriter?

#ios #swift #avassetwriter #screen-recording #replaykit

#iOS #быстрый #авассетрайтер #запись с экрана #реплейкит

Вопрос:

Я использую широковещательное расширение ReplayKit для записи системного экрана, и оно отлично работает для одного звука, то есть для микрофона или системного звука. Но у меня возникли проблемы при попытке объединить аудиоаппликационные и аудиомические буферы с помощью AVAssetWriter. Я попробовал следующие подходы:

  1. Попытался объединить звуковые буферы в один AVAssetWriterInput и получить потрескивающий звук.
  2. Попробовал использовать отдельный AVAssetWriterInput, один для audioApp и один для audioMic. Но результирующий вывод представляет собой один звук, то есть звук с микрофона.
  3. Попытался изменить настройки аудиовыхода, но получил сбой из-за недопустимого количества каналов.

Ниже приведены настройки аудиовыхода, которые я использую:

 audioOutputSettings = [  AVFormatIDKey: kAudioFormatMPEG4AAC,  AVSampleRateKey: 44100,  AVNumberOfChannelsKey: 2 ]  

Кто-нибудь может привести пример того, как объединить несколько аудиофайлов с помощью AVAssetWriter?

Заранее спасибо!