public override ICaptureSource CreateCaptureSource(CameraSummary summary) { string moniker = summary.Identifier; FrameGrabber grabber = new FrameGrabber(summary, moniker); return(grabber); }
public override ICaptureSource CreateCaptureSource(CameraSummary summary) { SnapshotRetriever snapper = snapshotting.FirstOrDefault(s => s.Identifier == summary.Identifier); if (snapper != null) { snapper.Cancel(); snapper.Thread.Join(500); if (snapper.Thread.IsAlive) { snapper.Thread.Abort(); } snapper.CameraThumbnailProduced -= SnapshotRetriever_CameraThumbnailProduced; snapshotting.Remove(snapper); } string moniker = summary.Identifier; FrameGrabber grabber = new FrameGrabber(summary, moniker); return(grabber); }