VisioForge

Last updated: 2026年9月

Video Capture SDK .NET vs Datastead TVideoGrabber

包括的な.NETビデオキャプチャコンポーネント比較

.NETアプリケーションに適したビデオキャプチャコンポーネントの選択は、プロジェクトの機能と長期的なコストを決定します。このガイドでは、VisioForge Video Capture SDK .NET(5つのオペレーティングシステムをサポートするモダンなデュアルエンジンキャプチャプラットフォーム)とDatastead TVideoGrabber(Windows向けの成熟したDirectShowベースのキャプチャコンポーネント)の詳細な比較を提供します。アーキテクチャ、機能、マルチ出力サポート、ストリーミング、価格、実際のコードを検証し、情報に基づいた判断ができるようにします。

年間 €250 から · Lifetime ライセンス €750 から

エグゼクティブサマリー

側面Video Capture SDK .NETTVideoGrabber
アーキテクチャデュアルエンジン:ネイティブDirectShow/Media Foundation + 組み込みFFmpegパイプラインシングルエンジン:DirectShowプロパティベースコンポーネント
プラットフォームサポートWindows、macOS、Linux、Android、iOS(5プラットフォーム)Windowsのみ
価格年額 €250~€500、または €750~€1,500 の Lifetime·TeamEUR 695基本、NDIおよびエンコーダーアドオンは各EUR 950、全4製品を含むSUITEはEUR 2,100
最適な用途ストリーミング、マルチ出力、リアルタイムエフェクトを備えたクロスプラットフォームキャプチャアプリOCR要件のあるWindows専用シングル出力キャプチャ
APIスタイルイベントとawaitパターンを備えた非同期優先.NET API同期呼び出しによるプロパティベースコンポーネントモデル

アーキテクチャ詳細分析

Video Capture SDK .NETアーキテクチャ

Video Capture SDKはデュアルエンジン設計を採用しています。プライマリエンジンはWindows上のDirectShowとMedia Foundationをラップし、OSが公開するすべてのキャプチャデバイスへのネイティブアクセスを提供します。セカンダリの組み込みFFmpegパイプラインは、高度なコーデック操作、IPカメラの取り込み、クロスプラットフォーム録画を処理します。両エンジンは統一された.NET APIサーフェスを共有しているため、エンジン間の切り替えにコード変更は不要です。

  • ▶DirectShowとMedia FoundationフィルターグラフによるネイティブWindowsキャプチャ
  • ▶外部CLI依存なしのコーデック柔軟性のための組み込みFFmpeg
  • ▶Direct3D / OpenGLレンダラーによるGPUアクセラレーテッドプレビュー
  • ▶.NET async/awaitサポートによるイベント駆動アーキテクチャ
  • ▶シングルプロセスモデル — 子プロセス管理不要
  • ▶クロスプラットフォームサポート:Windows、macOS、Linux、Android、iOS

TVideoGrabberアーキテクチャ

TVideoGrabberはDatasteadが開発したシングルエンジンのDirectShowベースコンポーネントです。プロパティベースのAPIを通じてキャプチャデバイスのプロパティと録画設定を公開します。キャプチャ開始前にコンポーネントのプロパティを設定することで構成を行い、.NET向けに適応された伝統的なDelphi/VCLコンポーネントパターンに従っています。

  • ▶Windows上のデバイスアクセスと録画のためのDirectShowフィルターグラフ
  • ▶プロパティベースの構成モデル(プロパティを設定してから開始)
  • ▶組み込みONVIF PTZカメラ制御サポート
  • ▶キャプチャ中のOCRテキスト認識(ユニークな機能)
  • ▶NDIと高度なエンコーディング用のオプションアドオンモジュール
  • ▶Windowsのみ — macOS、Linux、モバイルサポートなし

主要なアーキテクチャの違い

