Menu Close

TVideoGrabber: Video Capture SDK for Windows

Video capture SDK for C#, VB.NET, Delphi, C++Builder, Visual C++, Java and Qt

Datastead TVideoGrabber is a video capture SDK for Windows applications: a complete framework to capture, record, stream and play video.

It allows developers to quickly integrate professional video capabilities into software written in C#, VB.NET, Delphi, C++Builder, Visual C++, Java or Qt without dealing with the complexity of multimedia pipelines.

The SDK is optimized for real-time video processing and supports multiple simultaneous video sources.

With just a few lines of code, developers can add professional video capture, recording, streaming and playback features to their applications.

TVideoGrabber provides a unified API to capture video from webcams, HDMI capture devices, IP cameras, desktop screens or media files, then preview, record, process, stream or play the content in real time.

Why developers choose TVideoGrabber

  • Fast integration into existing applications
  • High-performance video capture and encoding
  • Support for multiple programming languages and frameworks
  • Flexible API supporting multiple simultaneous video instances
  • GPU encoding and decoding built in: H.264 encoding on NVIDIA, Intel and AMD GPUs, H.264, AV1, VP9 and MJPEG decoding on the GPU

Capture from almost any source

TVideoGrabber supports a wide range of video and audio sources:

  • Webcams and USB capture devices, MJPEG decoded on the GPU when available
  • HDMI and PCIe capture cards
  • Blackmagic DeckLink devices
  • IP cameras (RTSP / RTMP / HTTP / ONVIF), with the optional RTSP/RTMP/HTTP/ONVIF Source Filter
  • Desktop screen capture
  • Media files
  • Video mixer sources

Preview, record and stream in real time

The SDK enables applications to process video streams in real time:

  • Live preview of video sources
  • Recording to MP4 (H.264 / AAC), MKV, AVI, ASF / WMV, MP3, WMA or WAV with the built-in Windows and GPU encoders, nothing to install
  • GPU encoding: H.264 on NVIDIA, Intel and AMD GPUs; AV1 and VP9 when the GPU has an encoder; multi-threaded MJPEG
  • Encoder settings: bit rate, VBR / CBR / constant quality, key frame interval, profile
  • MKV and fragmented MP4 files playable while they are being recorded; MKV files readable after a crash
  • HEVC, ProRes and the other FFmpeg codecs, MOV, MPEG-TS, FLV and WebM, with the optional Multipurpose Encoder
  • Live streaming to UDP, RTP, RTSP, RTMP or HLS, with the optional Multipurpose Encoder
  • Create new recording files during capture without losing frames

IP camera integration

With the optional Datastead RTSP/RTMP/HTTP/ONVIF Source Filter, the SDK provides advanced IP camera support:

  • ONVIF device discovery
  • RTSP and HTTP camera streams
  • PTZ camera control
  • Recording or re-streaming in the camera’s native format
  • Re-encoding when required (overlays, other codec): H.264 with the built-in GPU encoders, HEVC with the Multipurpose Encoder

Built-in media player

TVideoGrabber also includes a powerful media playback engine:

  • Playback of MP4, MOV, MKV, WebM, AVI, ASF / WMV, MP3, WAV… through the Windows decoders, no codec pack needed
  • Automatic GPU decoding, the GPU chosen per codec on multi-GPU computers: H.264, VP9 and AV1 (no Microsoft video extension needed); HEVC with the Microsoft HEVC Video Extensions or the RTSP/RTMP/HTTP/ONVIF Source Filter
  • Frame-accurate seeking
  • Playback speed control (forward or backward)
  • Frame capture during playback
  • Text and graphic overlays during playback

Audio VU-Meters

TVideoGrabber includes several VU-Meters:

  • Spectrum analyzer – a real-time, FFT-based display splitting the audio into logarithmically-spaced frequency bands, rendered with a vivid bass-to-treble color gradient.
  • Vintage VU-Meter – a strikingly realistic broadcast-style meter, with a true-to-life non-linear needle scale, a warm incandescent backlit plate and the classic red 0 VU zone.
  • Analog, Bargraph, SmoothBar, Segment-LED and Mixing-table styles, for modern or studio-console looks.

