VisioForge

Last updated: Enero 2026

Video Capture SDK .NET vs Datastead TVideoGrabber

Comparación completa de componentes de captura de video .NET

Elegir el componente de captura de video adecuado para su aplicación .NET determina las capacidades y costos a largo plazo de su proyecto. Esta guía proporciona una comparación detallada entre VisioForge Video Capture SDK .NET — una plataforma moderna de captura de doble motor compatible con cinco sistemas operativos — y Datastead TVideoGrabber, un componente de captura maduro basado en DirectShow para Windows. Examinamos arquitectura, características, soporte multi-salida, streaming, precios y código real para que pueda tomar una decisión informada.

Resumen ejecutivo

AspectoVideo Capture SDK .NETTVideoGrabber
ArquitecturaDoble motor: DirectShow/Media Foundation nativo + pipelines FFmpeg integradosMotor único: componente basado en propiedades DirectShow
Soporte de plataformasWindows, macOS, Linux, Android, iOS (5 plataformas)Solo Windows
PreciosEUR 489 – EUR 6.999/año (todas las funciones incluidas)EUR 695 base + EUR 950 NDI + EUR 950 complemento codificador = EUR 2.595+ para funciones comparables
Ideal paraAplicaciones de captura multiplataforma con streaming, multi-salida y efectos en tiempo realCaptura de salida única solo para Windows con requisitos de OCR
Estilo de APIAPI .NET async-first con eventos y patrones awaitModelo de componente basado en propiedades con llamadas sincrónicas

Análisis profundo de la arquitectura

Arquitectura de Video Capture SDK .NET

El Video Capture SDK utiliza un diseño de doble motor. El motor principal envuelve DirectShow y Media Foundation en Windows, proporcionando acceso nativo a cada dispositivo de captura expuesto por el sistema operativo. Un pipeline FFmpeg secundario integrado maneja operaciones avanzadas de códec, ingesta de cámaras IP y grabación multiplataforma. Ambos motores comparten una superficie de API .NET unificada, por lo que cambiar entre ellos no requiere cambios de código.

  • Captura nativa de Windows a través de gráficos de filtros DirectShow y Media Foundation
  • FFmpeg integrado para flexibilidad de códec sin dependencias CLI externas
  • Vista previa acelerada por GPU a través de renderizadores Direct3D / OpenGL
  • Arquitectura basada en eventos con soporte async/await de .NET
  • Modelo de proceso único — no requiere gestión de procesos secundarios
  • Soporte multiplataforma: Windows, macOS, Linux, Android, iOS

Arquitectura de TVideoGrabber

TVideoGrabber es un componente basado en DirectShow de motor único desarrollado por Datastead. Expone propiedades de dispositivos de captura y configuraciones de grabación a través de una API basada en propiedades. La configuración se realiza estableciendo propiedades del componente antes de iniciar la captura, siguiendo un patrón tradicional de componente Delphi/VCL adaptado para .NET.

  • Gráfico de filtros DirectShow para acceso a dispositivos y grabación en Windows
  • Modelo de configuración basado en propiedades (establecer propiedades, luego iniciar)
  • Soporte integrado de control de cámara ONVIF PTZ
  • Reconocimiento de texto OCR durante la captura (función única)
  • Módulos complementarios opcionales para NDI y codificación avanzada
  • Solo Windows — sin soporte para macOS, Linux ni dispositivos móviles

Diferencias arquitectónicas clave

AspectoVideo Capture SDKTVideoGrabber
Diseño del motorDoble motor (DirectShow/MF + FFmpeg)Motor único (solo DirectShow)
Alcance de plataformas5 sistemas operativos, 7 frameworks UISolo Windows, WinForms/WPF
Patrón de APIAsync/await, eventos, objetos administradosBasado en propiedades, llamadas sincrónicas
Multi-salidaGrabación + stream + snapshot simultáneosUna sola salida a la vez
StreamingRTMP, RTSP, SRT, HLS, NDI integradosSin protocolos de streaming incluidos
Modelo de complementosTodas las funciones incluidas en la licenciaBase + complementos de pago (NDI EUR 950, Encoder EUR 950)

Comparación función por función

Fuentes de captura

FunciónVideo Capture SDKTVideoGrabber
Webcams USB
Cámaras integradas de portátil
Captura de pantalla / escritorio
Cámaras IP (RTSP/ONVIF)
Control ONVIF PTZ
Tarjetas de captura (Blackmagic, Magewell)⚠️(Solo vía DirectShow)
Sintonizadores de TV (BDA/DVB)⚠️(Soporte limitado)
Fuentes NDI⚠️(Requiere complemento de EUR 950)
Cámaras virtuales (OBS Virtual Cam)
Entrada DECKLINK

Grabación

