VisioForge

Last updated: Januar 2026

Video Capture SDK .NET vs Datastead TVideoGrabber

Umfassender Vergleich von .NET-Videoaufnahmekomponenten

Die Wahl der richtigen Videoaufnahmekomponente für Ihre .NET-Anwendung bestimmt die Fähigkeiten und langfristigen Kosten Ihres Projekts. Dieser Leitfaden bietet einen detaillierten Vergleich zwischen VisioForge Video Capture SDK .NET — einer modernen Dual-Engine-Aufnahmeplattform mit Unterstützung für fünf Betriebssysteme — und Datastead TVideoGrabber, einer ausgereiften DirectShow-basierten Aufnahmekomponente für Windows. Wir untersuchen Architektur, Funktionen, Multi-Output-Unterstützung, Streaming, Preise und praxisnahen Code, damit Sie eine fundierte Entscheidung treffen können.

Zusammenfassung

AspektVideo Capture SDK .NETTVideoGrabber
ArchitekturDual-Engine: natives DirectShow/Media Foundation + eingebettete FFmpeg-PipelinesSingle-Engine: DirectShow-eigenschaftsbasierte Komponente
PlattformunterstützungWindows, macOS, Linux, Android, iOS (5 Plattformen)Nur Windows
PreiseEUR 489 – EUR 6.999/Jahr (alle Funktionen enthalten)EUR 695 Basis + EUR 950 NDI + EUR 950 Encoder-Add-on = EUR 2.595+ für vergleichbare Funktionen
Ideal fürPlattformübergreifende Aufnahme-Apps mit Streaming, Multi-Output und Echtzeit-EffektenNur-Windows-Einzelausgabe-Aufnahme mit OCR-Anforderungen
API-StilAsync-First .NET API mit Events und Await-PatternsEigenschaftsbasiertes Komponentenmodell mit synchronen Aufrufen

Architektur im Detail

Video Capture SDK .NET Architektur

Das Video Capture SDK verwendet ein Dual-Engine-Design. Die primäre Engine nutzt DirectShow und Media Foundation unter Windows und bietet nativen Zugriff auf jedes vom Betriebssystem bereitgestellte Aufnahmegerät. Eine sekundäre eingebettete FFmpeg-Pipeline übernimmt erweiterte Codec-Operationen, IP-Kamera-Einbindung und plattformübergreifende Aufnahme. Beide Engines teilen sich eine einheitliche .NET-API-Oberfläche, sodass ein Wechsel zwischen ihnen keine Codeänderungen erfordert.

  • Native Windows-Aufnahme über DirectShow- und Media Foundation-Filtergraphen
  • Eingebettetes FFmpeg für Codec-Flexibilität ohne externe CLI-Abhängigkeiten
  • GPU-beschleunigte Vorschau über Direct3D / OpenGL-Renderer
  • Ereignisgesteuerte Architektur mit .NET async/await-Unterstützung
  • Single-Process-Modell — kein Child-Process-Management erforderlich
  • Plattformübergreifende Unterstützung: Windows, macOS, Linux, Android, iOS

TVideoGrabber Architektur

TVideoGrabber ist eine Single-Engine-DirectShow-basierte Komponente von Datastead. Sie stellt Aufnahmegeräteigenschaften und Aufnahmeeinstellungen über eine eigenschaftsbasierte API bereit. Die Konfiguration erfolgt durch Setzen von Komponenteneigenschaften vor dem Start der Aufnahme, entsprechend einem traditionellen Delphi/VCL-Komponentenmuster, das für .NET angepasst wurde.

  • DirectShow-Filtergraph für Gerätezugriff und Aufnahme unter Windows
  • Eigenschaftsbasiertes Konfigurationsmodell (Eigenschaften setzen, dann starten)
  • Integrierte ONVIF PTZ-Kamerasteuerung
  • OCR-Texterkennung während der Aufnahme (einzigartiges Feature)
  • Optionale Add-on-Module für NDI und erweiterte Kodierung
  • Nur Windows — keine Unterstützung für macOS, Linux oder Mobilgeräte

Wesentliche architektonische Unterschiede