All meters support a configurable peak hold with a saturation indicator that lights up on overload, adjustable attack/release ballistics, and an optional logarithmic (PPM) scale. Any meter can be drawn as a transparent overlay directly onto the video, with full control over its position, size and orientation.

Real-time video processing

The SDK provides powerful processing capabilities directly in the video pipeline:

  • Text and image overlays
  • Picture-in-picture video
  • Rotation, cropping and scaling
  • Brightness, contrast, hue and saturation adjustments
  • Chroma key and alpha blending
  • Deinterlacing

Multiple video pipelines

Applications can run multiple TVideoGrabber instances simultaneously, enabling advanced scenarios such as:

  • Multi-camera monitoring systems
  • Video recording with live preview
  • Simultaneous playback and capture
  • Multi-channel streaming applications

Security and encryption

Real-time AES-128 and AES-256 encryption of the recordings made with the optional Multipurpose Encoder, or of the IP cameras recorded in their native format with the optional RTSP/RTMP/HTTP/ONVIF Source Filter. Encrypted files are decrypted during playback with full seeking support, and existing files can be encrypted or decrypted in batch, through the RTSP/RTMP/HTTP/ONVIF Source Filter.

Typical use cases

  • Video surveillance software
  • Broadcast and streaming tools
  • Industrial vision systems
  • Medical imaging applications
  • Video recording utilities
  • Screen capture software

Video capture code examples

The same component and the same property names are used in every language. The examples below preview a webcam, then record an RTSP IP camera to MP4 without re-encoding.

C# (WinForms)

using VidGrab;

var vg = new VideoGrabber();
vg.Parent = this;                      // any container control
vg.Dock = DockStyle.Fill;

// 1) webcam preview
vg.VideoSource = TVideoSource.vs_VideoCaptureDevice;
vg.StartPreview();
// ...
vg.Stop();

// 2) record an RTSP IP camera to MP4, H.264/HEVC kept as received
vg.VideoSource = TVideoSource.vs_IPCamera;
vg.IPCameraURL = "rtsp://user:password@192.168.1.10/stream1";
vg.RecordingMethod = TRecordingMethod.rm_MP4;
vg.RecordingInNativeFormat = true;
vg.RecordingFileName = @"C:\videos\camera.mp4";
vg.StartRecording();
// ...
vg.Stop();

Delphi (VCL)

/// TVideoGrabber component dropped on the form (VideoGrabber1)

/// 1) webcam preview
VideoGrabber1.VideoSource := vs_VideoCaptureDevice;
VideoGrabber1.StartPreview;
/// ...
VideoGrabber1.Stop;

/// 2) record an RTSP IP camera to MP4, H.264/HEVC kept as received
VideoGrabber1.VideoSource := vs_IPCamera;
VideoGrabber1.IPCameraURL := 'rtsp://user:password@192.168.1.10/stream1';
VideoGrabber1.RecordingMethod := rm_MP4;
VideoGrabber1.RecordingInNativeFormat := True;
VideoGrabber1.RecordingFileName := 'C:\videos\camera.mp4';
VideoGrabber1.StartRecording;
/// ...
VideoGrabber1.Stop;

IP camera sources use the optional RTSP/RTMP/HTTP/ONVIF Source Filter. Complete projects for every language are in the SDK download and on GitHub (see below); the full API is described in the documentation.

Installation

  • C# and VB.NET: NuGet package TVideoGrabber-SDK (evaluation version), dotnet add package TVideoGrabber-SDK, for WinForms and WPF.
  • Delphi and C++Builder: native VCL component, installed from the SDK with Component | Install Packages (TVidGrab.bpl), see the VCL installation guide.
  • Visual C++, Qt, Java and VB6: ready-to-build projects in the SDK download.

