VisioForge

Media Blocks SDK .NETC#으로 모듈형 미디어 파이프라인 구축

Media Blocks SDK .NET으로 강력한 멀티미디어 애플리케이션을 쉽고 유연하게 만드세요. 이 모듈식 툴킷을 사용하면 시각적 생성자(카메라 → 코덱 → 출력)처럼 복잡한 비디오 워크플로를 구축할 수 있습니다. MP4, MKV 및 AVI로의 녹화뿐만 아니라 HLS, RTMP 및 RTSP를 통한 스트리밍을 지원하며 색상 보정, 디인터레이싱, 워터마크, 화면 캡처 및 오디오 처리를 포함한 풍부한 효과 세트를 제공합니다. 내장된 컴퓨터 비전, QR 코드 인식, 얼굴 추적 및 Blackmagic 및 ONVIF 장치에 대한 완벽한 지원을 통해 모든 프로젝트에 전문가급 기능을 제공합니다. SDK는 WinForms, WPF, MAUI, Xamarin, Avalonia 및 Unity와 원활하게 작동하므로 데스크톱, 모바일 및 게임 엔진 앱에 고급 미디어 기능을 쉽게 통합할 수 있습니다.

설치

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();

미리보기가 포함된 캡처

캡처 파이프라인에는 비디오 및 오디오 스트림을 분할하는 데 사용되는 두 개의 티 블록이 있어 비디오 캡처와 함께 비디오/오디오 미리보기를 허용합니다.

미리보기가 포함된 캡처 파이프라인

Loading pipeline diagram...

Live Video Compositor

Live Video Compositor를 사용하여 OBS와 같은 라이브 영상 제작 소프트웨어를 구축하세요. Media Blocks SDK .NET 기반의 실시간 다중 입력, 다중 출력 영상 합성 엔진입니다. 카메라, 화면 캡처, 미디어 파일, RTSP/IP 카메라 피드, NDI 소스를 레이어 입력으로 동적으로 추가 및 제거하고, GPU 가속 렌더링으로 믹싱한 후, 녹화 파일과 라이브 스트리밍 플랫폼으로 동시에 출력합니다. 멀티 카메라 전환, PIP(화면 속 화면) 레이아웃, 라이브 오버레이, 방송 품질의 오디오 믹싱을 지원하며, 모든 기능을 C# 코드로 런타임에 완전히 제어할 수 있습니다.

동적 입출력 관리

컴포지터가 실행 중인 상태에서도 언제든지 영상 및 오디오 소스와 출력 대상을 추가하거나 제거할 수 있습니다. 각 입력은 독립된 파이프라인에서 작동하므로, 하나의 소스에 장애가 발생하더라도 전체 합성에 영향을 미치지 않습니다.

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 지원

단 하나의 즉시 임포트 가능한 .unitypackage로 완전한 Media Blocks SDK .NET을 Unity 6에 도입하세요. 캡처, 디코딩 및 인코딩, 효과, 믹싱, 녹화, 스트리밍 등 어떤 파이프라인이든 구축하고 그 결과를 Unity RawImage에 렌더링할 수 있습니다. 패키지에는 미디어 파일 플레이어와 라이브 RTSP/IP 카메라 뷰어, 두 개의 준비된 샘플 씬이 시작점으로 포함되어 있으며, 이것이 구축 가능한 한계는 아닙니다. 하나의 누적 패키지가 Windows, Android, macOS, iOS를 대상으로 하므로, 한 번 임포트한 뒤 Build Target만 전환하여 빌드하면 됩니다.

Unity 속 완전한 SDK

이것은 재생 전용 래퍼가 아닙니다. Unity 스크립트에서 장치 캡처, 다양한 소스 유형, 디코더와 인코더, 오디오 및 비디오 효과, 믹싱과 합성, 파일 녹화, 네트워크 스트리밍을 포함한 Media Blocks SDK .NET API 전체를 사용할 수 있습니다. 앱에 필요한 어떤 파이프라인이든 구축하세요.

하나의 누적 패키지

Windows, Android, macOS, iOS 네이티브 런타임이 단일 .unitypackage 안에 포함되어 있습니다. Build Target을 전환하면 Unity가 올바른 네이티브 런타임을 자동으로 선택합니다.

준비된 샘플 씬

포함된 SimplePlayer(미디어 파일) 및 RTSPViewer(라이브 IP 카메라) 씬은 재사용 가능한 VisioForgeVideoView 컴포넌트를 통해 파이프라인을 RawImage에 렌더링하며, Stretch, Letterbox, Crop 종횡비 모드를 지원하므로 몇 분 만에 실행할 수 있습니다.

하드웨어 가속 모바일

모바일 재생은 플랫폼 하드웨어 코덱을 사용합니다 — Android의 MediaCodec과 iOS의 VideoToolbox. 프레임은 할당 없는 더블 버퍼 경로로 GPU 텍스처에 업로드되어 프레임마다 가비지가 발생하지 않는 부드러운 라이브 비디오를 제공합니다.

씬의 어디에든 렌더링