AspektVideo Capture SDKTVideoGrabber
Engine-DesignDual-Engine (DirectShow/MF + FFmpeg)Single-Engine (nur DirectShow)
Plattformumfang5 Betriebssysteme, 7 UI-FrameworksNur Windows, WinForms/WPF
API-MusterAsync/await, Events, verwaltete ObjekteEigenschaftsbasiert, synchrone Aufrufe
Multi-OutputGleichzeitige Aufnahme + Stream + SnapshotEinzelausgabe gleichzeitig
StreamingRTMP, RTSP, SRT, HLS, NDI integriertKeine Streaming-Protokolle enthalten
Add-on-ModellAlle Funktionen in der Lizenz enthaltenBasis + kostenpflichtige Add-ons (NDI EUR 950, Encoder EUR 950)

Feature-für-Feature-Vergleich

Aufnahmequellen

FeatureVideo Capture SDKTVideoGrabber
USB-Webcams
Integrierte Laptop-Kameras
Bildschirm- / Desktop-Aufnahme
IP-Kameras (RTSP/ONVIF)
ONVIF PTZ-Steuerung
Capture Cards (Blackmagic, Magewell)⚠️(Nur über DirectShow)
TV-Tuner (BDA/DVB)⚠️(Eingeschränkte Unterstützung)
NDI-Quellen⚠️(Erfordert EUR 950 Add-on)
Virtuelle Kameras (OBS Virtual Cam)
DECKLINK-Eingang

Aufnahme

FeatureVideo Capture SDKTVideoGrabber
MP4 (H.264 / H.265)
MKV-Container
WebM (VP8 / VP9 / AV1)
AVI
WMV / ASF
MOV (ProRes)
MPEG-TS⚠️(Eingeschränkte Container-Unterstützung)
Animiertes GIF
Nur Audio (MP3, AAC, WAV)⚠️
Dateiaufteilung nach Zeit/Größe
Pre-Event-Aufnahme (Ringpuffer)

Multi-Output

FeatureVideo Capture SDKTVideoGrabber
Gleichzeitige Aufnahme + Stream
Mehrere Aufnahmeausgaben
Aufnahme + Snapshot gleichzeitig⚠️(Grundlegende Snapshot-Unterstützung)
Unterschiedliche Auflösungen pro Ausgabe
Virtuelle Kamera-Ausgabe
Timeshift / Verzögerte Wiedergabe

Streaming-Protokolle

FeatureVideo Capture SDKTVideoGrabber
RTMP Push (YouTube, Twitch)
RTSP-Servermodus
SRT (Caller / Listener)
HLS-Segmentgenerierung
NDI-Ausgabe
UDP / TCP Unicast / Multicast

Videoverarbeitung

FeatureVideo Capture SDKTVideoGrabber
Echtzeit-Größenänderung / Zuschnitt
Deinterlacing
Farbanpassung (Helligkeit, Kontrast)
Texteinblendung (Zeitstempel, Wasserzeichen)
Bildeinblendung / Logo
GPU-beschleunigte Videoeffekte
Chroma Key (Greenscreen)
Bild-in-Bild

Audio

FeatureVideo Capture SDKTVideoGrabber
Audiogerät-Aufnahme
Systemaudio (Loopback)-Aufnahme
Audio-Mixing (mehrere Eingänge)
Echtzeit-Lautstärke / Verstärkungsregelung⚠️
Audioeffekte (Echo, Reverb)
VU-Meter / Pegelüberwachung⚠️

Erkennung & Analyse

FeatureVideo Capture SDKTVideoGrabber
Bewegungserkennung
Gesichtserkennung
Barcode- / QR-Code-Erkennung
OCR-Texterkennung
Objektverfolgung
Audiopegel-Erkennung⚠️

Plattformunterstützung

Betriebssystemkompatibilität

PlattformVideo Capture SDKTVideoGrabber
Windows x64
Windows ARM64
macOS (Apple Silicon + Intel)
Linux x64 (Ubuntu, Debian, Fedora)
Linux ARM64 (Raspberry Pi)
Android (über .NET MAUI)
iOS (über .NET MAUI)

UI-Framework-Kompatibilität

