bool SetupCaptureSession () { // configure the capture session for low resolution, change this if your code // can cope with more data or volume session = new AVCaptureSession () { SessionPreset = AVCaptureSession.PresetMedium }; // create a device input and attach it to the session var captureDevice = AVCaptureDevice.DefaultDeviceWithMediaType (AVMediaType.Video); var input = AVCaptureDeviceInput.FromDevice (captureDevice); if (input == null){ // No input device return false; } session.AddInput (input); // create a VideoDataOutput and add it to the sesion var output = new AVCaptureVideoDataOutput () { VideoSettings = new AVVideoSettings (CVPixelFormatType.CV32BGRA) }; // configure the output queue = new DispatchQueue ("myQueue"); qrScanner = new QrScanner (this); output.SetSampleBufferDelegateAndQueue (qrScanner, queue); session.AddOutput (output); previewLayer = new AVCaptureVideoPreviewLayer (session); previewLayer.Orientation = AVCaptureVideoOrientation.Portrait; previewLayer.VideoGravity = "AVLayerVideoGravityResizeAspectFill"; session.StartRunning (); return true; }
protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); scanner = new QrScanner(this); SetContentView(scanner); }
protected override void OnCreate (Bundle bundle) { base.OnCreate (bundle); scanner = new QrScanner (this); SetContentView (scanner); }
private async void QrButton_Tapped(object sender, EventArgs e) { bool hasCameraAccess = await AppPermission.Camera(); if (hasCameraAccess) { QrScanner scannerPage = new QrScanner(); scannerPage.BindMethod(QrScannerCallback); await App.Navigation.NavigateModalByRenderer(scannerPage); } else { Utils.Toast("Allow permission to access camera"); } }
private async void OpenQrScanner(object sender, EventArgs e) { bool hasCameraAccess = await AppPermission.Camera(); if (hasCameraAccess) { QrScanner scannerPage = new QrScanner(); scannerPage.BindMethod(OnScannedResult); await App.Navigation.NavigateByRenderer(scannerPage); } else { Utils.Toast("Allow permission to access camera"); } }
bool SetupCaptureSession() { // configure the capture session for low resolution, change this if your code // can cope with more data or volume session = new AVCaptureSession() { SessionPreset = AVCaptureSession.PresetMedium }; // create a device input and attach it to the session var captureDevice = AVCaptureDevice.DefaultDeviceWithMediaType(AVMediaType.Video); if (captureDevice == null) { // No input device return(false); } var input = AVCaptureDeviceInput.FromDevice(captureDevice); if (input == null) { // No input device return(false); } session.AddInput(input); // create a VideoDataOutput and add it to the sesion var output = new AVCaptureVideoDataOutput() { VideoSettings = new AVVideoSettings(CVPixelFormatType.CV32BGRA) }; // configure the output queue = new DispatchQueue("myQueue"); qrScanner = new QrScanner(this); output.SetSampleBufferDelegateAndQueue(qrScanner, queue); session.AddOutput(output); previewLayer = new AVCaptureVideoPreviewLayer(session); previewLayer.Orientation = AVCaptureVideoOrientation.Portrait; previewLayer.VideoGravity = "AVLayerVideoGravityResizeAspectFill"; session.StartRunning(); return(true); }
private void button1_Click(object sender, EventArgs e) { QrScanner AE = new QrScanner(); AE.Show(); }
private void button2_Click(object sender, EventArgs e) { QrScanner q = new QrScanner(); q.Show(); }