側面Video Capture SDKTVideoGrabber
エンジン設計デュアルエンジン(DirectShow/MF + FFmpeg)シングルエンジン(DirectShowのみ)
プラットフォーム範囲5つのOS、7つのUIフレームワークWindowsのみ、WinForms/WPF
APIパターンAsync/await、イベント、マネージドオブジェクトプロパティベース、同期呼び出し
マルチ出力同時録画 + ストリーム + スナップショット一度に1つの出力のみ
ストリーミングRTMP、RTSP、SRT、HLS、NDI組み込みストリーミングプロトコルなし
アドオンモデルライセンスに全機能含むベース + 有料アドオン(NDI EUR 950、エンコーダー EUR 950)

機能別比較

キャプチャソース

機能Video Capture SDKTVideoGrabber
USBウェブカメラ✅✅
ノートPC内蔵カメラ✅✅
画面 / デスクトップキャプチャ✅✅
IPカメラ(RTSP/ONVIF)✅✅
ONVIF PTZ制御✅✅
キャプチャカード(Blackmagic、Magewell)✅⚠️(DirectShow経由のみ)
TVチューナー(BDA/DVB)✅⚠️(限定的なサポート)
NDIソース✅⚠️(EUR 950のアドオンが必要)
仮想カメラ(OBS Virtual Cam)✅✅
DECKLINK入力✅❌

録画

機能Video Capture SDKTVideoGrabber
MP4(H.264 / H.265)✅✅
MKVコンテナ✅❌
WebM(VP8 / VP9 / AV1)✅❌
AVI✅✅
WMV / ASF✅✅
MOV(ProRes)✅❌
MPEG-TS✅⚠️(限定的なコンテナサポート)
アニメーションGIF✅❌
オーディオのみ(MP3、AAC、WAV)✅⚠️
時間/サイズによるファイル分割✅❌
プリイベント録画(循環バッファ)✅❌

マルチ出力

機能Video Capture SDKTVideoGrabber
同時録画 + ストリーム✅❌
複数の録画出力✅❌
同時録画 + スナップショット✅⚠️(基本的なスナップショットサポート)
出力ごとの異なる解像度✅❌
仮想カメラ出力✅❌
タイムシフト / 遅延再生✅❌

ストリーミングプロトコル

機能Video Capture SDKTVideoGrabber
RTMP Push(YouTube、Twitch)✅❌
RTSPサーバーモード✅❌
SRT(Caller / Listener)✅❌
HLSセグメント生成✅❌
NDI出力✅❌
UDP / TCP ユニキャスト / マルチキャスト✅❌

ビデオ処理

機能Video Capture SDKTVideoGrabber
リアルタイムリサイズ / クロップ✅✅
デインターレース✅✅
色調整(明るさ、コントラスト)✅✅
テキストオーバーレイ(タイムスタンプ、ウォーターマーク)✅✅
画像オーバーレイ / ロゴ✅✅
GPUアクセラレーテッドビデオエフェクト✅❌
クロマキー(グリーンスクリーン)✅❌
ピクチャーインピクチャー✅❌

オーディオ

機能Video Capture SDKTVideoGrabber
オーディオデバイスキャプチャ✅✅
システムオーディオ(ループバック)キャプチャ✅❌
オーディオミキシング(複数入力)✅❌
リアルタイム音量 / ゲイン制御✅⚠️
オーディオエフェクト(エコー、リバーブ)✅❌
VUメーター / レベルモニタリング✅⚠️

検出と分析

機能Video Capture SDKTVideoGrabber
モーション検出✅✅
顔検出✅❌
バーコード / QRコード読取✅❌
OCRテキスト認識❌✅
オブジェクトトラッキング✅❌
オーディオレベル検出✅⚠️

プラットフォームサポート

オペレーティングシステム互換性

プラットフォームVideo Capture SDKTVideoGrabber
Windows x64✅✅
Windows ARM64✅❌
macOS(Apple Silicon + Intel)✅❌
Linux x64(Ubuntu、Debian、Fedora)✅❌
Linux ARM64(Raspberry Pi)✅❌
Android(.NET MAUI経由)✅❌
iOS(.NET MAUI経由)✅❌

UIフレームワーク互換性

フレームワークVideo Capture SDKTVideoGrabber
WinForms✅✅
WPF✅✅
.NET MAUI✅❌
Avalonia UI✅❌
Console / Service✅❌
ASP.NET Core(バックグラウンドサービス)✅❌
Blazor(サーバーサイド処理)✅❌

