Мы используем CIRectFeature
для обнаружения области прямоугольника с помощью делегата камеры (AVCaptureVideoDataOutputSampleBufferDelegate
) и отлично работает с другими устройствами, кроме iPad Pro
3-го поколения.Из-за процесса CIRectangleFeature
приложение каждый раз зависает и возвращается ниже ошибки
Выполнение буфера команд было прервано из-за ошибки во время выполнения.Сброшено (жертва ошибки / восстановления GPU) (код IOAF 5)
fileprivate let rectangleDetector = CIDetector(ofType: CIDetectorTypeRectangle, context: nil, options: [CIDetectorAccuracy:CIDetectorAccuracyHigh])
func captureOutput(_ output: AVCaptureOutput, didOutput sampleBuffer: CMSampleBuffer, from connection: AVCaptureConnection)
{
guard let pixelBuffer = CMSampleBufferGetImageBuffer(sampleBuffer) else {
return
}
let videoOutputImage = CIImage.init(cvPixelBuffer: pixelBuffer)
guard let rectangeFeatures = self.rectangleDetector?.features(in: videoOutputImage) as? [CIRectangleFeature] else {
return
}
}