FunciónVideo Capture SDKTVideoGrabber
MP4 (H.264 / H.265)
Contenedor MKV
WebM (VP8 / VP9 / AV1)
AVI
WMV / ASF
MOV (ProRes)
MPEG-TS⚠️(Soporte limitado de contenedor)
GIF animado
Solo audio (MP3, AAC, WAV)⚠️
División de archivos por tiempo/tamaño
Grabación Pre-Evento (Buffer Circular)

Multi-salida

FunciónVideo Capture SDKTVideoGrabber
Grabación + stream simultáneos
Múltiples salidas de grabación
Grabación + snapshot simultáneos⚠️(Soporte básico de snapshot)
Diferentes resoluciones por salida
Salida de cámara virtual
Timeshift / reproducción retardada

Protocolos de streaming

FunciónVideo Capture SDKTVideoGrabber
RTMP Push (YouTube, Twitch)
Modo servidor RTSP
SRT (Caller / Listener)
Generación de segmentos HLS
Salida NDI
UDP / TCP Unicast / Multicast

Procesamiento de video

FunciónVideo Capture SDKTVideoGrabber
Redimensionado / recorte en tiempo real
Desentrelazado
Ajuste de color (brillo, contraste)
Superposición de texto (marca de tiempo, marca de agua)
Superposición de imagen / logotipo
Efectos de video acelerados por GPU
Chroma Key (pantalla verde)
Picture-in-Picture

Audio

FunciónVideo Capture SDKTVideoGrabber
Captura de dispositivo de audio
Captura de audio del sistema (Loopback)
Mezcla de audio (múltiples entradas)
Control de volumen / ganancia en tiempo real⚠️
Efectos de audio (eco, reverberación)
Vúmetro / monitoreo de nivel⚠️

Detección y análisis

FunciónVideo Capture SDKTVideoGrabber
Detección de movimiento
Detección de rostros
Lectura de códigos de barras / QR
Reconocimiento de texto OCR
Seguimiento de objetos
Detección de nivel de audio⚠️

Soporte de plataformas

Compatibilidad de sistemas operativos

PlataformaVideo Capture SDKTVideoGrabber
Windows x64
Windows ARM64
macOS (Apple Silicon + Intel)
Linux x64 (Ubuntu, Debian, Fedora)
Linux ARM64 (Raspberry Pi)
Android (vía .NET MAUI)
iOS (vía .NET MAUI)

Compatibilidad de frameworks UI

FrameworkVideo Capture SDKTVideoGrabber
WinForms
WPF
.NET MAUI
Avalonia UI
Console / Service
ASP.NET Core (servicio en segundo plano)
Blazor (procesamiento del lado del servidor)

Comparación de precios

Precios de Video Capture SDK .NET

HomeEUR 489

1 desarrollador, uso no comercial

ProfessionalEUR 1.000

1 desarrollador, uso comercial, todas las funciones incluidas

Team SmallEUR 3.499

Hasta 3 desarrolladores, uso comercial, 1 año de actualizaciones

TeamEUR 6.999

Hasta 8 desarrolladores, uso comercial, 1 año de actualizaciones

All licenses include:

  • Distribución libre de regalías
  • Todas las funciones incluidas (streaming, NDI, efectos GPU, multi-salida)
  • Todos los ejemplos de código fuente
  • Soporte prioritario por ticket
  • Las 5 plataformas objetivo incluidas

Precios de TVideoGrabber

Licencia baseEUR 695

Captura de salida única, funciones básicas, solo Windows

Complemento NDIEUR 950

Añade soporte de fuente/salida NDI

Complemento codificadorEUR 950

Añade soporte de codificación de hardware avanzada

Paquete completo (Base + NDI + Codificador)EUR 2.595

Todos los complementos combinados — aún solo Windows, sin streaming, salida única

Costo total de propiedad

Al comparar conjuntos de funciones equivalentes, el panorama de precios cambia significativamente. Una licencia de TVideoGrabber con todos los complementos cuesta EUR 2.595 y ofrece captura de salida única solo para Windows. El Video Capture SDK Professional a EUR 1.000 incluye soporte multiplataforma, streaming, multi-salida, efectos GPU y más — a menos de la mitad del precio.

  • SDK Professional (EUR 1.000) incluye todo vs. paquete completo TVideoGrabber (EUR 2.595) con carencias
  • SDK incluye protocolos de streaming (RTMP, SRT, HLS) — TVideoGrabber no tiene ninguno a ningún precio
  • SDK incluye grabación multi-salida — TVideoGrabber no tiene ninguna a ningún precio
  • SDK cubre 5 plataformas — TVideoGrabber solo cubre Windows
  • SDK incluye efectos acelerados por GPU — TVideoGrabber tiene solo procesamiento básico

Ejemplos de código

Ejemplo 1: Grabación de webcam a 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

Ejemplo 2: Cámara IP con control ONVIF PTZ

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

Ejemplo 3: Grabación multi-salida + 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.