価格比較

Video Capture SDK .NETの価格

Standard (年間)€250/年

指定開発者 1 名。12 か月間のマイナー・メジャー更新とメールサポート

Professional (年間)€350/年

指定開発者 1 名。12 か月間のマイナー・メジャー更新とメールサポート

Premium (年間)€500/年

指定開発者 1 名。12 か月間のマイナー・メジャー更新とメールサポート

Lifetime·Team€750–€1,500 一回払い

購入組織の 1 都市内 1 拠点の全開発者。永続利用、製品寿命中の更新、メールサポート

All licenses include:

  • ✓ ロイヤリティフリーの配布
  • ✓ 全機能含む(ストリーミング、NDI、GPUエフェクト、マルチ出力)
  • ✓ 全ソースコードサンプル
  • ✓ メールサポート
  • ✓ 5つの全プラットフォームターゲット含む

TVideoGrabberの価格

基本ライセンスEUR 695

シングル出力キャプチャ、基本機能、Windowsのみ

NDIアドオンEUR 950

NDIソース/出力サポートを追加

エンコーダーアドオンEUR 950

高度なハードウェアエンコーディングサポートを追加

SUITE(全4製品)EUR 2,100

基本+3つのアドオンすべてをバンドル — それでもWindowsのみ、ストリーミングなし、シングル出力

総所有コスト

同等の機能セットを比較すると、価格の状況は大きく変わります。基本ライセンスと全アドオンを含むTVideoGrabberのセットアップは、Datastead SUITEとしてEUR 2,100で、Windows専用のシングル出力キャプチャのみを提供します。EUR 1,000のVideo Capture SDK Professionalには、クロスプラットフォームサポート、ストリーミング、マルチ出力、GPUエフェクトなどが含まれ、価格は半額以下です。

  • ⚠SDK Professional(EUR 1,000)は全て含む vs TVideoGrabber SUITE(EUR 2,100)はギャップあり
  • ⚠SDKにはストリーミングプロトコル(RTMP、SRT、HLS)が含まれる — TVideoGrabberにはどの価格帯でもなし
  • ⚠SDKにはマルチ出力録画が含まれる — TVideoGrabberにはどの価格帯でもなし
  • ⚠SDKは5つのプラットフォームをカバー — TVideoGrabberはWindowsのみ
  • ⚠SDKにはGPUアクセラレーテッドエフェクト含む — TVideoGrabberは基本的な処理のみ

年間 €250 から · Lifetime ライセンス €750 から

コード例

例1:ウェブカメラのMP4録画

Video Capture SDK .NET

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

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

// Set video source (first available webcam)
var devices = capture.Video_CaptureDevices();
capture.Video_CaptureDevice = new VideoCaptureSource(devices[0].Name);

// Set audio source
var audioDevices = capture.Audio_CaptureDevices();
capture.Audio_CaptureDevice = new AudioCaptureSource(audioDevices[0].Name);
capture.Audio_RecordAudio = true;

// Configure MP4 output with H.264 + AAC
capture.Output_Format = new MP4Output
{
    Video = new MP4OutputH264Settings
    {
        Bitrate = 4000,
        Profile = H264Profile.ProfileMain
    }
};
capture.Output_Filename = "recording.mp4";

// Capture mode records to file while showing preview
capture.Mode = VideoCaptureMode.VideoCapture;

// 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

例2:ONVIF PTZ制御付きIPカメラ

Video Capture SDK .NET

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

var capture = new VideoCaptureCore();

// Connect to ONVIF IP camera
capture.IP_Camera_Source = new IPCameraSourceSettings
{
    URL = new Uri("rtsp://192.168.1.100:554/stream"),
    Login = "admin",
    Password = "password",
    Type = IPSourceEngine.Auto_FFMPEG
};
capture.Mode = VideoCaptureMode.IPCapture;

// ONVIF PTZ control via ONVIFClientX
var onvif = new ONVIFClientX();
await onvif.ConnectAsync(
    "http://192.168.1.100/onvif/device_service", "admin", "password");
var profiles = await onvif.GetProfilesAsync();
var token = profiles[0].token;