FrameworkVideo Capture SDKTVideoGrabber
WinForms
WPF
.NET MAUI
Avalonia UI
Console / Service
ASP.NET Core (Hintergrunddienst)
Blazor (Serverseitige Verarbeitung)

Preisvergleich

Video Capture SDK .NET Preise

HomeEUR 489

1 Entwickler, nicht-kommerzielle Nutzung

ProfessionalEUR 1.000

1 Entwickler, kommerzielle Nutzung, alle Funktionen enthalten

Team SmallEUR 3.499

Bis zu 3 Entwickler, kommerzielle Nutzung, 1 Jahr Updates

TeamEUR 6.999

Bis zu 8 Entwickler, kommerzielle Nutzung, 1 Jahr Updates

All licenses include:

  • Lizenzgebührenfreie Distribution
  • Alle Funktionen enthalten (Streaming, NDI, GPU-Effekte, Multi-Output)
  • Alle Quellcode-Beispiele
  • Prioritärer Ticket-Support
  • Alle 5 Plattformziele enthalten

TVideoGrabber Preise

BasislizenzEUR 695

Einzelausgabe-Aufnahme, grundlegende Funktionen, nur Windows

NDI-Add-onEUR 950

Fügt NDI-Quellen-/Ausgabeunterstützung hinzu

Encoder-Add-onEUR 950

Fügt erweiterte Hardware-Kodierungsunterstützung hinzu

Gesamtpaket (Basis + NDI + Encoder)EUR 2.595

Alle Add-ons kombiniert — immer noch nur Windows, kein Streaming, Einzelausgabe

Gesamtbetriebskosten

Beim Vergleich gleichwertiger Feature-Sets ändert sich das Preisbild erheblich. Eine TVideoGrabber-Lizenz mit allen Add-ons kostet EUR 2.595 und liefert nur Windows-Einzelausgabe-Aufnahme. Das Video Capture SDK Professional für EUR 1.000 umfasst plattformübergreifende Unterstützung, Streaming, Multi-Output, GPU-Effekte und mehr — zu weniger als der Hälfte des Preises.

  • SDK Professional (EUR 1.000) enthält alles vs. TVideoGrabber Gesamtpaket (EUR 2.595) mit Lücken
  • SDK enthält Streaming-Protokolle (RTMP, SRT, HLS) — TVideoGrabber hat keine zu keinem Preis
  • SDK enthält Multi-Output-Aufnahme — TVideoGrabber hat keine zu keinem Preis
  • SDK unterstützt 5 Plattformen — TVideoGrabber nur Windows
  • SDK enthält GPU-beschleunigte Effekte — TVideoGrabber bietet nur grundlegende Verarbeitung

Codebeispiele

Beispiel 1: Webcam-Aufnahme als MP4

Video Capture SDK .NET

C#
using VisioForge.Core.VideoCapture;
using VisioForge.Core.Types.Output;

// Create the capture engine
var capture = new VideoCaptureCore();

// Set video source (first available webcam)
var devices = await capture.Video_CaptureDevice_ListAsync();
capture.Video_CaptureDevice = devices[0];

// Set audio source
var audioDevices = await capture.Audio_CaptureDevice_ListAsync();
capture.Audio_CaptureDevice = audioDevices[0];

// Configure MP4 output with H.264
capture.Output_Format = new MP4Output
{
    Video = new H264EncoderSettings
    {
        Bitrate = 4000,
        Profile = H264Profile.Main
    },
    Audio = new AACEncoderSettings
    {
        Bitrate = 192
    }
};
capture.Output_Filename = "recording.mp4";

// Enable preview
capture.Video_Preview_Enabled = true;

// Start recording with preview
await capture.StartAsync();

TVideoGrabber

C#
// TVideoGrabber — property-based approach
var grabber = new TVideoGrabber();

// Select video device by index
grabber.VideoDevice = 0;

// Select audio device by index
grabber.AudioDevice = 0;

// Set recording mode
grabber.RecordingMethod = TRecordingMethod.rmMP4;

// Set output filename
grabber.RecordingFileName = "recording.mp4";

// Set video bitrate
grabber.VideoBitrate = 4000000;

