private void Uninitialize() { _initialized = false; if (_timer != null) { _timer.Stop(); _timer.Tick -= DispatcherTimer_Tick; _timer = null; } if (_renderer != null) { _renderer.Dispose(); _renderer = null; } if (_effect != null) { _effect.Dispose(); _effect = null; } _filters = null; _chromaKeyFilter = null; _rotationFilter = null; _bitmap = null; if (_source != null) { _source.Dispose(); _source = null; } }
private void Cleanup() { System.Diagnostics.Debug.WriteLine("Cleaning up scanner"); try { _Ready = false; _Done = true; _Rendering = true; _Controller = null; _ImagePreview = null; _Effects = null; _Render.Dispose(); _Render = null; _Image = null; _Source.StopPreviewAsync(); _Source.PreviewFrameAvailable -= OnPreviewFrameAvailable; _Source.Dispose(); _Source = null; } catch (Exception ex) { System.Diagnostics.Debug.WriteLine("Cleaning up scanner. {0}", ex.Message); } }
private void Cleanup() { if (!_cleanedUp) { // Free all - NECESSARY TO CLEANUP PROPERLY ! _cameraPreviewImageSource.PreviewFrameAvailable -= OnPreviewFrameAvailable; _capturing = false; _cameraPreviewImageSource.Dispose(); _writeableBitmapRenderer.Dispose(); _cleanedUp = true; } }
private async Task Render() { if (!_rendering && !_stop) { _rendering = true; // Render camera preview frame to screen _writeableBitmapRenderer.Source = _cameraPreviewImageSource; _writeableBitmapRenderer.WriteableBitmap = _writeableBitmap; await _writeableBitmapRenderer.RenderAsync(); await Windows.ApplicationModel.Core.CoreApplication.MainView.CoreWindow.Dispatcher.RunAsync( CoreDispatcherPriority.High, () => { _writeableBitmap.Invalidate(); }); // Write camera preview frame to file if capturing if (_capturing) { if (_sequenceIndex < 20) { _jpegRenderer.Source = _cameraPreviewImageSource; IBuffer jpg = await _jpegRenderer.RenderAsync(); await Save(jpg, _sequenceIndex ++); } else { StartStopCapture(); } } _rendering = false; } if (_stop) { _capturing = false; _cameraPreviewImageSource.Dispose(); _writeableBitmapRenderer.Dispose(); _jpegRenderer.Dispose(); } }
}//hide progressBar private async Task DisposeResourcesAsync() { HideCommandBar(); DisposeArray(); if (bitmapRenderer != null) { bitmapRenderer.Dispose(); } bitmapRenderer = null; if (isPreviewing && (cameraSource != null)) { await cameraSource.StopPreviewAsync(); cameraSource.Dispose(); } cameraSource = null; GC.Collect(); }//dispose page resources
private void EndSession() { if (_renderer != null) { _renderer.Dispose(); _renderer = null; } if (_filterEffect != null) { _filterEffect.Dispose(); _filterEffect = null; } if (_source != null) { _source.Dispose(); _source = null; } _reframingFilter = null; _info = null; }