public UICameraPreview(CameraPreview camera) { cameraOptions = camera.Camera; _IsPreviewing = camera.IsPreviewing; Camera = camera; CaptureSession = new AVCaptureSession(); previewLayer = new AVCaptureVideoPreviewLayer(CaptureSession) { Frame = Bounds, VideoGravity = AVLayerVideoGravity.ResizeAspectFill }; Layer.AddSublayer(previewLayer); Initialize(); MessagingCenter.Subscribe <LifeCyclePayload>(this, "", (p) => { switch (p.Status) { case LifeCycle.OnSleep: //Sleep状態になるときにリソース解放 Release(); break; case LifeCycle.OnResume: //Resume状態になるときに初期化 Initialize(); break; } }); }
public void OnEnable() { screen = (TextureOverlay)target; o = screen.gameObject; boost = PlayerSettings.colorSpace == ColorSpace.Linear; CameraPreview.Boost(boost); }
protected override void OnElementChanged(VisualElementChangedEventArgs e) { base.OnElementChanged(e); if (e.OldElement != null || Element == null) { return; } previewPage = e.NewElement as PreviewPage; cameraPreview = previewPage.UnderlyingService.CameraPreview as CameraPreview; cameraPreview.LiveCameraView = liveCameraStream; previewPage.UnderlyingService.DetectionResultAquired += (o, result) => { }; previewPage.UnderlyingService.StartService(); try { SetupUserInterface(); SetupEventHandlers(); cameraPreview.StartPreview(() => { }); AuthorizeCameraUse(); } catch (Exception ex) { System.Diagnostics.Debug.WriteLine($"\t\t\tERROR: {ex.Message}"); } }
public DroidCameraPreview(Context context, CameraPreview formsCameraPreview) : base(context) { FormsCameraPreview = formsCameraPreview; surfaceView = new SurfaceView(context); AddView(surfaceView); _IsPreviewing = FormsCameraPreview.IsPreviewing; holder = surfaceView.Holder; holder.AddCallback(this); this.context = context; MessagingCenter.Subscribe <LifeCyclePayload>(this, "", (p) => { switch (p.Status) { case LifeCycle.OnSleep: if (surfaceCreated) { //Sleepの時にSurfaceViewが生成されていればリソース解放 Release(); } break; case LifeCycle.OnResume: if (surfaceCreated) { //Resumeの時にSurfaceViewが生成されていればリソース初期化 Initialize(); } break; } }); }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.activity_main); if (SetCameraInstance() == true) { _camPreview = new CameraPreview(this, _camera, _cameraId); } else { Finish(); } var preview = (RelativeLayout)FindViewById(Resource.Id.preview_layout); preview.AddView(_camPreview); var previewLayout = (RelativeLayout.LayoutParams)_camPreview.LayoutParameters; previewLayout.Width = ViewGroup.LayoutParams.MatchParent; previewLayout.Height = ViewGroup.LayoutParams.MatchParent; _camPreview.LayoutParameters = previewLayout; var captureButton = (Button)FindViewById(Resource.Id.button_capture); captureButton.Click += (s, e) => { _camera.TakePicture(null, null, _camPreview); }; // at last, a call to set the right layout of the elements (like the button) // depending on the screen orientation (if it's changeable). FixElementsPosition(Resources.Configuration.Orientation); }
public CameraModel GetCameraSize(CameraPreview cameraPreview) { return(new CameraModel { Width = (uint)cameraPreview.Width, Height = (uint)cameraPreview.Height }); }
protected override async void OnNavigatedTo(NavigationEventArgs e) { _model = await LearningModelYolo.CreateFromStreamAsync(); _cameraModel = new CameraModel().GetCameraSize(CameraPreview); await CameraPreview.StartAsync(); CameraPreview.CameraHelper.FrameArrived += CameraHelper_FrameArrived; }
protected override async void OnNavigatedTo(NavigationEventArgs e) { LoadYoloOnnxModel(); Window.Current.SizeChanged += Current_SizeChanged; await CameraPreview.StartAsync(); CameraPreview.CameraHelper.FrameArrived += CameraHelper_FrameArrived; }
public override void OnInspectorGUI() { DrawDefaultInspector(); if (!CameraPreview.IsOpen) { if (GUILayout.Button(OPEN_MESSAGE)) { CameraPreview window = (CameraPreview)EditorWindow.GetWindow(typeof(CameraPreview)); window.Create(); window.camera = o.GetComponent <Camera>(); window.Show(); } } else { if (GUILayout.Button(CLOSE_MESSAGE)) { CameraPreview window = (CameraPreview)EditorWindow.GetWindow(typeof(CameraPreview)); window.Close(); } GUILayout.Box("", GUILayout.ExpandWidth(true), GUILayout.Height(1)); previewMode = (PREVIEW_MODE)EditorGUILayout.EnumPopup("Preview mode", previewMode); if (previewMode == PREVIEW_MODE.WINDOWED) { CameraPreview.customResolution = EditorGUILayout.Vector2Field("Custom resolution", CameraPreview.customResolution); } EditorGUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); if (GUILayout.Button("Apply")) { CameraPreview.SetGameWindow(previewMode == PREVIEW_MODE.FULLSCREEN); } EditorGUILayout.EndHorizontal(); } /***** Uncomment to watch the lights taken in forward mode ****/ /* * for(int i = 0; i < screen.numberPointLights; i++) * { * TextureOverlay.PointLight p = screen.pointLights[i]; * EditorGUILayout.LabelField("Point light : pos " + p.position + "|| range " + p.range); * } * * for (int i = 0; i < screen.numberSpotLights; i++) * { * TextureOverlay.SpotLight p = screen.spotLights[i]; * EditorGUILayout.LabelField("Spot light : pos " + p.position + " || direction" + p.direction); * } */ }
public override void OnInit() { Debug.WriteLine("Initializing the plugin..."); if (_camPreview == null) { Debug.WriteLine("Initializing camera preview..."); _camPreview = new CameraPreview(); _camPreview.OnFrameProcessed += OnFrameProcessed; } }
protected override async void OnNavigatedTo(NavigationEventArgs e) { _softwareBitmapSource = new SoftwareBitmapSource(); CurrentFrameImage.Source = _softwareBitmapSource; GetCameraSize(); Window.Current.SizeChanged += Current_SizeChanged; await CameraPreview.StartAsync(); CameraPreview.CameraHelper.FrameArrived += CameraHelper_FrameArrived; }
public override void StartActions() { CameraPreview component = base.GetComponent <CameraPreview>(); if (!component || component.ControlPoints == null || component.ControlPoints.Count == 0) { return; } Vector2 position = component.ControlPoints[0].position; base.transform.position = new Vector3(position.x, position.y, base.transform.position.z); }
public override void OnInspectorGUI() { DrawDefaultInspector(); if (!CameraPreview.IsOpen) { if (GUILayout.Button(OPEN_MESSAGE)) { CameraPreview window = (CameraPreview)EditorWindow.GetWindow(typeof(CameraPreview)); boost = PlayerSettings.colorSpace == ColorSpace.Linear; window.Create(); window.camera = o.GetComponent <Camera>(); window.Show(); CameraPreview.Boost(boost); } } else { if (GUILayout.Button(CLOSE_MESSAGE)) { CameraPreview window = (CameraPreview)EditorWindow.GetWindow(typeof(CameraPreview)); window.Close(); } EditorGUI.BeginChangeCheck(); GUIContent content = new GUIContent("Gamma Correction", "Correct the gamma color applied by the HMD"); boost = EditorGUILayout.Toggle(content, boost); CameraPreview.Boost(boost); if (EditorGUI.EndChangeCheck()) { CameraPreview.Boost(boost); } EditorGUI.BeginChangeCheck(); content = new GUIContent("Full Screen", "Press escape to exit full screen mode"); CameraPreview.isFullScreen = EditorGUILayout.Toggle(content, CameraPreview.isFullScreen); if (EditorGUI.EndChangeCheck()) { if (CameraPreview.isFullScreen) { CameraPreview.FullScreenGameWindow(); } else { CameraPreview.CloseGameWindow(); } } } }
public UICameraPreview(CameraPreview camera) { cameraOptions = camera.Camera; _IsPreviewing = true; Camera = camera; CaptureSession = new AVCaptureSession(); previewLayer = new AVCaptureVideoPreviewLayer(CaptureSession) { Frame = Bounds, VideoGravity = AVLayerVideoGravity.ResizeAspectFill }; Layer.AddSublayer(previewLayer); Initialize(); }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.SessionActivityLayout); camera = Camera.Open(); preview = new CameraPreview(this, camera); SurfaceView surfaceView = FindViewById <SurfaceView>(Resource.Id.dummySurfaceView); surfaceHolder = surfaceView.Holder; surfaceHolder.AddCallback(new CameraPreview(this, camera)); surfaceHolder.SetType(SurfaceType.PushBuffers); var spyButton = FindViewById <Button>(Resource.Id.spyButton); spyButton.Click += (sender, args) => { TakePicture(); }; }
protected override void OnElementChanged(ElementChangedEventArgs <CameraView> e) { base.OnElementChanged(e); if (e.OldElement != null || Element == null) { return; } if (e.NewElement != null) { if (Control == null) { cameraView = ((CameraView)e.NewElement); cameraPreview = new CameraPreview(Context, cameraView.DefaultTorchOn, cameraView.VibrationOnDetected, cameraView.AutoStartScanning); cameraPreview.OnDetected += (list) => { cameraView?.TriggerOnDetected(list); }; SetNativeControl(cameraPreview); } } }
// Initialize Camera private void InitializeCamera() { _camera = CameraHelper.GetCameraInstance((int)_cameraFacing); if (_camera != null) { //CameraHelper.SetCameraDisplayOrientation(this, 0, _camera); SurfaceOrientation displayRotation = this.WindowManager.DefaultDisplay.Rotation; // Create our Preview view and set it as the content of our activity. _preview = new CameraPreview(this, _camera, (int)_cameraFacing, displayRotation); //IList<Android.Hardware.Camera.Size> sizes = _camera.GetParameters().SupportedPreviewSizes; //_camera.GetParameters().SetPreviewSize(sizes[0].Width, sizes[0].Height); camera_preview.AddView(_preview); SetFlash(); } else { AlertBox.Create("", "Could not access camera!", this); } }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.Main); TableLayout tl = FindViewById <TableLayout>(Resource.Id.camera_preview); LayoutParams layoutParams = new TableRow.LayoutParams(LayoutParams.MatchParent, LayoutParams.MatchParent); TableRow.LayoutParams tableLayoutParams = new TableRow.LayoutParams(); tableLayoutParams.Span = 4; tableLayoutParams.Weight = 1; TableRow tr = new TableRow(this); mCamera = getCameraInstance(); mCameraPreview = new CameraPreview(this, mCamera, null, Android.Views.SurfaceOrientation.Rotation0); mCameraPreview.LayoutParameters = tableLayoutParams; tr.AddView(mCameraPreview, 0); tl.AddView(tr, 6); Button captureButton = FindViewById <Button>(Resource.Id.button_capture); captureButton.Click += CaptureButton_Click; }
/// <summary> /// Обработка запуска превью камеры /// </summary> private void StartCamera() { if (camera != null) { try { camera.StartPreview(); return; } catch (Java.Lang.Exception e) { } } try { camera = CameraHelpers.GetCameraInstance(); flashCurrent--; ToggleFlash(); if (camera == null) { //Log.Debug("Can not connect to camera."); } else { preview = new CameraPreview(this, camera); cameraPreview.RemoveAllViews(); cameraPreview.AddView(preview); } } catch (Exception e) { Log.Debug("Camera activity", e.StackTrace); } }
protected override void OnResume() { base.OnResume(); cameraPreview = FindViewById<CameraPreview>(Resource.Id.texture); cameraPreview?.InitPreview(this); OpenCamera(); InitSensors(); }
public CameraFeedUtility(CameraPreview cameraPreview) { this.cameraPreview = cameraPreview; }
protected override void OnResume() { base.OnResume(); cameraPreview = FindViewById<CameraPreview>(Resource.Id.texture); cameraPreview.InitPreview(this); if (cameraFeedUtility == null) { cameraFeedUtility = new CameraFeedUtility(cameraPreview); } cameraFeedUtility.StartPreview(); cameraFeedUtility.UpdatePreviewRotation(world.Rotation); InitSensors(); }