// Set audio bitrate
grabber.AudioBitrate = 192000;

// Start capture and recording
grabber.StartPreview();
grabber.StartRecording();

// Note: Properties set before starting
// No async/await — synchronous calls
// Single output only

Beispiel 2: IP-Kamera mit ONVIF PTZ-Steuerung

Video Capture SDK .NET

C#
using VisioForge.Core.VideoCapture;
using VisioForge.Core.Types;

var capture = new VideoCaptureCore();

// Connect to ONVIF IP camera
capture.IP_Camera_Source = new IPCameraSourceSettings
{
    URL = "rtsp://192.168.1.100:554/stream",
    Login = "admin",
    Password = "password",
    Type = IPCameraType.RTSP
};

// ONVIF PTZ control
var ptz = new ONVIFPTZController(
    "192.168.1.100", "admin", "password");
await ptz.MoveAsync(PanDirection.Left, TiltDirection.Up, 0.5);
await ptz.ZoomAsync(ZoomDirection.In, 0.3);
await ptz.GoToPresetAsync("entrance");

// Record while controlling PTZ
capture.Output_Format = new MP4Output();
capture.Output_Filename = "camera_feed.mp4";

// Simultaneously stream to RTMP
capture.Network_Streaming_Enabled = true;
capture.Network_Streaming_Format = new RTMPOutput
{
    URL = "rtmp://stream.example.com/live",
    StreamKey = "KEY"
};

await capture.StartAsync();

TVideoGrabber

C#
// TVideoGrabber — ONVIF PTZ support
var grabber = new TVideoGrabber();

// Set IP camera URL
grabber.IPCameraURL = "rtsp://192.168.1.100:554/stream";
grabber.IPCameraLogin = "admin";
grabber.IPCameraPassword = "password";

// ONVIF PTZ — built-in support
grabber.ONVIF_PTZ_Move(
    ePTZ_Direction.Left, 50);
grabber.ONVIF_PTZ_Zoom(
    ePTZ_ZoomDirection.In, 30);
grabber.ONVIF_PTZ_GotoPreset("entrance");

// Record to file
grabber.RecordingMethod = TRecordingMethod.rmMP4;
grabber.RecordingFileName = "camera_feed.mp4";

grabber.StartPreview();
grabber.StartRecording();

// Note: No streaming capability
// Cannot simultaneously record + stream
// PTZ control is a strong point
// Windows only

Beispiel 3: Multi-Output-Aufnahme + Streaming

Video Capture SDK .NET

C#
using VisioForge.Core.VideoCapture;

var capture = new VideoCaptureCore();

// Set webcam source
var devices = await capture.Video_CaptureDevice_ListAsync();
capture.Video_CaptureDevice = devices[0];

// Output 1: High-quality local recording
capture.Output_Format = new MP4Output
{
    Video = new H264EncoderSettings
    {
        Bitrate = 8000,
        Profile = H264Profile.High
    }
};
capture.Output_Filename = "archive.mp4";

// Output 2: Stream to YouTube via RTMP
capture.Network_Streaming_Enabled = true;
capture.Network_Streaming_Format = new RTMPOutput
{
    URL = "rtmp://a.rtmp.youtube.com/live2",
    StreamKey = "YOUR_KEY",
    Video = new H264EncoderSettings { Bitrate = 4500 }
};

// Output 3: Low-res recording for thumbnails
capture.AdditionalOutputs.Add(new OutputConfig
{
    Filename = "preview.mp4",
    Format = new MP4Output
    {
        Video = new H264EncoderSettings
        {
            Bitrate = 1000,
            Width = 640, Height = 360
        }
    }
});

// All three outputs run simultaneously
await capture.StartAsync();

TVideoGrabber

C#
// TVideoGrabber — single output only
var grabber = new TVideoGrabber();

// Select video device
grabber.VideoDevice = 0;

// Can only record to ONE file at a time
grabber.RecordingMethod = TRecordingMethod.rmMP4;
grabber.RecordingFileName = "archive.mp4";
grabber.VideoBitrate = 8000000;

grabber.StartPreview();
grabber.StartRecording();

