private void VideoEdit1_OnVideoFrameBitmap(object sender, VideoFrameBitmapEventArgs e) { Bitmap frame; if (e.StartTime < 2000) { frame = Resources._1; } else if (e.StartTime < 4000) { frame = Resources._2; } else if (e.StartTime < 6000) { frame = Resources._3; } else if (e.StartTime < 8000) { frame = Resources._4; } else { frame = Resources._5; } using (Graphics g = Graphics.FromImage(e.Frame)) { g.DrawImage(frame, 0, 0, frame.Width, frame.Height); e.UpdateData = true; } }
private void videoCapture1_OnVideoFrameBitmap(object sender, VideoFrameBitmapEventArgs e) { if (e.SourceStream == VFVideoStreamType.PIP1) { videoScreen2.Image = e.Frame; } }
private void VideoCapture1_OnVideoFrameBitmap(object sender, VideoFrameBitmapEventArgs e) { using (var grf = Graphics.FromImage(e.Frame)) { var dur = e.Timestamp.TotalMilliseconds / _frameDuration; var idx = dur % _images.Count; grf.DrawImage(_images[(int)idx], _imageRect, _imageRect, GraphicsUnit.Pixel); e.UpdateData = true; } }
private void VideoEdit1_OnVideoFrameBitmap(object sender, VideoFrameBitmapEventArgs e) { Bitmap frame; if (predefinedImagesUsed) { if (e.StartTime.TotalMilliseconds < 2000) { frame = Resources._1; } else if (e.StartTime.TotalMilliseconds < 4000) { frame = Resources._2; } else if (e.StartTime.TotalMilliseconds < 6000) { frame = Resources._3; } else if (e.StartTime.TotalMilliseconds < 8000) { frame = Resources._4; } else { frame = Resources._5; } } else { int index = (int)Math.Truncate(e.StartTime.TotalMilliseconds / 2000); if (loadedImageFilename == loadedFiles[index]) { frame = loadedImage; } else { loadedImageFilename = loadedFiles[index]; loadedImage?.Dispose(); loadedImage = new Bitmap(loadedFiles[index]); frame = loadedImage; } } using (Graphics g = Graphics.FromImage(e.Frame)) { g.DrawImage(frame, new RectangleF(0, 0, e.Frame.Width, e.Frame.Height), new RectangleF(0, 0, frame.Width, frame.Height), GraphicsUnit.Pixel); e.UpdateData = true; } }