각 프레임은 Unity Texture2D에 업로드되므로 비디오가 UI에만 국한되지 않습니다. RawImage에 표시하거나, 화면, 광고판, 곡면 등 모든 3D 오브젝트의 머티리얼에 매핑하여 씬의 어디에든 비디오를 배치할 수 있습니다.

Unity에서 캡처, 녹화 및 스트리밍

재생을 넘어섭니다: 디바이스 카메라, 마이크, IP / RTSP 스트림을 가져오고, MP4, MKV 또는 WebM으로 녹화하며, RTMP, SRT, HLS 또는 내장 RTSP 서버를 통해 방송할 수 있습니다 — 이 모든 것이 데스크톱과 모바일의 Unity 빌드 안에서 이루어집니다.

지원 플랫폼:WindowsAndroidmacOSiOS
활용 분야:VR / AR 비디오디지털 사이니지IP 카메라 대시보드 및 비디오 월시뮬레이션 및 교육게임 내 비디오라이브 스트리밍 및 녹화

Media Blocks 파이프라인을 Unity RawImage에 렌더링하기

C#
// In your MonoBehaviour (e.g. Start()) — the bundled native runtime
// is configured automatically before the first scene loads.
VisioForgeEnvironment.InitializeSdk();

// Build any Media Blocks pipeline. A file source is shown here;
// swap in RTSPSourceBlock, a camera, screen capture, etc.
_pipeline = new MediaBlocksPipeline();

// ignoreMediaInfoReader skips the gst-discoverer pre-probe (required under Unity).
var settings = await UniversalSourceSettings.CreateAsync(
    filePath, ignoreMediaInfoReader: true);
var source = new UniversalSourceBlock(settings);

// RGBA frames are delivered to a BufferSinkBlock...
var videoSink = new BufferSinkBlock(VideoFormatX.RGBA);
_pipeline.Connect(source.VideoOutput, videoSink.Input);
_pipeline.Connect(source.AudioOutput, new AudioRendererBlock().Input);

// ...and uploaded into a Unity Texture2D by VisioForgeVideoView,
// which handles the aspect mode and vertical flip for you.
videoSink.OnVideoFrameBuffer += _videoView.OnFrameBuffer;

await _pipeline.StartAsync();

Unity 6(6000.x)에서 검증되었습니다. .NET Standard 2.1 API Compatibility Level이 필요합니다.

Unity 문서 보기 →

VisioForge Media Blocks SDK .Net 주요 기능은 다음과 같습니다:

핵심 기능

  • 오디오/비디오 미리보기
  • 다양한 형식으로 비디오 및 오디오 캡처
  • Bitmap 클래스, BMP, JPEG 및 PNG 파일로 프레임 캡처
  • 비디오 처리 및 효과(CPU/GPU)
  • 비디오 캡처 장치 제어
  • 네트워크 스트리밍
  • 모션 감지
  • 사용자 지정 인터페이스 지원
  • 컴퓨터 비전 API
  • PIP(Picture-In-Picture)
  • 화면 캡처/창 캡처
  • 얼굴 감지 및 객체 추적
  • 다중 출력 화면 지원
  • 스피커에서 오디오 캡처
  • 오디오/비디오 파일 태그 읽기 및 쓰기 지원

