Switch audio session to .record-only, use nil tap format so the system picks a compatible format, and route through AVAudioEngine with a 4096 buffer. Avoids the mDataByteSize(0) assertion seen on some devices. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>