AVError(_nsError: Error Domain=AVFoundationErrorDomain Code=-11800 «Операция не может быть завершена» " UserInfo={NSLocalizedFailureReason=Произошла неизвестная ошибка (561017449), NSLocalizedDescription=Операция не может быть завершена, NSUnderlyingError=0x300723240 {Error Domain=NSOSStatusErrorDomain Code=561017449 "(null)" UserInfo={AVErrorFourCharCode='!pri'}} })
Покопавшись, я выяснил, что виновник пытается активировать микрофон на моем AVCaptureSession вот так:
Код: Выделить всё
if let audioDevice = AVCaptureDevice.default(for: .audio),
let audioDeviceInput = try? AVCaptureDeviceInput(device: audioDevice),
session.canAddInput(audioDeviceInput) {
session.addInput(audioDeviceInput)
}
Я пытался запустить это код внутри (и снаружи) DispatchQueue, который я использую для обработки всей логики камеры, и ничего не изменилось. Я также пытался добавить его между session.beginConfiguration() и session.commitConfiguration(), и это тоже ничего не изменило.
Подробнее здесь: https://stackoverflow.com/questions/784 ... cord-video