지원되는 입력 장치

  • USB 웹 카메라 및 캡처 장치(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(파일/네트워크)

오디오 처리

  • 증폭
  • 밸런스
  • 샘플 형식 변환기
  • 로드 노멀라이저
  • 믹서
  • 리샘플러
  • 샘플 그래버
  • 타임스탬프 보정기
  • Chebyshev 대역 통과 거부
  • Chebyshev 제한
  • 압축기/확장기
  • 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 to RGB
  • 크로마 키
  • 코덱 알파 디멀티플렉서
  • 색상 효과
  • 디인터레이스
  • 다이스
  • 가장자리 감지
  • 어안
  • 뒤집기/회전
  • 감마
  • 가우시안 블러
  • 그레이스케일
  • 이미지 오버레이
  • 이미지 오버레이 Cairo
  • 인터레이스
  • 키 프레임 감지기
  • LUT 프로세서
  • 미러
  • 무빙 블러
  • 무빙 에코
  • 무빙 줌 에코
  • 광학 애니메이션 흑백
  • 오버레이 관리자
  • 원근
  • 핀치
  • 의사 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 암호화기
  • 티(분배기)

가격

연간 구독 또는 평생 라이선스 중에서 선택하세요

일반 라이선스

€500
  • 1년 동안 무료 마이너 및 메이저 업그레이드
  • 구독 종료 후에도 SDK 기능 유지
  • 우선 지원
  • 매년 자동 갱신(언제든지 취소 가능)
  • 200개 이상의 모든 처리 블록 포함
최고의 가치

평생 라이선스

€1,500/ 일회성
평생 라이선스 구매
  • 평생 무제한 업데이트
  • 우선 지원 및 수정
  • 일회성 결제
  • 모든 향후 기능 포함
  • 200개 이상의 모든 처리 블록 포함

비상업적 용도로는 무료입니다. 무료 라이선스를 받으려면 문의해 주세요.

모든 라이선스에는 로열티 없는 배포 권한이 포함됩니다.

소스 코드 라이선스

이 SDK의 소스 코드 라이선스는 요청 시 이용 가능합니다. 가격 및 라이선스 조건에 대해 논의하려면 영업팀에 문의하세요.

소스 코드 라이선스 요청

💰 번들 패키지로 더 많이 절약하세요

이 제품은 비용 효율적인 번들 패키지에 포함되어 있습니다. 더 많은 제품을 받고 최대 71% 절약하세요!

.NET Bundle Professional

연간:€700.00
평생:€1800.00

최대 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

연간:€1000.00
평생:€2500.00

최대 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

시스템 요구 사항

플랫폼 전반의 개발 및 배포를 위한 최소 요구 사항

운영 체제
  • Windows 10 / 11 (32비트 및 64비트)
  • Windows 8/8.1, Windows 7 SP1
  • Windows Server 2016 이상
  • macOS 12 이상
  • Ubuntu 22.04 / 24.04
  • Android 8 이상
  • iOS 12 이상
.NET Framework
  • .NET Framework 4.6.1 이상
  • .NET Core 3.1
  • .NET 5/6/7/8/9/10
하드웨어
  • 최소 2GB RAM(4GB 이상 권장)
  • Intel Core i5 또는 AMD 동급 프로세서
  • GPU 가속 지원 선택 사항(NVIDIA/Intel/AMD)
UI 프레임워크
  • WinForms
  • WPF
  • WinUI 3 for Desktop
  • Avalonia
  • GTK#
  • MAUI
  • Xamarin.Android/iOS/Mac
  • Unity

문서 및 리소스

Media Blocks SDK를 시작하는 데 필요한 모든 것

Build with AI coding agents

Pairing with an AI agent — Claude Code, Cursor, GitHub Copilot, Gemini CLI, OpenAI Codex? VisioForge publishes machine-readable surfaces for Media Blocks SDK .NET so your agent gets the integration right the first time: the right NuGet packages, license registration, project setup, and the cross-platform deployment details it would otherwise have to guess at.

Live API queries & class lookup
Per-platform integration playbooks
Cross-platform deployment recipes
Full docs as llms.txt

Connect the MCP server

MCP

Add the VisioForge MCP server to your agent for contextual help — search the API, look up classes and members, fetch working code examples, and pull deployment guides, directly inside your editor.

Claude Code

claude mcp add --transport http visioforge-sdk https://mcp.visioforge.com/mcp

VS Code (.vscode/mcp.json)

{ "servers": { "visioforge-sdk": { "type": "http", "url": "https://mcp.visioforge.com/mcp" } } }
MCP server usage guide

Load an Agent Skill

Agent Skills

We publish a downloadable skill for every (SDK, platform) combination — for Media Blocks SDK .NET, a ready-made SKILL.md per platform (which NuGet packages, license code, csproj setup, common pitfalls) plus a working sample project your agent can copy from. Compatible with Claude Code, Cursor, OpenAI Codex, Gemini CLI and 30+ other agents (Cloudflare Agent Skills RFC).

Point your agent at the skills index

https://www.visioforge.com/.well-known/agent-skills/index.json
Browse the skills and per-tool setup

Prefer to feed the entire documentation to your agent? It is also available as plain markdown: /llms.txt · /llms-full.txt

시작할 준비가 되셨나요?

무료 평가판을 다운로드하고 오늘 미디어 파이프라인 구축을 시작하세요

자주 묻는 질문

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으로 멀티 카메라 전환 시스템, 라이브 스트리밍 소프트웨어 또는 방송 제작 도구를 구축하는 데 이상적입니다.

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는 번들된 클립에는 적합하지만, RTSP / IP 카메라 입력이 없고, 코덱 세트가 제한적이며, 캡처나 스트리밍 기능이 없습니다. Media Blocks SDK는 라이브 RTSP 및 IP 카메라 재생, 훨씬 더 다양한 형식과 코덱(H.264, H.265, AV1, VP8/VP9, ProRes, MJPEG 등), 디바이스 캡처, 녹화, 아웃바운드 스트리밍을 추가합니다 — 이 모든 것이 Windows, Android, macOS, iOS에서 동일하게 동작하는 하나의 일관된 파이프라인을 통해 이루어집니다.

Unity 앱에서 비디오를 녹화하거나 스트리밍할 수 있습니까?

네. Unity 빌드 안에서 MP4, MKV 또는 WebM으로 녹화하고, RTMP, SRT, HLS 또는 내장 RTSP 서버를 통해 방송할 수 있으며, 모바일에서는 하드웨어 가속 H.264 / H.265 인코더를 사용합니다. 소스, 오버레이, 비디오 믹서를 결합하여 녹화하거나 스트리밍할 내용을 정확하게 구성할 수 있습니다 — 데스크톱과 모바일 모두에서 가능합니다.