// pan, tilt, zoom speeds in range -1..1
await onvif.ContinuousMoveAsync(-0.5f, 0.5f, 0.0f);
await onvif.StopMoveAsync(token, panTilt: true, zoom: true);
await onvif.GoToPresetAsync(token, "1", 1.0f, 1.0f, 1.0f);

// 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 = NetworkStreamingFormat.RTMP_FFMPEG_EXE;
capture.Network_Streaming_Output = new FFMPEGEXEOutput { OutputMuxer = OutputMuxer.FLV };
capture.Network_Streaming_URL = "rtmp://stream.example.com/live";

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

例3:マルチ出力録画 + ストリーミング

Video Capture SDK .NET

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

var capture = new VideoCaptureCore();

// Set webcam source
var devices = capture.Video_CaptureDevices();
capture.Video_CaptureDevice = new VideoCaptureSource(devices[0].Name);
capture.Mode = VideoCaptureMode.VideoCapture;

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

// Output 2: Stream the same source to YouTube via RTMP
capture.Network_Streaming_Enabled = true;
capture.Network_Streaming_Audio_Enabled = true;
capture.Network_Streaming_Format = NetworkStreamingFormat.RTMP_FFMPEG_EXE;
capture.Network_Streaming_Output = new FFMPEGEXEOutput { OutputMuxer = OutputMuxer.FLV };
capture.Network_Streaming_URL = "rtmp://a.rtmp.youtube.com/live2/YOUR_KEY";

// File recording and RTMP stream run simultaneously
await capture.StartAsync();

// Roll over to a second file on demand (split recording)
await capture.SeparateCapture_StartAsync("archive_part2.mp4");

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.

例4:録画付きモーション検出

Video Capture SDK .NET

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

var capture = new VideoCaptureCore();

// Set video source
var devices = capture.Video_CaptureDevices();
capture.Video_CaptureDevice = new VideoCaptureSource(devices[0].Name);

// Enable motion detection with highlight overlay
capture.Motion_Detection = new MotionDetectionSettings
{
    Enabled = true,
    Highlight_Enabled = true,
    Highlight_Color = MotionCHLColor.Red,
    Matrix_Width = 8,
    Matrix_Height = 8
};

// Motion event handler (Level is 0-100)
capture.OnMotion += async (s, e) =>
{
    Console.WriteLine($"Motion at {DateTime.Now}: Level={e.Level}");

    // Roll a timestamped file on motion
    await capture.SeparateCapture_StartAsync(
        $"motion_{DateTime.Now:yyyyMMdd_HHmmss}.mp4");
};

// Configure output (preview + capture)
capture.Output_Format = new MP4Output
{
    Video = new MP4OutputH264Settings { Bitrate = 4000 }
};
capture.Output_Filename = "capture.mp4";
capture.Mode = VideoCaptureMode.VideoCapture;

// Apply detection settings and start
capture.MotionDetection_Update();
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.

意思決定マトリックス

要件Video Capture SDKTVideoGrabber勝者
クロスプラットフォーム(Windows、Mac、Linux、モバイル)Video Capture SDK
マルチ出力(同時録画 + ストリーム)Video Capture SDK
リアルタイムオーディオエフェクトVideo Capture SDK
GPUアクセラレーテッドビデオエフェクトVideo Capture SDK
RTMP / HLS / SRTストリーミングVideo Capture SDK
仮想カメラ出力Video Capture SDK
ファイル分割 / タイムシフトVideo Capture SDK
ハードウェアエンコーディング(NVENC、QSV)Video Capture SDK
追加コストなしのNDIVideo Capture SDK
キャプチャ中のOCRTVideoGrabber

結論

Video Capture SDK .NET

Video Capture SDKは、5つのオペレーティングシステム、7つのUIフレームワークをカバーし、ストリーミング、マルチ出力、GPUエフェクト、NDI、ハードウェアエンコーディングなど全機能をEUR 1,000からの単一ライセンスに含む、包括的でモダンなキャプチャプラットフォームを提供します。クロスプラットフォームキャプチャアプリケーションを構築するチームや、ストリーミングとマルチ出力録画を必要とするプロジェクトにとって、SDKはアドオン付きTVideoGrabberよりも大幅に高い価値を低い総コストで提供します。

