Кажется, я нашел свою проблему.
Оригинальный код с проблемой:
// Start
OSStatus status = AudioOutputUnitStart(self.ioUnit);
// Record the audio samples and save it to a file
[self createFile];
Новый код, который устранил проблему.Обратите внимание, что «createFile» сначала вызывается перед вызовом AudioOutputUnitStart
// Record the audio samples and save it to a file
[self createFile];
// Start
// Once AudioOutputUnitStart is called, it will start calling callback method quickly. We need to call the above [self createFile] first.
OSStatus status = AudioOutputUnitStart(self.ioUnit);
AudioOutputUnitStart вызывает метод обратного вызова, который записывает аудиосэмплы в файл.Поскольку файл был создан / открыт до AudioOutputUnitStart, теперь аудиосэмплы записываются в файл без ошибок.