Media Blocks SDK .NETC#でモジュラー型メディアパイプラインを構築
Media Blocks SDK .NET を使用して、強力なマルチメディアアプリケーションを簡単かつ柔軟に作成します。これは、視覚的なコンストラクター (カメラ → コーデック → 出力) のように複雑なビデオワークフローを構築できるモジュラーツールキットです。MP4、MKV、および AVI への録画、HLS、RTMP、および RTSP 経由のストリーミングをサポートし、色補正、インターレース解除、透かし、画面キャプチャ、オーディオ処理などの豊富なエフェクトセットを提供します。組み込みのコンピュータービジョン、QR コード認識、顔追跡、および Blackmagic および ONVIF デバイスの完全なサポートにより、あらゆるプロジェクトにプロフェッショナルグレードの機能をもたらします。SDK は WinForms、WPF、MAUI、Xamarin、および Avalonia とシームレスに連携し、高度なメディア機能をデスクトップおよびモバイルアプリに簡単に統合できます。
インストール
NuGet によるクイックインストール
パッケージマネージャーコンソールを使用して、SDK をプロジェクトに直接インストールします:
Install-Package VisioForge.DotNet.MediaBlocksまたは、Visual Studio の NuGet パッケージマネージャーで VisioForge.DotNet.MediaBlocks を検索してください。 インストールガイドを見る →
主な利点
モジュラーアーキテクチャ
ビルディングブロックのように接続してカスタムメディアパイプラインを作成する 200 以上の処理ブロック
クロスプラットフォーム
すべての主要な .NET UI フレームワークを使用して、Windows、macOS、Linux、Android、および iOS で動作します
ハードウェアアクセラレーション
最大のパフォーマンスを実現する NVIDIA、Intel、および AMD サポートによる GPU アクセラレーションエンコード/デコード
パイプラインの例
// Create MediaBlocks pipeline
_pipeline = new MediaBlocksPipeline();
// Add file source
var fileSourceSettings = await UniversalSourceSettings.CreateAsync("video.mp4");
var videoStreamAvailable = fileSourceSettings.GetInfo().VideoStreams.Count > 0;
var audioStreamAvailable = fileSourceSettings.GetInfo().AudioStreams.Count > 0;
var fileSource = new UniversalSourceBlock(fileSourceSettings);
// Add video renderer
if (videoStreamAvailable)
{
var videoRenderer = new VideoRendererBlock(_pipeline, VideoView1);
_pipeline.Connect(fileSource, videoRenderer);
}
// Add audio output
if (audioStreamAvailable)
{
var audioOutputDevice = (await DeviceEnumerator.Shared.AudioOutputsAsync(
AudioOutputDeviceAPI.DirectSound))[0];
var audioOutput = new AudioRendererBlock(
new AudioRendererSettings(audioOutputDevice));
_pipeline.Connect(fileSource, audioOutput);
}
// Start playback
await _pipeline.StartAsync();シンプルプレーヤー
シンプルプレーヤーパイプラインは、UniversalSourceBlock を使用してソースファイルを読み取ってデコードし、VideoRendererBlock を使用してビデオを表示し、AudioRendererBlock を使用してオーディオを再生します。
インタラクティブなパイプラインの視覚化
Loading pipeline diagram...
高度なプレーヤー
高度なプレーヤーパイプラインには、ファイルまたはストリームをデコードするための UniversalSourceBlock、ビデオおよびオーディオレンダラー、およびエフェクト処理ブロックが含まれています。
// Create MediaBlocks pipeline
_pipeline = new MediaBlocksPipeline();
// Add file source
var fileSourceSettings = await UniversalSourceSettings.CreateAsync(edFilename.Text);
var videoStreamAvailable = fileSourceSettings.GetInfo().VideoStreams.Count > 0;
var audioStreamAvailable = fileSourceSettings.GetInfo().AudioStreams.Count > 0;
var fileSource = new UniversalSourceBlock(fileSourceSettings);
// Add video renderer, text overlay and image overlay
if (videoStreamAvailable)
{
var videoRenderer = new VideoRendererBlock(_pipeline, VideoView1);
var textOverlay = new TextOverlayBlock(new TextOverlaySettings("Hello world!"));
var imageOverlay = new ImageOverlayBlock(new ImageOverlaySettings("logo.png"));
_pipeline.Connect(fileSource, textOverlay);
_pipeline.Connect(textOverlay, imageOverlay);
_pipeline.Connect(imageOverlay, videoRenderer);
}
// Add audio output and equalizer
if (audioStreamAvailable)
{
var audioOutputDevice = (await DeviceEnumerator.Shared.AudioOutputsAsync(AudioOutputDeviceAPI.DirectSound))[0];
var audioOutput = new AudioRendererBlock(new AudioRendererSettings(audioOutputDevice));
var equalizer = new EqualizerParametricBlock();
// set some equalizer settings
_pipeline.Connect(fileSource, equalizer);
_pipeline.Connect(equalizer, audioOutput);
}
// Start playback
await _pipeline.StartAsync();エフェクト付きの高度なプレーヤーパイプライン
Loading pipeline diagram...
// Create MediaBlocksPipeline object
_pipeline = new MediaBlocksPipeline();
// Add default video and audio sources
var videoSources = (await DeviceEnumerator.Shared.VideoSourcesAsync()).ToList();
var videoSource = new SystemVideoSourceBlock(new VideoCaptureDeviceSourceSettings(
videoSources.Find(x => x.Name.Contains("920"))));
var audioSources = (await DeviceEnumerator.Shared.AudioSourcesAsync()).ToList();
var audioSource = new SystemAudioSourceBlock(audioSources[0].CreateSourceSettings());
// Add video renderer
var videoRenderer = new VideoRendererBlock(_pipeline, videoView: VideoView1);
// Add audio renderer
var audioRenderers = (await DeviceEnumerator.Shared.AudioOutputsAsync()).ToList();
var audioRenderer = new AudioRendererBlock(new AudioRendererSettings(audioRenderers[0]));
// Connect everything
_pipeline.Connect(videoSource, videoRenderer);
_pipeline.Connect(audioSource, audioRenderer);
// Start preview
await _pipeline.StartAsync();カメラプレビュー
カメラ/マイクのシンプルプレビューパイプラインには、デバイスソースブロックとビデオ/オーディオレンダラーブロックが含まれています。
デフォルトのデバイスが使用されます。
カメラプレビューパイプライン
Loading pipeline diagram...
RTSP プレビュー
RTSP ソースブロック (内部にデコーダーを含む)、ビデオおよびオーディオレンダラーを含む RTSP プレビューパイプライン。
// Create Media Blocks pipeline
_pipeline = new MediaBlocksPipeline();
// Create video renderer
var videoRenderer = new VideoRendererBlock(_pipeline, VideoView1);
// Add RTSP camera source
var rtsp = await RTSPSourceSettings.CreateAsync(new Uri(edURL.Text),
edLogin.Text, edPassword.Text, audioEnabled: cbAudioStream.Checked);
var rtspSource = new RTSPSourceBlock(rtsp);
_pipeline.Connect(rtspSource, videoRenderer);
// Add audio output (if required)
if (cbAudioStream.Checked && rtsp.IsAudioAvailable())
{
var audioOutputDevice = (await DeviceEnumerator.Shared.AudioOutputsAsync(
AudioOutputDeviceAPI.DirectSound))[0];
var audioOutput = new AudioRendererBlock(new AudioRendererSettings(audioOutputDevice));
_pipeline.Connect(rtspSource, audioOutput);
}
// Start IP camera preview
await _pipeline.StartAsync();RTSP ストリームパイプライン
Loading pipeline diagram...
// Create the pipeline
_pipeline = new MediaBlocksPipeline();
// Add video and audio sources
var videoSources = (await DeviceEnumerator.Shared.VideoSourcesAsync()).ToList();
var videoSource = new SystemVideoSourceBlock(new VideoCaptureDeviceSourceSettings(videoSources[0]));
var audioSources = (await DeviceEnumerator.Shared.AudioSourcesAsync()).ToList();
var audioSource = new SystemAudioSourceBlock(audioSources[0].CreateSourceSettings());
// Add video renderer and specify VideoView control
var videoRenderer = new VideoRendererBlock(_pipeline, videoView: VideoView1);
// Add audio renderer
var audioRenderers = (await DeviceEnumerator.Shared.AudioOutputsAsync()).ToList();
var audioRenderer = new AudioRendererBlock(new AudioRendererSettings(audioRenderers[0]));
// Configure MP4 output
var output = new MP4OutputBlock(Path.Combine(
Environment.GetFolderPath(Environment.SpecialFolder.MyVideos), "output.mp4"));
// Add video and audio tees
var videoTee = new TeeBlock(2, MediaBlockPadMediaType.Video);
var audioTee = new TeeBlock(2, MediaBlockPadMediaType.Audio);
// Connect everything
_pipeline.Connect(videoSource, videoTee);
_pipeline.Connect(audioSource, audioTee);
_pipeline.Connect(videoTee, videoRenderer);
_pipeline.Connect(audioTee, audioRenderer);
_pipeline.Connect(videoTee, output);
_pipeline.Connect(audioTee, output);
// Start MP4 recording
await _pipeline.StartAsync();プレビュー付きキャプチャ
キャプチャパイプラインには、ビデオとオーディオストリームを分割するために使用される 2 つのティーブロックがあり、ビデオキャプチャとともにビデオ/オーディオプレビューが可能です。
プレビュー付きキャプチャパイプライン
Loading pipeline diagram...
Live Video Compositor
Live Video Compositor を使って、OBS のようなライブ映像制作ソフトウェアを構築できます。Media Blocks SDK .NET 上に構築されたリアルタイムのマルチ入力・マルチ出力映像合成エンジンです。カメラ、画面キャプチャ、メディアファイル、RTSP/IPカメラフィード、NDI ソースをレイヤー入力として動的に追加・削除し、GPU アクセラレーションによるレンダリングでミキシングを行い、録画ファイルやライブ配信プラットフォームへ同時に出力します。マルチカメラ切替、ピクチャー・イン・ピクチャーレイアウト、ライブオーバーレイ、放送品質のオーディオミキシングに対応し、すべて C# コードから実行時に完全制御可能です。
動的な入出力管理
コンポジターの動作中であっても、映像・音声ソースや出力先をいつでも追加・削除できます。各入力は独立したパイプラインで動作するため、1つのソースに障害が発生しても合成全体に影響を与えることはありません。
GPU アクセラレーション・ミキシング
クロスプラットフォーム対応の GPU アクセラレーションレンダリング(OpenGL)または CPU フォールバックを使用して、複数の映像レイヤーをリアルタイムに合成します。ピクセル精度の矩形で各ソースを配置し、Z-order の重ね順を制御し、レターボックス、ストレッチ、フィルのリサイズポリシーから選択できます。
録画 + 配信 + プレビュー
複数の出力先に同時出力が可能です。MP4 や WebM への録画、YouTube や Facebook へのライブ配信、Decklink ハードウェアへの映像送出、画面上のプレビュー表示を、単一のコンポジターインスタンスでリアルタイムに実行できます。
ライブオーバーレイ&エフェクト
テキストオーバーレイ、画像ウォーターマーク、合成後の映像エフェクトを動的に適用でき、パイプラインの再構築は不要です。リアルタイムのオーディオ VU メーターにより、ライブ制作中にプロフェッショナルグレードのレベルモニタリングが可能です。
C# による Live Video Compositor のセットアップ
C#// Create the Live Video Compositor (cross-platform, GPU-accelerated)
var settings = new LiveVideoCompositorSettings(1920, 1080, new VideoFrameRate(25));
var compositor = new LiveVideoCompositor(settings);
// Add a camera source (full-screen background layer)
var cameraInput = new LVCVideoAudioInput(
"Camera", compositor,
new SystemVideoSourceBlock(cameraSettings),
videoInfo, audioInfo, new Rect(0, 0, 1920, 1080),
autostart: true);
await compositor.Input_AddAsync(cameraInput);
// Start compositing — sources and outputs can be added/removed at any time
await compositor.StartAsync();
// Dynamically add screen capture as picture-in-picture overlay
var screenInput = new LVCVideoInput(
"Screen", compositor,
new ScreenSourceBlock(screenSettings), screenInfo,
new Rect(1400, 50, 500, 300), autostart: true);
screenInput.ZOrder = 1;
await compositor.Input_AddAsync(screenInput);
// Dynamically add MP4 recording output while compositing is running
var mp4Output = new LVCVideoAudioOutput(
"Recording", compositor,
new MP4OutputBlock(mp4Settings), autostart: true);
await compositor.Output_AddAsync(mp4Output);
// Dynamically remove the screen overlay
await compositor.Input_RemoveAsync(screenInput.ID);
// Dynamically remove the recording output
await compositor.Output_RemoveAsync(mp4Output.ID);Live Video Compositor は、Media Blocks SDK .NET がサポートするすべての入力ソースと出力フォーマットに対応しています。カメラ、画面キャプチャ、メディアファイル、RTSP/IPカメラ、NDI、Decklink、およびすべての録画・配信出力を含みます。
VisioForge Media Blocks SDK .Net の主な機能は次のとおりです:
コア機能
- • オーディオ/ビデオプレビュー
- • 幅広い形式へのビデオおよびオーディオキャプチャ
- • Bitmap クラス、BMP、JPEG、および PNG ファイルへのフレームキャプチャ
- • ビデオ処理とエフェクト (CPU/GPU)
- • ビデオキャプチャデバイス制御
- • ネットワークストリーミング
- • モーション検出
- • カスタムインターフェイスのサポート
- • コンピュータービジョン API
- • PIP (ピクチャーインピクチャー)
- • 画面キャプチャ/ウィンドウキャプチャ
- • 顔検出とオブジェクト追跡
- • 複数の出力画面のサポート
- • スピーカーからのオーディオキャプチャ
- • オーディオ/ビデオファイルタグの読み取りと書き込みのサポート
サポートされている入力デバイス
- • USB Web カメラおよびキャプチャデバイス (4K を含む)
- • JPEG/MJPEG、MPEG-4、および H.264 HTTP/RTSP/RTMP IP カメラ/サーバー
- • DV および HDV MPEG-2 ビデオカメラ
- • PCI キャプチャカード
- • TV チューナー (内部 MPEG エンコーダーあり/なし)
- • IP カメラでサポートされている HD 形式
- • PTZ サポート付き ONVIF IP カメラ
- • Blackmagic Decklink デバイス
- • オーディオキャプチャデバイスおよびサウンドカード
- • ASIO デバイス
プロフェッショナルハードウェア
- • Blackmagic Decklink 入出力サポート
- • FLIR/Teledyne カメラ (USB3Vision/GigE)
- • Basler カメラ (USB3Vision/GigE)
- • DV および HDV MPEG-2 ビデオカメラ
- • PCI キャプチャカード
- • TV チューナー (MPEG エンコーダーあり/なし)
- • PTZ サポート付き ONVIF IP カメラ
- • ASIO デバイス
ソース
- • Allied Vision カメラ
- • アニメーション GIF
- • Basler カメラ (USB3Vision/GigE)
- • CDG カラオケ
- • フォールバック切り替え
- • GenICam (産業用カメラ)
- • HTTP
- • HTTP MJPEG
- • 画像シーケンス
- • ローカルファイル
- • メモリバッファ
- • NDI
- • PulseAudio
- • Raspberry Pi カメラ
- • RTMP
- • RTSP
- • RTSP RAW
- • 画面キャプチャ
- • SRT
- • システムオーディオ
- • システムビデオ
- • テスト信号
- • UDP/RTP
- • URI (ファイル/ネットワーク)
オーディオ処理
- • 増幅
- • バランス
- • サンプル形式コンバーター
- • ロードノーマライザー
- • ミキサー
- • リサンプラー
- • サンプルグラバー
- • タイムスタンプ補正
- • チェビシェフバンドパスリジェクト
- • チェビシェフリミット
- • コンプレッサー/エキスパンダー
- • Csound フィルター
- • EBU R128 レベル
- • エコー
- • イコライザー (10 バンド)
- • イコライザー (パラメトリック)
- • HRTF レンダリング
- • カラオケ
- • 無音除去
- • 残響
- • スケール/テンポ
- • ボリューム
- • VU メーター
- • ワイドステレオ
バーコードリーダー
- • QR コード
- • UPC-A、UPC-E
- • EAN-8、EAN-13
- • Code 39
- • Code 93
- • Code 128
- • Codabar
- • ITF
- • RSS-14
- • Data Matrix
- • Aztec
- • PDF-417
オーディオエンコーダー
- • AAC
- • ADPCM
- • ALAW
- • AptX
- • FLAC
- • MP2
- • MP3
- • OPUS
- • Speex
- • Vorbis
- • WAV
- • Wavpack
- • WMA(Windows Media Audio)
ビデオエンコーダー (CPU/GPU)
- • AV1
- • DV
- • GIF
- • H.264
- • H.265/HEVC
- • MJPEG
- • MPEG-2
- • MPEG-4
- • PNG
- • Theora
- • VP8/VP9 (VPX)
- • WMV(Windows Media Video)
- • NVENC、AMD、Intel ハードウェアエンコーダーサポート
- • iOS/macOS/Android ハードウェアエンコーダーサポート
ビデオ処理
- • エージング
- • アルファ結合
- • 自動インターレース解除
- • Bayer から RGB
- • クロマキー
- • コーデックアルファデマルチプレクサ
- • カラーエフェクト
- • インターレース解除
- • ダイス
- • エッジ検出
- • 魚眼
- • 反転/回転
- • ガンマ
- • ガウスぼかし
- • グレースケール
- • 画像オーバーレイ
- • 画像オーバーレイ Cairo
- • インターレース
- • キーフレーム検出器
- • LUT プロセッサ
- • ミラー
- • 移動ぼかし
- • 移動エコー
- • 移動ズームエコー
- • 光学アニメーション B&W
- • オーバーレイマネージャー
- • 遠近法
- • ピンチ
- • 疑似 3D
- • QR コードオーバーレイ
- • サイズ変更
- • サンプルグラバー
- • ソーベルエッジ
- • 球体
- • 正方形
- • ストレッチ
- • テキストオーバーレイ
- • トンネル
- • 回転
- • ビデオバランス
- • ピクセル形式コンバーター
- • ビデオミキサー
- • 歪んだミラー
- • 水紋
- • ズームボックス
ファイルシンク
- • ASF
- • AVI
- • DASH
- • HLS
- • HTTP MJPEG ライブ
- • MKV (Matroska)
- • MOV (QuickTime)
- • MP4
- • MPEG-PS
- • MPEG-TS
- • MXF
- • OGG
- • WAV
- • WebM
ネットワークストリーミング
- • Facebook Live
- • HLS
- • NDI
- • RTMP
- • RTSP
- • Shoutcast
- • SRT
- • YouTube Live
Blackmagic Decklink
- • オーディオシンク
- • オーディオソース
- • ビデオシンク
- • ビデオソース
オーディオビジュアライザー
- • Bumpscope
- • Corona
- • Infinite
- • Jakdaw
- • Jess
- • LV Analyzer
- • LV Scope
- • Oinksie
- • Spacescope
- • Spectrascope
- • Synaescope
- • Wavescope
ビデオデコーダー
- • AV1 デコーダー
- • H.264 デコーダー
- • HEVC デコーダー
- • JPEG デコーダー
- • VP8 デコーダー
- • VP9 デコーダー
- • NVIDIA、Intel、および AMD アクセラレーションデコーダー
- • Android ハードウェアデコーダー
- • iOS ハードウェアデコーダー
特別ブロック
- • バーコード検出器
- • データプロセッサ
- • データサンプルグラバー
- • デバッグタイムスタンプ
- • 復号化機能
- • 暗号化機能
- • マルチキュー
- • Null レンダラー
- • キュー
- • SRTP 復号化機能
- • SRTP 暗号化機能
- • ティー (スプリッター)
価格
年間サブスクリプションまたはライフタイムライセンスから選択
通常ライセンス
- 1 年間の無料マイナーおよびメジャーアップグレード
- サブスクリプション終了後も SDK は機能し続けます
- 優先サポート
- 毎年自動更新 (いつでもキャンセル可能)
- 200 以上のすべての処理ブロックが含まれています
ライフタイムライセンス
- 無期限の無制限アップデート
- 優先サポートと修正
- 1 回限りの支払い
- 将来のすべての機能が含まれています
- 200 以上のすべての処理ブロックが含まれています
非商用利用は無料です。無料ライセンスを取得するにはお問い合わせください。
すべてのライセンスには、ロイヤリティフリーの配布権が含まれています。
💰 バンドルパッケージでさらに節約
この製品は、コスト効率の高いバンドルパッケージに含まれています。より多くの製品を入手して最大71%節約しましょう!
.NET Bundle Professional
最大71%節約
含まれるもの:
- •Video Capture SDK .NET (Professional)
- •Media Player SDK .NET (Professional)
- •Video Edit SDK .NET (Professional)
- •Video Edit SDK FFMPEG .NET (Professional)
- •Media Blocks SDK .NET
.NET Bundle Premium
最大70%節約
含まれるもの:
- •Video Capture SDK .NET (Premium)
- •Media Player SDK .NET (Premium)
- •Video Edit SDK .NET (Premium)
- •Video Edit SDK FFMPEG .NET (Premium)
- •Media Blocks SDK .NET
システム要件
プラットフォーム間での開発と展開のための最小要件
| オペレーティングシステム |
|
| .NET Framework |
|
| ハードウェア |
|
| UI フレームワーク |
|
ドキュメントとリソース
Media Blocks SDK を使い始めるために必要なすべて
AIとMCPでメディアパイプラインをより速く構築
AIコーディングアシスタントにMedia Blocksのパイプラインアーキテクチャを理解させましょう。VisioForge MCPサーバーに接続すると、ブロック選択、パイプライン接続、ソース/シンク設定、クロスプラットフォームデプロイメントについてコンテキストに応じたヘルプが得られます — Claude Code、VS Code、Cursorから直接利用可能です。
Claude Code
claude mcp add --transport http visioforge-sdk https://mcp.visioforge.com/mcpVS Code (.vscode/mcp.json)
{
"servers": {
"visioforge-sdk": {
"type": "http",
"url": "https://mcp.visioforge.com/mcp"
}
}
}よくある質問
Media Blocks SDKとは何ですか?他のVisioForge SDKとの違いは?
Media Blocks SDKは、個々の処理ブロック(ソース、エンコーダー、エフェクト、出力)をビルディングブロックのように接続するモジュラーパイプラインアーキテクチャを採用しています。既製のワークフローを提供するVideo CaptureやMedia Player SDKとは異なり、Media Blocksはメディアパイプラインのすべての段階を完全に制御でき、カスタムや複雑なシナリオに最適です。
C#でメディアパイプラインを構築するにはどうすればよいですか?
MediaBlocksPipelineインスタンスを作成し、ソースブロック(ファイル、カメラ、RTSP、画面キャプチャ)を追加し、処理ブロック(エンコーダー、エフェクト、オーバーレイ)を接続し、出力ブロック(ファイル出力、レンダラー、ネットワークストリーム)をアタッチします。StartAsync()を呼び出して実行します。SDKがスレッド管理、同期、ハードウェアアクセラレーションを自動的に処理します。
Media Blocks SDKはmacOS、Linux、モバイルプラットフォームで動作しますか?
はい。Media Blocks SDKはWindows、macOS 12以降、Ubuntu 22.04/24.04、Android 8以降、iOS 12以降に対応しています。WinForms、WPF、MAUI、Uno Platform、Avalonia、Xamarinで動作します。同じパイプラインコードがすべてのプラットフォームで実行され、プラットフォーム固有のレンダリングとハードウェアアクセラレーションが適用されます。
RTMP、RTSP、HLSでビデオをストリーミングできますか?
はい。SDKにはRTMP(YouTube Live、Facebook Live)、RTSPサーバー、HLS、SRT、NDI、Shoutcast用の専用ストリーミング出力ブロックが含まれています。Teeブロックを使用してパイプラインを複数の出力に分割することで、ストリーミングとローカル録画およびプレビューを組み合わせることができます。
GPU高速化によるエンコードとデコードに対応していますか?
はい。Media Blocks SDKはNVIDIA NVENC、Intel Quick Sync、AMD AMFによるハードウェアアクセラレーションエンコーディング、およびハードウェアデコーディングに対応しています。モバイルプラットフォームでは、iOSおよびAndroidのハードウェアコーデックが自動的に使用されます。これにより、最小限のCPU使用率でリアルタイム4K処理が可能になります。
産業用カメラ(GigE Vision、USB3 Vision)やBlackmagic Decklinkを使用できますか?
はい。SDKにはGigE VisionおよびUSB3 Visionを介したGenICam対応産業用カメラ(Basler、Allied Vision、FLIR/Teledyne)用のソースブロックが含まれています。Blackmagic Decklinkデバイスは、プロフェッショナルなビデオキャプチャと出力用の専用ソースブロックとシンクブロックでサポートされています。
Live Video Compositor とは何ですか?手動でパイプラインを構築する場合とどう違いますか?
Live Video Compositor は、Media Blocks SDK 上に構築されたハイレベルなリアルタイム映像合成エンジンです。個々のブロックを使ってカスタムミキシングパイプラインを手動で組み立てることも可能ですが、コンポジターは OBS のようなアプリケーションに必要な完全なアーキテクチャをすぐに利用できる形で提供します。ブリッジベースの入力分離、GPU アクセラレーションによる合成、実行時の動的なソース・出力管理、Z-order レイヤー制御、ライブテキスト・画像オーバーレイ、合成後のエフェクト、オーディオ VU メーターなどが含まれます。C# と .NET でマルチカメラ切替システム、ライブ配信ソフトウェア、放送制作ツールを構築するのに最適です。
