Я пытаюсь записать звук, используя метод, описанный в этом вопросе; с AVCaptureSession и AVCaptureAudioDataOutput. Кажется, это работает нормально с одним неудобством: это не работает в симуляторе. И AVAudioRecorder, и старое доброе демонстрационное приложение SpeakHere отлично работают в симуляторе, используя встроенный микрофон моего MacBook Pro.
Проблема в том, что [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeAudio]
дает null
в симуляторе, поэтому последующий код завершается ошибкой с сообщением (при попытке добавить null
в качестве входных данных для AVCaptureSession):
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** Can't add because the device does not support AVCaptureSessionPresetHigh. Use -[AVCaptureDevice supportsAVCaptureSessionPreset:].'
Есть ли простой способ заставить это работать в симуляторе?