// LIMITATIONS:
// - Cannot stream while recording
// - Cannot record multiple files simultaneously
// - No RTMP/SRT/HLS streaming support
// - No additional outputs at different resolutions
// - To stream, you would need a separate tool
//   alongside TVideoGrabber
//
// Multi-output and streaming are simply
// not available in TVideoGrabber at any
// price point.

Beispiel 4: Bewegungserkennung mit Aufnahme

Video Capture SDK .NET

C#
using VisioForge.Core.VideoCapture;

var capture = new VideoCaptureCore();

// Set video source
var devices = await capture.Video_CaptureDevice_ListAsync();
capture.Video_CaptureDevice = devices[0];

// Enable motion detection
capture.Motion_Detection.Enabled = true;
capture.Motion_Detection.Sensitivity = 70;
capture.Motion_Detection.HighlightMotion = true;
capture.Motion_Detection.HighlightColor = Color.Red;

// Motion event handler
capture.OnMotionDetected += (s, e) =>
{
    Console.WriteLine(
        $"Motion at {DateTime.Now}: " +
        $"Level={e.Level:P0}");

    // Start recording on motion
    if (!capture.IsRecording)
    {
        capture.Output_Filename =
            $"motion_{DateTime.Now:yyyyMMdd_HHmmss}.mp4";
        capture.StartRecording();
    }
};

// Configure output
capture.Output_Format = new MP4Output
{
    Video = new H264EncoderSettings
    {
        Bitrate = 4000,
        UseHardwareEncoder = true
    }
};

// Start preview with detection
await capture.StartAsync();

TVideoGrabber

C#
// TVideoGrabber — motion detection
var grabber = new TVideoGrabber();

// Select video device
grabber.VideoDevice = 0;

// Enable motion detection
grabber.MotionDetection_Enabled = true;
grabber.MotionDetection_Sensitivity = 70;

// Motion event
grabber.OnMotionDetected += (s, e) =>
{
    Console.WriteLine(
        $"Motion detected at {DateTime.Now}");
};

// Set recording format
grabber.RecordingMethod = TRecordingMethod.rmMP4;
grabber.RecordingFileName = "motion.mp4";

grabber.StartPreview();

// Note: TVideoGrabber does support
// basic motion detection — this is
// a shared capability.
// However, no motion highlight overlay,
// no hardware encoding toggle,
// no dynamic filename switching,
// no simultaneous stream on motion.

Entscheidungsmatrix

AnforderungVideo Capture SDKTVideoGrabberGewinner
Plattformübergreifend (Windows, Mac, Linux, Mobil)Video Capture SDK
Multi-Output (gleichzeitig aufnehmen + streamen)Video Capture SDK
Echtzeit-AudioeffekteVideo Capture SDK
GPU-beschleunigte VideoeffekteVideo Capture SDK
RTMP / HLS / SRT StreamingVideo Capture SDK
Virtuelle Kamera-AusgabeVideo Capture SDK
Dateiaufteilung / TimeshiftVideo Capture SDK
Hardware-Kodierung (NVENC, QSV)Video Capture SDK
NDI ohne zusätzliche KostenVideo Capture SDK
OCR während der AufnahmeTVideoGrabber

Fazit

Video Capture SDK .NET

Das Video Capture SDK bietet eine umfassende, moderne Aufnahmeplattform, die fünf Betriebssysteme, sieben UI-Frameworks abdeckt und alle Funktionen — Streaming, Multi-Output, GPU-Effekte, NDI und Hardware-Kodierung — in einer einzigen Lizenz ab EUR 1.000 enthält. Für Teams, die plattformübergreifende Aufnahme-Anwendungen erstellen, oder für jedes Projekt, das Streaming und Multi-Output-Aufnahme erfordert, bietet das SDK deutlich mehr Wert zu niedrigeren Gesamtkosten als TVideoGrabber mit Add-ons.

TVideoGrabber