The optional Datastead filters, the RTSP/RTMP/HTTP/ONVIF Source Filter (IP cameras) and the Multipurpose Encoder (FFmpeg codecs, network streaming), can be loaded from a folder next to the application, without installer or registration (ExtraDLLPath).

Supported platforms

  • Windows 11 and Windows 10, 32-bit and 64-bit
  • Windows Server 2025, 2022, 2019 and 2016, with the Desktop Experience feature
  • .NET (C#, VB.NET): .NET Framework 3.5 to 4.8.1, .NET Core 3.x, .NET 5 to .NET 10, WinForms and WPF
  • Delphi / C++Builder (native VCL component), up to RAD Studio 13 Florence
  • Visual C++
  • Java
  • Qt

TVideoGrabber helps developers save months of development time by providing a robust, ready-to-use video framework for professional Windows applications.

License and price

  • 700.00 € per developer, royalty-free: the applications can be distributed to any number of end users, with no runtime fees.
  • The license never expires and includes 2 years of e-mail support, upgrades and new versions; after 2 years, support and upgrades can be renewed for 2 more years at 50% of the license price.
  • The license is issued to the company that publishes the application, one license per developer working with the SDK.
  • Multi-product discounts: 2 products -12%, 3 products -25%, 4 products or more -30%.

Purchase | Download the evaluation SDK

Sample code on GitHub

Ready-to-build sample projects for Delphi, C++Builder, Visual C++, Qt, C# and VB.NET are published on GitHub: TVideoGrabber SDK samples (webcams, ONVIF/RTSP IP cameras, screen capture, recording, streaming, mixing, playback). The same samples are included in the SDK download. See also the documentation and the changelog.

Frequently asked questions

What is a video capture SDK?

A video capture SDK is a library that gives an application access to cameras, capture cards and the screen (preview, recording, streaming, frame capture) without writing the low-level multimedia code. TVideoGrabber wraps DirectShow in a single component that exposes the same API in C#, VB.NET, Delphi, C++Builder, Visual C++, Java and Qt.

Which devices can TVideoGrabber capture from?

Webcams and USB capture devices, HDMI and PCIe capture cards, Blackmagic DeckLink cards, the desktop screen and media files. IP cameras (RTSP, RTMP, HTTP, ONVIF) are supported through the RTSP/RTMP/HTTP/ONVIF Source Filter, USB3 Vision and GigE Vision industrial cameras through the GenICam Vision Source, and NDI sources through the NDI Filters.

Can an IP camera be recorded without re-encoding?

Yes. With RecordingInNativeFormat enabled, the H.264 or HEVC stream of the camera is saved as received, which keeps the CPU load low. Re-encoding is only needed to add overlays or change the codec: H.264 is then encoded by the built-in Windows and GPU encoders (NVIDIA, Intel, AMD), HEVC and the other FFmpeg codecs by the Multipurpose Encoder.

Is the Multipurpose Encoder required to record MP4?

No. Since version 17, TVideoGrabber records MP4, MKV, AVI, ASF / WMV, MP3 and WMA with the Windows Media Foundation and GPU encoders, and plays MP4, MOV, MKV and WebM files with GPU decoding (H.264, AV1, VP9), without codec pack. The Multipurpose Encoder is needed only for HEVC and the other FFmpeg codecs, the MOV, MPEG-TS, FLV and WebM recording formats, and network streaming.

Is the license royalty-free?

Yes. The license is per developer, with no runtime fee per end user or per installed PC, and it never expires.

Is there a free evaluation version?

Yes. The evaluation SDK, with the sample projects for every language, can be downloaded from the Downloads page; the NuGet package also contains the evaluation version.

Which Windows versions are supported?

Windows 11 and Windows 10, 32-bit and 64-bit, and Windows Server 2016 to 2025 with the Desktop Experience feature (Server Core lacks the multimedia components required by DirectShow).

Which Delphi and C++Builder versions are supported?

TVideoGrabber is a native VCL component for Delphi, from Delphi 4 up to Delphi 13 Florence, and for C++Builder.