Skip to content

Instantly share code, notes, and snippets.

@visioforge
Last active July 22, 2021 14:05
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save visioforge/4c2b9091f6438f740c292f067012e43a to your computer and use it in GitHub Desktop.
Save visioforge/4c2b9091f6438f740c292f067012e43a to your computer and use it in GitHub Desktop.
5 lines of code sample - Video capture from camera with text overlay - VisioForge Video Capture SDK .Net - https://www.visioforge.com/video-capture-sdk-net
// Required NuGet packages:
// https://www.nuget.org/packages/VisioForge.DotNet.VideoCapture/
// https://www.nuget.org/packages/VisioForge.DotNet.Core.Redist.VideoCapture.x64/
// https://www.nuget.org/packages/VisioForge.DotNet.Core.Redist.VideoCapture.x86/
// https://www.nuget.org/packages/VisioForge.DotNet.Core.Redist.MP4.x64/
// https://www.nuget.org/packages/VisioForge.DotNet.Core.Redist.MP4.x86/
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
using VisioForge.Types.OutputFormat;
using VisioForge.Types.VideoEffects;
namespace SampleCapture
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
videoCapture1.OnError += OnError;
}
private void btStart_Click(object sender, EventArgs e)
{
videoCapture1.Video_CaptureDevice = videoCapture1.Video_CaptureDevicesInfo[0].Name;
videoCapture1.Audio_CaptureDevice = videoCapture1.Audio_CaptureDevicesInfo[0].Name;
videoCapture1.Mode = VisioForge.Types.VFVideoCaptureMode.VideoCapture;
videoCapture1.Output_Filename = Environment.GetFolderPath(Environment.SpecialFolder.MyVideos) + "\\output.mp4";
videoCapture1.Output_Format = new VFMP4v8v10Output();
// we using existing simple code for MP4 capture
// add text overlay
videoCapture1.Video_Effects_Enabled = true;
videoCapture1.Video_Effects_Clear();
var textOverlay = new VFVideoEffectTextLogo(true) { Text = "Hello World!", Top = 50, Left = 50, FontColor = Color.Red };
videoCapture1.Video_Effects_Add(textOverlay);
videoCapture1.Start();
}
private void btStop_Click(object sender, EventArgs e)
{
videoCapture1.Stop();
}
private void OnError(object sender, ErrorsEventArgs e)
{
System.Diagnostics.Debug.WriteLine(e.Message);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment