Media Blocks SDK .NET — C#으로 모듈형 미디어 파이프라인 구축
C#에서 블록을 조합해 영상 파이프라인을 구성하세요 — 카메라, 코덱, 효과, 출력. MP4, MKV, AVI 녹화와 HLS, RTMP, RTSP 스트리밍을 지원합니다.
연 €500부터 · Lifetime 라이선스 €1,500부터
Media Blocks SDK .NET으로 강력한 멀티미디어 애플리케이션을 쉽고 유연하게 만드세요. 이 모듈식 툴킷을 사용하면 시각적 생성자(카메라 → 코덱 → 출력)처럼 복잡한 비디오 워크플로를 구축할 수 있습니다. MP4, MKV 및 AVI로의 녹화뿐만 아니라 HLS, RTMP 및 RTSP를 통한 스트리밍을 지원하며 색상 보정, 디인터레이싱, 워터마크, 화면 캡처 및 오디오 처리를 포함한 풍부한 효과 세트를 제공합니다. 내장된 컴퓨터 비전, QR 코드 인식, 얼굴 추적 및 Blackmagic 및 ONVIF 장치에 대한 완벽한 지원을 통해 모든 프로젝트에 전문가급 기능을 제공합니다. SDK는 WinForms, WPF, MAUI, Xamarin, Avalonia 및 Unity와 원활하게 작동하므로 데스크톱, 모바일 및 게임 엔진 앱에 고급 미디어 기능을 쉽게 통합할 수 있습니다.
직접 조립하는 파이프라인 대신 완성된 컴포넌트가 필요하신가요? Video Capture SDK .NET · Media Player SDK .NET · Video Edit SDK .NET
주요 이점
모듈식 아키텍처
사용자 지정 미디어 파이프라인을 만들기 위해 빌딩 블록처럼 연결되는 200개 이상의 처리 블록
크로스 플랫폼
모든 주요 .NET UI 프레임워크와 함께 Windows, macOS, Linux, Android 및 iOS에서 작동
하드웨어 가속
최대 성능을 위한 NVIDIA, Intel 및 AMD 지원을 통한 GPU 가속 인코딩/디코딩
Media Blocks SDK .NET은 VisioForge .NET 스택의 파이프라인 계층입니다. 완성된 컴포넌트를 설정하는 대신 소스, 원하는 수의 처리 블록, 하나 이상의 싱크 같은 개별 블록으로 애플리케이션을 조립하고 MediaBlocksPipeline.Connect로 연결합니다. 200개가 넘는 블록은 파일과 웹캠 소스, PTZ를 지원하는 RTSP·ONVIF IP 카메라, Blackmagic DeckLink, Basler 및 FLIR 산업용 카메라, 색 보정, 디인터레이싱, 크로마 키, 오버레이와 오디오 처리, AI 추론, MP4·MKV·MOV·WebM·MPEG-TS·MXF 녹화, 그리고 HLS·RTMP·RTSP·SRT·NDI 스트리밍을 포함합니다. TeeBlock으로 흐름을 분기하면 하나의 파이프라인으로 녹화와 스트리밍, 미리보기를 동시에 수행할 수 있습니다. SDK는 NuGet 패키지 VisioForge.DotNet.MediaBlocks에서 설치하며 Windows, macOS, Linux, Android, iOS에서 WinForms, WPF, MAUI, Uno Platform, Avalonia, Unity와 함께 동작합니다.
파이프라인 예제
간단한 플레이어
C#간단한 플레이어 파이프라인은 UniversalSourceBlock을 사용하여 소스 파일을 읽고 디코딩하고, VideoRendererBlock을 사용하여 비디오를 표시하고, AudioRendererBlock을 사용하여 오디오를 재생합니다.
// 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();고급 플레이어
C#고급 플레이어 파이프라인에는 파일 또는 스트림 디코딩을 위한 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();카메라 미리보기
C#카메라/마이크 간단한 미리보기 파이프라인에는 장치 소스 블록과 비디오/오디오 렌더러 블록이 포함되어 있습니다. 기본 장치가 사용됩니다.
// 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[0]));
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();RTSP 미리보기
C#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();미리보기가 포함된 캡처
C#캡처 파이프라인에는 비디오 및 오디오 스트림을 분할하는 데 사용되는 두 개의 티 블록이 있어 비디오 캡처와 함께 비디오/오디오 미리보기를 허용합니다.
// 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();가격
연간 구독 또는 평생 라이선스 중에서 선택하세요
Media Blocks SDK .NET은 개발자 단위로 두 가지 형태의 라이선스를 제공합니다. Regular License는 연 500유로이며 자동 갱신되고 해당 연도에 출시된 모든 마이너 및 메이저 업그레이드를 포함합니다. 구독이 끝난 뒤에도 SDK는 계속 동작하며 새 버전만 더 이상 제공되지 않습니다. Lifetime·Team License는 1,500유로 일회성 결제로 제품 수명 기간 동안의 마이너·메이저 업데이트와 앞으로 추가되는 모든 기능을 포함합니다. 두 라이선스 모두 200개가 넘는 처리 블록 전체, 이메일 지원, 로열티 없는 배포 권리를 포함하므로 출시하는 애플리케이션에 런타임 비용이 발생하지 않습니다. 비상업적 사용은 요청 시 무료이며 소스 코드 라이선스도 요청 시 제공됩니다. 연간 라이선스는 신용카드 또는 은행 송금과 SEPA로, 라이프타임 라이선스는 카드로 결제할 수 있습니다. 프로젝트에 VisioForge SDK가 둘 이상 필요하다면 .NET 번들이 같은 제품을 따로 구매하는 것보다 저렴합니다.
일반 라이선스
- 1년 동안 무료 마이너 및 메이저 업그레이드
- 구독 종료 후에도 SDK 기능 유지
- 이메일 지원
- 매년 자동 갱신(언제든지 취소 가능)
- 200개 이상의 모든 처리 블록 포함
Lifetime·Team 라이선스
- 제품 수명 동안 주요 및 부 업데이트
- 이메일 지원
- 일회성 결제
- 모든 향후 기능 포함
- 200개 이상의 모든 처리 블록 포함
비상업적 용도로는 무료입니다. 무료 라이선스를 받으려면 문의해 주세요.
모든 라이선스에는 로열티 없는 배포 권한이 포함됩니다.
💰 번들 패키지로 더 많이 절약하세요
이 제품은 비용 효율적인 번들 패키지에 포함되어 있습니다. 개별 구매보다 저렴하게 더 많은 제품을 받아보세요.
.NET Bundle Professional
포함 사항:
- •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
포함 사항:
- •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
AI 비디오 분석 및 음성 인식
Media Blocks SDK .NET 파이프라인에 AI 추론, 프라이버시 마스킹, 개방형 어휘 감지, 시각-언어 이해, 시맨틱 검색, 음성 인식을 직접 추가하세요.
Media Blocks SDK .NET은 VisioForge.DotNet.Core.AI와 VisioForge.DotNet.Core.AI.Whisper를 통해 AI 처리 블록을 C# 미디어 파이프라인에 직접 추가합니다. 개발자는 OCR, 번호판 인식, YOLO/RT-DETR/개방형 어휘 객체 감지, ByteTrack 객체 분석, 얼굴 인식, 자동 PII 마스킹, 배경 제거, 시각-언어 캡셔닝, 비디오 임베딩/시맨틱 검색, 사용자 정의 ONNX 추론을 기존 소스, 렌더러, 인코더, 스트리밍 출력 사이에 삽입할 수 있습니다. ONNX Runtime 기반 블록은 CPU에서 실행되거나, 해당 런타임이 제공되는 경우 CUDA, DirectML, CoreML과 같은 하드웨어 공급자에서 실행될 수 있으며, Whisper 음성-텍스트 변환은 GGML/whisper.cpp를 통해 로컬에서 실행되고 깔끔한 세그먼트를 위한 선택적 Silero VAD를 사용할 수 있습니다. AI 모델 파일은 애플리케이션이 제공하거나 다운로드하므로, 팀이 모델 선택과 라이선싱을 직접 제어할 수 있습니다. 그 결과 Media Blocks 파이프라인 모델을 벗어나지 않고도 검색 가능한 OCR 비디오, ANPR 시스템, 인원 카운팅, 트립와이어 분석, 프라이버시 컴플라이언스 마스킹, 자연어 비디오 검색, 라이브 자막, SRT/VTT 내보내기를 구축할 수 있는 모듈형 .NET AI 비디오 SDK가 완성됩니다.
AI 블록 살펴보기
OCR 및 ANPR
PaddleOCR 기반 ONNX 블록과 구조화된 감지 이벤트로 라이브 비디오 또는 파일에서 텍스트와 번호판을 인식합니다.
객체 감지 및 분석
YOLOX, YOLOv8 또는 RT-DETR 모델을 실행한 다음 ByteTrack ID, 라인 교차, 폴리곤 영역, 카운터, 오버레이를 추가하세요.
얼굴 인식
얼굴을 감지하고, 신원을 등록하고, FaceGallery와 매칭하며, 인식된 사람을 비디오 스트림에 그려 넣습니다.
배경 제거
ONNX 매팅 모델을 사용하여 배경 흐림, 단색 교체, 이미지 교체 또는 투명 RGBA 출력을 구현합니다.
사용자 정의 ONNX 추론
자체 ONNX 모델을 비디오 프레임에 연결하고, 애플리케이션별 후처리를 위한 원시 텐서 출력을 받습니다.
오프라인 Whisper 자막
Whisper로 오디오를 로컬에서 전사하고, Silero VAD로 음성을 분할하고, 라이브 자막을 렌더링하거나 SRT/VTT 파일을 작성하세요.
PII 마스킹
얼굴, 차량 번호판, 화면 속 텍스트를 자동으로 흐리게 하거나 픽셀화하거나 단색으로 채우며, 이메일과 전화번호에 대한 선택적 정규식 필터링을 지원합니다.
개방형 어휘 감지 및 시각-언어 이해
고정된 클래스 목록 대신 OWLv2 또는 Grounding DINO로 자유 형식 텍스트 프롬프트에서 객체를 감지하거나, Florence-2 시각-언어 블록으로 프레임 캡셔닝, OCR, 구문 그라운딩을 수행하세요 — 런타임에 프롬프트와 신뢰도 임계값을 변경할 수 있습니다.
시맨틱 비디오 검색
비디오를 처리하는 동안 CLIP 기반 임베딩 인덱스를 구축한 다음, 자연어 쿼리로 검색하여 일치하는 프레임을 찾으세요.
동일한 블록 인스턴스는 Video_Processing_AddBlock/Audio_Processing_AddBlock을 통해 VideoCaptureCoreX 및 MediaPlayerCoreX에도 직접 연결됩니다 — 수동으로 MediaBlocksPipeline을 구성할 필요가 없습니다. Video Capture SDK .NET 및 Media Player SDK .NET 페이지의 AI 기능을 참조하세요.
Live Video Compositor
Live Video Compositor를 사용하여 OBS와 같은 라이브 영상 제작 소프트웨어를 구축하세요. Media Blocks SDK .NET 기반의 실시간 다중 입력, 다중 출력 영상 합성 엔진입니다. 카메라, 화면 캡처, 미디어 파일, RTSP/IP 카메라 피드, NDI 소스를 레이어 입력으로 동적으로 추가 및 제거하고, GPU 가속 렌더링으로 믹싱한 후, 녹화 파일과 라이브 스트리밍 플랫폼으로 동시에 출력합니다. 멀티 카메라 전환, PIP(화면 속 화면) 레이아웃, 라이브 오버레이, 방송 품질의 오디오 믹싱을 지원하며, 모든 기능을 C# 코드로 런타임에 완전히 제어할 수 있습니다.
Live Video Compositor는 동일한 파이프라인 모델 위에 구축된 다중 입력·다중 출력 합성 엔진입니다. 캔버스 크기와 프레임 속도로 생성한 다음 — LiveVideoCompositorSettings(1920, 1080, new VideoFrameRate(25)) — 각 소스를 고유한 대상 사각형과 Z 순서를 가진 입력으로 추가합니다. 배경을 채우는 카메라, PIP 오버레이로 쓰는 화면 캡처, 미디어 파일, RTSP 카메라, NDI 피드 등이 가능합니다. 입력과 출력은 합성이 실행되는 동안 Input_AddAsync와 Output_AddAsync로 추가하고 제거하며, 각 입력은 독립된 파이프라인에서 동작하므로 한 소스가 실패해도 나머지는 멈추지 않습니다. 레이어는 GPU 가속 OpenGL 렌더링(CPU 폴백 포함)으로 합성되고, 결과는 MP4 또는 WebM 녹화, YouTube나 Facebook 라이브 스트림, DeckLink 카드, 화면 미리보기 등 여러 대상으로 동시에 보낼 수 있습니다.
동적 입출력 관리
컴포지터가 실행 중인 상태에서도 언제든지 영상 및 오디오 소스와 출력 대상을 추가하거나 제거할 수 있습니다. 각 입력은 독립된 파이프라인에서 작동하므로, 하나의 소스에 장애가 발생하더라도 전체 합성에 영향을 미치지 않습니다.
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는 카메라, 화면 캡처, 미디어 파일, RTSP/IP 카메라, NDI, Decklink 및 모든 녹화·스트리밍 출력을 포함하여 Media Blocks SDK .NET에서 지원하는 모든 입력 소스와 출력 형식과 호환됩니다.
Unity 지원
Media Blocks는 Unity 6용 단일 누적 .unitypackage로 제공되며, 미디어 파일 플레이어와 실시간 RTSP 뷰어 샘플 씬을 포함하고 한 번의 가져오기로 Windows, Android, macOS, iOS를 지원합니다.
Media Blocks 비교
개발팀이 흔히 함께 검토하는 라이브러리 및 SDK와의 일대일 비교입니다.
블록, 코덱 및 장치 전체 레퍼런스
SDK가 지원하는 모든 블록, 코덱, 컨테이너, 장치 — 소스, 인코더, 디코더, 필터, 싱크, 하드웨어 — 는 별도의 레퍼런스 페이지에 정리되어 있습니다.
전체 블록 레퍼런스 열기 →설치
NuGet을 통한 빠른 설치
패키지 관리자 콘솔을 사용하여 프로젝트에 SDK를 직접 설치하세요:
Install-Package VisioForge.DotNet.MediaBlocks또는 Visual Studio의 NuGet 패키지 관리자에서 VisioForge.DotNet.MediaBlocks 를 검색하세요. 설치 가이드 보기 →
시스템 요구 사항
플랫폼 전반의 개발 및 배포를 위한 최소 요구 사항
| 운영 체제 |
|
| .NET Framework |
|
| 하드웨어 |
|
| UI 프레임워크 |
|
문서 및 리소스
Media Blocks SDK를 시작하는 데 필요한 모든 것
AI 코딩 에이전트로 개발하기
Claude Code, Cursor, GitHub Copilot, Gemini CLI, OpenAI Codex 같은 AI 에이전트와 함께 개발 중이신가요? VisioForge는 Media Blocks SDK .NET에 대한 기계 판독 가능한 인터페이스를 제공하므로 에이전트가 처음부터 통합을 정확히 처리합니다. 올바른 NuGet 패키지, 라이선스 등록, 프로젝트 설정, 그리고 그렇지 않으면 추측해야 할 크로스 플랫폼 배포 세부 사항까지.
MCP 서버 연결
MCP에이전트에 VisioForge MCP 서버를 추가하면 상황에 맞는 도움을 받을 수 있습니다. API 검색, 클래스 및 멤버 조회, 작동하는 코드 예제 가져오기, 배포 가이드 가져오기를 에디터 안에서 바로 할 수 있습니다.
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"
}
}
}Agent Skill 불러오기
Agent SkillsSDK와 플랫폼 조합마다 다운로드 가능한 스킬을 제공합니다. Media Blocks SDK .NET의 경우 플랫폼별로 바로 쓸 수 있는 SKILL.md(필요한 NuGet 패키지, 라이선스 코드, csproj 설정, 흔한 함정)와 에이전트가 복사할 수 있는 작동하는 샘플 프로젝트가 함께 제공됩니다. Claude Code, Cursor, OpenAI Codex, Gemini CLI 등 30개 이상의 에이전트와 호환됩니다(Cloudflare Agent Skills RFC).
에이전트에 스킬 인덱스를 지정
https://www.visioforge.com/.well-known/agent-skills/index.json전체 문서를 에이전트에 넘기고 싶으신가요? 일반 마크다운으로도 제공됩니다: /llms.txt · /llms-full.txt
자주 묻는 질문
Media Blocks SDK란 무엇이며, 다른 VisioForge SDK와 어떻게 다릅니까?
Media Blocks SDK란 무엇이며, 다른 VisioForge SDK와 어떻게 다릅니까?
Media Blocks SDK는 개별 처리 블록(소스, 인코더, 이펙트, 출력)을 빌딩 블록처럼 연결하는 모듈형 파이프라인 아키텍처를 사용합니다. 기성 워크플로를 제공하는 Video Capture 또는 Media Player SDK와 달리, Media Blocks는 미디어 파이프라인의 모든 단계를 완벽하게 제어할 수 있어 사용자 정의 또는 복잡한 시나리오에 이상적입니다.
C#에서 미디어 파이프라인을 어떻게 구축합니까?
C#에서 미디어 파이프라인을 어떻게 구축합니까?
MediaBlocksPipeline 인스턴스를 생성하고, 소스 블록(파일, 카메라, RTSP, 화면 캡처)을 추가하고, 처리 블록(인코더, 이펙트, 오버레이)을 연결하고, 출력 블록(파일 출력, 렌더러, 네트워크 스트림)을 연결합니다. StartAsync()를 호출하여 실행합니다. SDK가 스레딩, 동기화 및 하드웨어 가속을 자동으로 처리합니다.
Media Blocks SDK는 macOS, Linux 및 모바일 플랫폼에서 작동합니까?
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로 비디오를 스트리밍할 수 있습니까?
RTMP, RTSP 또는 HLS로 비디오를 스트리밍할 수 있습니까?
네. SDK에는 RTMP(YouTube Live, Facebook Live), RTSP 서버, HLS, SRT, NDI, Shoutcast용 전용 스트리밍 출력 블록이 포함되어 있습니다. Tee 블록을 사용하여 파이프라인을 여러 출력으로 분할함으로써 스트리밍과 로컬 녹화 및 미리보기를 결합할 수 있습니다.
GPU 가속 인코딩 및 디코딩이 지원됩니까?
GPU 가속 인코딩 및 디코딩이 지원됩니까?
네. Media Blocks SDK는 NVIDIA NVENC, Intel Quick Sync, AMD AMF를 통한 하드웨어 가속 인코딩과 하드웨어 디코딩을 지원합니다. 모바일 플랫폼에서는 iOS 및 Android 하드웨어 코덱이 자동으로 사용됩니다. 이를 통해 최소한의 CPU 사용으로 실시간 4K 처리가 가능합니다.
산업용 카메라(GigE Vision, USB3 Vision) 및 Blackmagic Decklink를 사용할 수 있습니까?
산업용 카메라(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란 무엇이며, 파이프라인을 수동으로 구축하는 것과 어떻게 다릅니까?
Live Video Compositor는 Media Blocks SDK 위에 구축된 고수준 실시간 영상 합성 엔진입니다. 개별 블록을 사용하여 커스텀 믹싱 파이프라인을 수동으로 조립할 수도 있지만, 컴포지터는 OBS와 같은 애플리케이션에 필요한 완전한 아키텍처를 즉시 제공합니다. 브리지 기반 입력 격리, GPU 가속 합성, 런타임 동적 소스 및 출력 관리, Z-order 레이어 제어, 라이브 텍스트 및 이미지 오버레이, 합성 후 효과, 오디오 VU 미터링이 포함됩니다. C# 및 .NET으로 멀티 카메라 전환 시스템, 라이브 스트리밍 소프트웨어 또는 방송 제작 도구를 구축하는 데 이상적입니다.
Unity에서 Media Blocks SDK를 사용할 수 있습니까?
Unity에서 Media Blocks SDK를 사용할 수 있습니까?
네. Media Blocks SDK .NET은 Unity 6용으로 단일 크로스 플랫폼 .unitypackage를 제공하며, 한 번의 임포트로 Windows, Android, macOS, iOS를 대상으로 합니다. 캡처, 소스, 디코더와 인코더, 효과, 믹싱, 녹화, 스트리밍을 포함한 완전한 SDK를 사용할 수 있으며, 어떤 파이프라인이든 Unity RawImage에 렌더링할 수 있습니다. 두 개의 샘플 씬(미디어 파일 플레이어와 라이브 RTSP/IP 카메라 뷰어)이 시작점으로 포함되어 있습니다. 설정 및 플랫폼별 빌드 가이드는 Unity 문서를 참조하세요.
Unity에 내장된 Video Player와 어떻게 다릅니까?
Unity에 내장된 Video Player와 어떻게 다릅니까?
Unity의 Video Player는 번들된 클립에는 적합하지만, RTSP / IP 카메라 입력이 없고, 코덱 세트가 제한적이며, 캡처나 스트리밍 기능이 없습니다. Media Blocks SDK는 라이브 RTSP 및 IP 카메라 재생, 훨씬 더 다양한 형식과 코덱(H.264, H.265, AV1, VP8/VP9, ProRes, MJPEG 등), 디바이스 캡처, 녹화, 아웃바운드 스트리밍을 추가합니다 — 이 모든 것이 Windows, Android, macOS, iOS에서 동일하게 동작하는 하나의 일관된 파이프라인을 통해 이루어집니다.
Unity 앱에서 비디오를 녹화하거나 스트리밍할 수 있습니까?
Unity 앱에서 비디오를 녹화하거나 스트리밍할 수 있습니까?
네. Unity 빌드 안에서 MP4, MKV 또는 WebM으로 녹화하고, RTMP, SRT, HLS 또는 내장 RTSP 서버를 통해 방송할 수 있으며, 모바일에서는 하드웨어 가속 H.264 / H.265 인코더를 사용합니다. 소스, 오버레이, 비디오 믹서를 결합하여 녹화하거나 스트리밍할 내용을 정확하게 구성할 수 있습니다 — 데스크톱과 모바일 모두에서 가능합니다.
C#에서 AI 비디오 분석 파이프라인을 구축할 수 있습니까?
C#에서 AI 비디오 분석 파이프라인을 구축할 수 있습니까?
네. Media Blocks SDK .NET에는 OCR, ANPR, 객체 감지, 객체 분석, 얼굴 인식, 배경 제거, 사용자 정의 ONNX 추론을 위한 VisioForge.DotNet.Core.AI 블록이 포함되어 있습니다. 이러한 블록을 카메라, RTSP 스트림, 렌더러, 인코더, 파일 출력, 스트리밍 출력과 동일한 MediaBlocksPipeline 안에서 연결합니다.
Whisper 음성-텍스트 변환이 오프라인으로 실행됩니까?
Whisper 음성-텍스트 변환이 오프라인으로 실행됩니까?
네. VisioForge.DotNet.Core.AI.Whisper 패키지는 GGML/whisper.cpp 백엔드를 통해 Whisper를 로컬에서 실행하며, 음성 분할을 위한 선택적 Silero VAD를 사용할 수 있습니다. 오디오를 클라우드 서비스로 전송하지 않고도 라이브 자막, 인식된 음성 이벤트, 사이드카 SRT 또는 VTT 자막 파일을 생성할 수 있습니다.
사용자 정의 ONNX 모델을 사용할 수 있습니까?
사용자 정의 ONNX 모델을 사용할 수 있습니까?
네. OnnxInferenceBlock을 사용하면 사용자 정의 ONNX Runtime 모델을 비디오 프레임에 실행하고, 자체 디코더 또는 후처리 코드를 위한 원시 텐서 출력을 받을 수 있습니다. 일반적인 감지기 계열의 경우 YOLOObjectDetectorBlock이 이미 YOLOX, YOLOv8, RT-DETR 전처리, 디코딩, 좌표 매핑, 오버레이를 처리합니다.
수동 파이프라인 대신 VideoCaptureCoreX 또는 MediaPlayerCoreX와 함께 이러한 AI 블록을 사용할 수 있습니까?
수동 파이프라인 대신 VideoCaptureCoreX 또는 MediaPlayerCoreX와 함께 이러한 AI 블록을 사용할 수 있습니까?
네. 모든 AI 블록은 VideoCaptureCoreX와 MediaPlayerCoreX에서 사용하는 처리 블록 인터페이스도 구현하므로, StartAsync(캡처) 또는 OpenAsync/PlayAsync(재생) 이전에 동일한 블록 인스턴스를 Video_Processing_AddBlock 또는 Audio_Processing_AddBlock으로 등록하면 됩니다 — 수동으로 MediaBlocksPipeline을 구성할 필요가 없습니다.
