该错误通常是由于sessionPreset的设置不正确导致的。可以将sessionPreset设置为AVCaptureSessionPresetPhoto。这将导致比较自然的缩放系数,使前置摄像头的缩放水平与本地相机的相似程度更高。
代码示例:
let captureSession = AVCaptureSession() captureSession.sessionPreset = AVCaptureSessionPresetPhoto
// Add video input guard let frontCamera = AVCaptureDevice.defaultDevice(withMediaType: AVMediaTypeVideo) else { return } do { let input = try AVCaptureDeviceInput(device: frontCamera) captureSession.addInput(input) } catch let error { print("Error setting up video input: (error)") return }
// Add video output let videoOutput = AVCaptureVideoDataOutput() captureSession.addOutput(videoOutput)
// Start the capture session captureSession.startRunning()