AVAssetReader может записывать в файл с помощью AVAssetWriter.
Чтобы получить PCM, вы можете записать формат файла WAV, а затем пропустить заголовок (и) RIFF при чтении. Тогда вам нужно всего лишь извлечь столько данных из файла WAV в память за один раз, сколько требует длина вашего БПФ. Это должно вызвать проблему с объемом памяти, только если каждый FFT имеет длину более 1 миллиона сэмплов.
Вы можете использовать вызовы posix C / unix (fgetc и т. Д.) Для чтения потока файлов под iOS. Или читать из NSInputStream в NSData.