Ejemplo n.º 1
0
        void setupAVFoundationFaceDetection()
        {
            faceViews = new Dictionary <int, FaceView> ();

            metadataOutput = new AVCaptureMetadataOutput();
            if (!session.CanAddOutput(metadataOutput))
            {
                metadataOutput = null;
                return;
            }

            var metaDataObjectDelegate = new MetaDataObjectDelegate();

            metaDataObjectDelegate.DidOutputMetadataObjectsAction = DidOutputMetadataObjects;

            metadataOutput.SetDelegate(metaDataObjectDelegate, DispatchQueue.MainQueue);
            session.AddOutput(metadataOutput);

            if (!metadataOutput.AvailableMetadataObjectTypes.Contains(AVMetadataObject.TypeFace))
            {
                teardownAVFoundationFaceDetection();
                return;
            }

            metadataOutput.MetadataObjectTypes = new NSString[] { AVMetadataObject.TypeFace };
            updateAVFoundationFaceDetection();
        }
Ejemplo n.º 2
0
        void setupAVFoundationFaceDetection()
        {
            faceViews = new Dictionary <int, FaceView>();

            metadataOutput = new AVCaptureMetadataOutput();
            if (!captureSession.CanAddOutput(metadataOutput))
            {
                metadataOutput = null;
                return;
            }

            var metaDataObjectDelegate = new MetaDataObjectDelegate();

            metaDataObjectDelegate.DidOutputMetadataObjectsAction = DidOutputMetadataObjects;

            metadataOutput.SetDelegate(metaDataObjectDelegate, DispatchQueue.MainQueue);
            captureSession.AddOutput(metadataOutput);



            if (!metadataOutput.AvailableMetadataObjectTypes.HasFlag(AVMetadataObjectType.Face))
            {
                //teardownAVFoundationFaceDetection();
                return;
            }

            metadataOutput.MetadataObjectTypes = AVMetadataObjectType.Face;

            //DispatchQueue.MainQueue.DispatchAsync();
            //sessionQueue.DispatchAsync(updateAVFoundationFaceDetection);
            //updateAVFoundationFaceDetection();
        }
Ejemplo n.º 3
0
		void setupAVFoundationFaceDetection ()
		{
			faceViews = new Dictionary<int, FaceView> ();

			metadataOutput = new AVCaptureMetadataOutput ();
			if (!session.CanAddOutput (metadataOutput)) {
				metadataOutput = null;
				return;
			}

			var metaDataObjectDelegate = new MetaDataObjectDelegate ();
			metaDataObjectDelegate.DidOutputMetadataObjectsAction = DidOutputMetadataObjects;

			metadataOutput.SetDelegate (metaDataObjectDelegate, DispatchQueue.MainQueue);
			session.AddOutput (metadataOutput);

			if (metadataOutput.AvailableMetadataObjectTypes != AVMetadataObjectType.Face) {
				teardownAVFoundationFaceDetection ();
				return;
			}

			metadataOutput.MetadataObjectTypes = AVMetadataObjectType.Face;
			updateAVFoundationFaceDetection ();
		}