protected override async void OnNavigatedTo(NavigationEventArgs e) { InitModel(); await CameraPreview.StartAsync(); CameraPreview.CameraHelper.FrameArrived += CameraHelper_FrameArrived; }
public async void OnXamlRendered(FrameworkElement control) { // Using a semaphore lock for synchronization. // This method gets called multiple times when accessing the page from Latest Pages // and creates unused duplicate references to Camera and memory leaks. await semaphoreSlim.WaitAsync(); var cameraHelper = _cameraPreviewControl?.CameraHelper; UnsubscribeFromEvents(); _cameraPreviewControl = control.FindChild <CameraPreview>(); if (_cameraPreviewControl != null) { _cameraPreviewControl.PreviewFailed += CameraPreviewControl_PreviewFailed; await _cameraPreviewControl.StartAsync(cameraHelper); _cameraPreviewControl.CameraHelper.FrameArrived += CameraPreviewControl_FrameArrived; } _imageControl = control.FindDescendantByName("CurrentFrameImage") as Image; if (_imageControl != null) { _softwareBitmapSource = new SoftwareBitmapSource(); _imageControl.Source = _softwareBitmapSource; } _errorMessageText = control.FindDescendantByName("ErrorMessage") as TextBlock; semaphoreSlim.Release(); }
private async void Application_Resuming(object sender, object e) { var cameraHelper = _cameraPreviewControl?.CameraHelper; _cameraPreviewControl.PreviewFailed += CameraPreviewControl_PreviewFailed; await _cameraPreviewControl.StartAsync(cameraHelper); _cameraPreviewControl.CameraHelper.FrameArrived += CameraPreviewControl_FrameArrived; }
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; }
protected override async void OnNavigatedTo(NavigationEventArgs e) { // Load the model await LoadModelAsync(); GetCameraSize(); Window.Current.SizeChanged += Current_SizeChanged; await CameraPreview.StartAsync(); CameraPreview.CameraHelper.FrameArrived += CameraHelper_FrameArrived; }
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; }