Если вы не возражаете немного запачкаться, вы можете перейти на более низкий уровень в CoreAudio и считывать данные из входных буферов, пока не увидите значения, превышающие ваш порог, и начать запись этих входных буферов илизапуск высокоуровневой записи вызова.Вы также можете остановить запись после периода молчания.
Если вы используете CoreAudio, у вас есть большой контроль над тем, что вы записываете.Вы можете довольно легко отфильтровать фоновые шумы или добавить звуковые сигналы, чтобы обозначить, когда запись остановлена из-за молчания, и даже добавить маркеры для последующего использования, чтобы сопоставить время записи.
CoreAudio требует от вас выполнениябольше работы.Вам придется своевременно считывать буферы микрофона и либо сохранять, либо сбрасывать данные довольно быстро, чтобы не потерять звуковые данные.Это не так сложно, поскольку устройства обладают достаточной мощностью процессора для выполнения этой и других задач одновременно - вам просто нужно хорошо разбираться в CoreAudio.
Существует множество примеров Apple CoreAudioэто может направить вас.Сессии CoreAudio WWDC 2010 и 2010 также являются обязательными.