Ejemplo 4: Detección de movimiento con grabación

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.

Matriz de decisión

RequisitoVideo Capture SDKTVideoGrabberGanador
Multiplataforma (Windows, Mac, Linux, móvil)Video Capture SDK
Multi-salida (grabar + transmitir simultáneamente)Video Capture SDK
Efectos de audio en tiempo realVideo Capture SDK
Efectos de video acelerados por GPUVideo Capture SDK
Streaming RTMP / HLS / SRTVideo Capture SDK
Salida de cámara virtualVideo Capture SDK
División de archivos / timeshiftVideo Capture SDK
Codificación por hardware (NVENC, QSV)Video Capture SDK
NDI sin costo adicionalVideo Capture SDK
OCR durante la capturaTVideoGrabber

Conclusión

Video Capture SDK .NET

El Video Capture SDK ofrece una plataforma de captura moderna y completa que cubre cinco sistemas operativos, siete frameworks UI e incluye todas las funciones — streaming, multi-salida, efectos GPU, NDI y codificación por hardware — en una sola licencia desde EUR 1.000. Para equipos que construyen aplicaciones de captura multiplataforma o cualquier proyecto que requiera streaming y grabación multi-salida, el SDK ofrece significativamente más valor a un costo total menor que TVideoGrabber con complementos.

TVideoGrabber

TVideoGrabber es un componente de captura maduro solo para Windows con sólida integración DirectShow y una capacidad OCR única. Es una opción razonable para proyectos simples de captura solo para Windows que requieren reconocimiento de texto del flujo de video. Sin embargo, su falta de streaming, soporte multi-salida, compatibilidad multiplataforma y el alto costo de los complementos (EUR 2.595 en total) limitan su atractivo para el desarrollo de aplicaciones modernas.

The Reality

Para proyectos solo Windows con requisitos de OCR y sin necesidad de streaming o multi-salida, TVideoGrabber es una opción viable. Para prácticamente cualquier otro escenario de captura de video — multiplataforma, streaming, multi-salida, efectos GPU o desarrollo consciente de costos — el Video Capture SDK es la opción más sólida a un precio total menor.

Frequently Asked Questions

¿TVideoGrabber soporta streaming RTMP a YouTube o Twitch?
No. TVideoGrabber no incluye ningún protocolo de streaming. Es un componente de captura a archivo. Para transmitir, necesitaría usar una herramienta o biblioteca separada junto con TVideoGrabber. El Video Capture SDK incluye streaming RTMP, RTSP, SRT, HLS y NDI integrado en cada licencia.
¿Puede TVideoGrabber grabar en múltiples archivos simultáneamente?
No. TVideoGrabber solo soporta grabación de salida única. No puede grabar simultáneamente un archivo de alta calidad y una vista previa de baja resolución, ni puede grabar mientras transmite. El Video Capture SDK soporta salidas simultáneas ilimitadas en diferentes resoluciones y formatos.
¿Por qué TVideoGrabber cuesta más que el SDK para funciones equivalentes?
La licencia base de TVideoGrabber cuesta EUR 695, pero requiere complementos de pago para NDI (EUR 950) y codificación avanzada (EUR 950), totalizando EUR 2.595 por un conjunto de funciones que aún carece de streaming y multi-salida. El Video Capture SDK Professional incluye todas las funciones por EUR 1.000 — menos de la mitad del precio con significativamente más capacidades.
¿El Video Capture SDK soporta control de cámara ONVIF PTZ como TVideoGrabber?
Sí. Ambos productos soportan control de cámara ONVIF PTZ incluyendo panorámica, inclinación, zoom y posiciones preestablecidas. Esta es un área donde los dos productos son comparables en funcionalidad.
¿Puedo usar TVideoGrabber en macOS o Linux?
No. TVideoGrabber es un componente solo para Windows basado en DirectShow, que es una tecnología específica de Windows. No funciona en macOS, Linux, Android ni iOS. El Video Capture SDK soporta las cinco plataformas a través de su motor multiplataforma.
¿El Video Capture SDK soporta OCR como TVideoGrabber?
El Video Capture SDK no incluye reconocimiento de texto OCR integrado. Esta es un área donde TVideoGrabber tiene una ventaja única. Sin embargo, el SDK proporciona callbacks de frames sin procesar que permiten una fácil integración con bibliotecas OCR de terceros como Tesseract o Azure Computer Vision para funcionalidad similar.
¿Puedo migrar de TVideoGrabber al Video Capture SDK?
Sí. Aunque los estilos de API difieren (TVideoGrabber usa configuración basada en propiedades, el SDK usa eventos asíncronos y objetos administrados), la migración es sencilla. La mayoría de los equipos completan la migración en 1-2 semanas y obtienen streaming, multi-salida, soporte multiplataforma y efectos GPU como resultado.

Comenzar

Related Comparisons