TVideoGrabber ist eine ausgereifte, nur für Windows verfügbare Aufnahmekomponente mit solider DirectShow-Integration und einer einzigartigen OCR-Fähigkeit. Es ist eine vernünftige Wahl für einfache Windows-only-Aufnahmeprojekte, die Texterkennung aus dem Video-Feed benötigen. Das Fehlen von Streaming, Multi-Output-Unterstützung, plattformübergreifender Kompatibilität und die hohen Kosten der Add-ons (insgesamt EUR 2.595) schränken jedoch die Attraktivität für moderne Anwendungsentwicklung ein.

The Reality

Für reine Windows-Projekte mit OCR-Anforderungen und ohne Bedarf an Streaming oder Multi-Output ist TVideoGrabber eine brauchbare Option. Für praktisch jedes andere Videoaufnahme-Szenario — plattformübergreifend, Streaming, Multi-Output, GPU-Effekte oder kostenbewusste Entwicklung — ist das Video Capture SDK die stärkere Wahl zu einem niedrigeren Gesamtpreis.

Frequently Asked Questions

Unterstützt TVideoGrabber RTMP-Streaming zu YouTube oder Twitch?
Nein. TVideoGrabber enthält keine Streaming-Protokolle. Es ist eine Aufnahme-zu-Datei-Komponente. Zum Streamen müssten Sie ein separates Tool oder eine separate Bibliothek neben TVideoGrabber verwenden. Das Video Capture SDK enthält RTMP, RTSP, SRT, HLS und NDI-Streaming in jeder Lizenz.
Kann TVideoGrabber gleichzeitig in mehrere Dateien aufnehmen?
Nein. TVideoGrabber unterstützt nur Einzelausgabe-Aufnahme. Sie können nicht gleichzeitig ein hochwertiges Archiv und eine niedrig aufgelöste Vorschau aufnehmen, noch können Sie während des Streamings aufnehmen. Das Video Capture SDK unterstützt unbegrenzte gleichzeitige Ausgaben in verschiedenen Auflösungen und Formaten.
Warum kostet TVideoGrabber mehr als das SDK für gleichwertige Funktionen?
Die Basislizenz von TVideoGrabber kostet EUR 695, erfordert aber kostenpflichtige Add-ons für NDI (EUR 950) und erweiterte Kodierung (EUR 950), insgesamt EUR 2.595 für einen Feature-Umfang, dem immer noch Streaming und Multi-Output fehlen. Das Video Capture SDK Professional enthält alle Funktionen für EUR 1.000 — weniger als die Hälfte des Preises mit deutlich mehr Möglichkeiten.
Unterstützt das Video Capture SDK ONVIF PTZ-Kamerasteuerung wie TVideoGrabber?
Ja. Beide Produkte unterstützen ONVIF PTZ-Kamerasteuerung einschließlich Schwenken, Neigen, Zoomen und Voreinstellungspositionen. Dies ist ein Bereich, in dem die beiden Produkte funktional vergleichbar sind.
Kann ich TVideoGrabber auf macOS oder Linux verwenden?
Nein. TVideoGrabber ist eine reine Windows-Komponente, die auf DirectShow basiert, einer Windows-spezifischen Technologie. Sie läuft nicht auf macOS, Linux, Android oder iOS. Das Video Capture SDK unterstützt alle fünf Plattformen über seine plattformübergreifende Engine.
Unterstützt das Video Capture SDK OCR wie TVideoGrabber?
Das Video Capture SDK enthält keine integrierte OCR-Texterkennung. Dies ist ein Bereich, in dem TVideoGrabber einen einzigartigen Vorteil hat. Das SDK bietet jedoch Raw-Frame-Callbacks, die eine einfache Integration mit OCR-Bibliotheken von Drittanbietern wie Tesseract oder Azure Computer Vision für ähnliche Funktionalität ermöglichen.
Kann ich von TVideoGrabber zum Video Capture SDK wechseln?
Ja. Obwohl sich die API-Stile unterscheiden (TVideoGrabber verwendet eigenschaftsbasierte Konfiguration, das SDK verwendet asynchrone Events und verwaltete Objekte), ist die Migration unkompliziert. Die meisten Teams schließen die Migration in 1-2 Wochen ab und erhalten Streaming, Multi-Output, plattformübergreifende Unterstützung und GPU-Effekte als Ergebnis.

Jetzt starten

Related Comparisons