TVideoGrabber

TVideoGrabberは、堅実なDirectShow統合とユニークなOCR機能を備えた成熟したWindows専用キャプチャコンポーネントです。ビデオフィードからのテキスト認識を必要とするシンプルなWindows専用キャプチャプロジェクトには合理的な選択です。しかし、ストリーミング、マルチ出力サポート、クロスプラットフォーム互換性の欠如、およびSUITEの価格(全4製品でEUR 2,100)は、モダンなアプリケーション開発における魅力を制限しています。

The Reality

OCR要件があり、ストリーミングやマルチ出力を必要としないWindows専用プロジェクトには、TVideoGrabberは実行可能なオプションです。他のほぼすべてのビデオキャプチャシナリオ — クロスプラットフォーム、ストリーミング、マルチ出力、GPUエフェクト、またはコスト重視の開発 — では、Video Capture SDKがより低い総価格でより強力な選択肢です。

Frequently Asked Questions

TVideoGrabberはYouTubeやTwitchへのRTMPストリーミングをサポートしていますか?
いいえ。TVideoGrabberにはストリーミングプロトコルが含まれていません。ファイルへのキャプチャコンポーネントです。ストリーミングを行うには、TVideoGrabberと並行して別のツールやライブラリを使用する必要があります。Video Capture SDKには、すべてのライセンスにRTMP、RTSP、SRT、HLS、NDIストリーミングが組み込まれています。
TVideoGrabberは複数のファイルに同時に録画できますか?
いいえ。TVideoGrabberはシングル出力録画のみをサポートしています。高品質アーカイブと低解像度プレビューを同時に録画することも、ストリーミング中に録画することもできません。Video Capture SDKは、異なる解像度とフォーマットで無制限の同時出力をサポートしています。
同等の機能でTVideoGrabberがSDKより高いのはなぜですか?
TVideoGrabberの基本ライセンスはEUR 695で、NDI(EUR 950)と高度なエンコーディング(EUR 950)は有料アドオンです。4製品すべてをバンドルするDatasteadのSUITEはEUR 2,100です。その機能セットにはストリーミングとマルチ出力がまだありません。Video Capture SDK ProfessionalはEUR 1,000で全機能を含み、SUITE価格の半分以下で大幅に多くの機能を提供します。
Video Capture SDKはTVideoGrabberのようにONVIF PTZカメラ制御をサポートしていますか?
はい。両製品ともパン、チルト、ズーム、プリセット位置を含むONVIF PTZカメラ制御をサポートしています。これは両製品の機能が同等な分野の1つです。
macOSやLinuxでTVideoGrabberを使用できますか?
いいえ。TVideoGrabberはWindows固有の技術であるDirectShowに基づくWindows専用コンポーネントです。macOS、Linux、Android、iOSでは動作しません。Video Capture SDKはクロスプラットフォームエンジンを通じて5つのプラットフォームすべてをサポートしています。
Video Capture SDKはTVideoGrabberのようにOCRをサポートしていますか?
Video Capture SDKには組み込みのOCRテキスト認識は含まれていません。これはTVideoGrabberがユニークな優位性を持つ分野です。ただし、SDKは生フレームコールバックを提供しており、TesseractやAzure Computer Visionなどのサードパーティ OCRライブラリとの簡単な統合で同様の機能を実現できます。
TVideoGrabberからVideo Capture SDKに移行できますか?
はい。APIスタイルは異なりますが(TVideoGrabberはプロパティベースの構成、SDKは非同期イベントとマネージドオブジェクトを使用)、移行は簡単です。ほとんどのチームは1〜2週間で移行を完了し、ストリーミング、マルチ出力、クロスプラットフォームサポート、GPUエフェクトを獲得します。

今すぐ始める

Datasteadの価格はdatastead.com/purchase.htmlの表示に基づきます(TVideoGrabber EUR 695、NDIおよびエンコーダーアドオンは各EUR 950、全4製品を含むSUITEはEUR 2,100)(2026-09-06確認)。価格は予告なく変更される場合があります。

Related Comparisons