VisioForge

Media Blocks SDK .NET — Construya pipelines multimedia modulares en C#

Construya pipelines de vídeo con bloques en C#: cámara, códec, efecto, salida, con grabación a MP4, MKV o AVI y streaming por HLS, RTMP o RTSP.

Desde €500/año · licencia Lifetime desde €1,500

Cree aplicaciones multimedia potentes de manera fácil y flexible con Media Blocks SDK .NET — un conjunto de herramientas modulares que te permite construir flujos de trabajo de video complejos como un constructor visual (cámara → códec → salida). Soporta la grabación en MP4, MKV y AVI, así como la transmisión vía HLS, RTMP y RTSP, ofreciendo un amplio conjunto de efectos que incluyen corrección de color, desentrelazado, marcas de agua, captura de pantalla y procesamiento de audio. Con visión artificial incorporada, reconocimiento de códigos QR, seguimiento facial y soporte completo para dispositivos Blackmagic y ONVIF, proporciona características de nivel profesional a cualquier proyecto. El SDK funciona a la perfección con WinForms, WPF, MAUI, Uno Platform, Xamarin, Avalonia y Unity, facilitando la integración de capacidades avanzadas de medios en aplicaciones de escritorio, móviles y para motores de juego.

¿Prefiere un componente ya hecho en lugar de una canalización que usted mismo ensambla? Video Capture SDK .NET · Media Player SDK .NET · Video Edit SDK .NET

Beneficios Clave

Arquitectura Modular

200+ bloques de procesamiento que se conectan como bloques de construcción para crear pipelines multimedia personalizados

Multiplataforma

Funciona en Windows, macOS, Linux, Android e iOS con todos los principales frameworks de UI de .NET

Aceleración por Hardware

Codificación/decodificación acelerada por GPU con soporte para NVIDIA, Intel y AMD para máximo rendimiento

Media Blocks SDK .NET es la capa de canalización de la pila .NET de VisioForge: en lugar de configurar un componente ya hecho, se ensambla una aplicación a partir de bloques individuales — una fuente, tantos bloques de procesamiento como haga falta y uno o varios sinks — y se conectan con MediaBlocksPipeline.Connect. Los más de 200 bloques cubren fuentes de archivo y webcam, cámaras IP RTSP y ONVIF con PTZ, Blackmagic DeckLink, cámaras industriales Basler y FLIR, corrección de color, desentrelazado, croma, superposiciones y procesamiento de audio, inferencia de IA, grabación en MP4, MKV, MOV, WebM, MPEG-TS y MXF, y transmisión por HLS, RTMP, RTSP, SRT y NDI. Una sola canalización puede grabar, transmitir y mostrar una vista previa a la vez dividiendo el flujo con un TeeBlock. El SDK se instala desde el paquete NuGet VisioForge.DotNet.MediaBlocks y funciona en Windows, macOS, Linux, Android e iOS con WinForms, WPF, MAUI, Uno Platform, Avalonia y Unity.

Ejemplos de Pipeline

REPRODUCTOR SIMPLE

C#

El pipeline del reproductor simple utiliza UniversalSourceBlock para leer y decodificar el archivo fuente, VideoRendererBlock para mostrar video y AudioRendererBlock para reproducir audio.

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

REPRODUCTOR AVANZADO

C#

El pipeline del reproductor avanzado incluye UniversalSourceBlock para decodificar archivos o transmisiones, renderizadores de video y audio, y bloques de procesamiento de efectos.

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

VISTA PREVIA DE CÁMARA

C#

El pipeline de vista previa simple de cámara/micrófono contiene bloques de origen de dispositivo y bloques renderizadores de video/audio. Se utilizarán dispositivos predeterminados.

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

VISTA PREVIA RTSP

C#

El pipeline de vista previa RTSP, que incluye el bloque de origen RTSP (con decodificadores internos), renderizadores de video y audio.

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

CAPTURA CON VISTA PREVIA

C#

El pipeline de captura tiene dos bloques tee que se utilizan para dividir flujos de video y audio, permitiendo vista previa de video/audio junto con captura de video.

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

Precios

Elija entre suscripción anual o licencia de por vida

Media Blocks SDK .NET se licencia por desarrollador en dos modalidades. La Regular License cuesta 500 € al año, se renueva automáticamente, incluye todas las actualizaciones menores y mayores publicadas durante ese año, y el SDK sigue funcionando cuando termina la suscripción: simplemente se dejan de recibir versiones nuevas. La Lifetime·Team License es un pago único de 1.500 € e incluye actualizaciones menores y mayores, y todas las funciones futuras, durante toda la vida del producto. Ambas incluyen los más de 200 bloques de procesamiento, soporte por correo electrónico y derechos de distribución libres de regalías, así que no hay cuota de ejecución por las aplicaciones que usted distribuye. El uso no comercial es gratuito bajo petición y la licencia de código fuente está disponible bajo petición. La licencia anual se puede pagar con tarjeta de crédito o por transferencia bancaria y SEPA; la licencia vitalicia se paga con tarjeta. Si un proyecto necesita más de un SDK de VisioForge, los paquetes .NET cuestan menos que los mismos productos por separado.

Licencia Regular

€500año
  • Actualizaciones menores y mayores gratuitas durante un año
  • El SDK continúa funcionando después de que finaliza la suscripción
  • Soporte por correo electrónico
  • Se renueva automáticamente cada año (puede cancelar en cualquier momento)
  • Todos los 200+ bloques de procesamiento incluidos
MEJOR VALOR

Licencia Lifetime·Team

€1,500/ único pago
  • Actualizaciones menores y mayores durante la vida del producto
  • Soporte por correo electrónico
  • Pago único
  • Todas las funciones futuras incluidas
  • Todos los 200+ bloques de procesamiento incluidos

Gratis para uso no comercial. Por favor contáctenos para obtener una licencia gratuita.

Todas las licencias incluyen derechos de distribución libres de regalías.

💰 Ahorre más con paquetes Bundle

Este producto está incluido en nuestros paquetes bundle rentables. Obtenga más productos por menos de lo que costaría comprarlos por separado.

.NET Bundle Professional

Anual:€700
vs €1,900 comprándolos por separado
De por vida:€1,800
vs €5,500 comprándolos por separado

Incluye:

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

Anual:€1,000
vs €2,500 comprándolos por separado
De por vida:€2,500
vs €7,500 comprándolos por separado

Incluye:

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

Licencia de código fuente

La licencia de código fuente está disponible bajo solicitud para este SDK. Contacte a nuestro equipo de ventas para discutir precios y términos de licencia.

Solicitar licencia de código fuente

Análisis de Vídeo con IA y Voz

Añada inferencia de IA, anonimización de privacidad, detección de vocabulario abierto, comprensión visión-lenguaje, búsqueda semántica y reconocimiento de voz directamente a los pipelines de Media Blocks SDK .NET.

Media Blocks SDK .NET añade bloques de procesamiento de IA directamente a los pipelines multimedia de C# mediante VisioForge.DotNet.Core.AI y VisioForge.DotNet.Core.AI.Whisper. Los desarrolladores pueden insertar OCR, reconocimiento de matrículas, detección de objetos YOLO/RT-DETR/vocabulario abierto, análisis de objetos con ByteTrack, reconocimiento facial, anonimización automática de PII, eliminación de fondo, subtitulado visión-lenguaje, incrustación de vídeo/búsqueda semántica e inferencia ONNX personalizada entre las fuentes, renderizadores, codificadores y salidas de streaming existentes. Los bloques basados en ONNX Runtime pueden ejecutarse en CPU o en proveedores de hardware como CUDA, DirectML y CoreML cuando el runtime correspondiente está disponible, mientras que la conversión de voz a texto de Whisper se ejecuta localmente mediante GGML/whisper.cpp con Silero VAD opcional para obtener segmentos limpios. Los archivos de modelos de IA los suministra o descarga la aplicación, de modo que los equipos mantienen el control sobre la elección del modelo y las licencias. El resultado es un SDK modular de vídeo con IA para .NET que permite crear vídeo OCR consultable, sistemas ANPR, conteo de personas, análisis de tripwire, anonimización compatible con privacidad, búsqueda de vídeo en lenguaje natural, subtítulos en vivo y exportación a SRT/VTT sin salir del modelo de pipeline de Media Blocks.

Ver los bloques de IA

OCR y ANPR

Reconozca texto y matrículas en vídeo en vivo o en archivos con bloques ONNX basados en PaddleOCR y eventos de detección estructurados.

Detección de Objetos y Análisis

Ejecute modelos YOLOX, YOLOv8 o RT-DETR y, a continuación, añada IDs de ByteTrack, cruces de línea, zonas poligonales, contadores y overlays.

Reconocimiento Facial

Detecte rostros, registre identidades, compárelos con una FaceGallery y dibuje a las personas reconocidas en el flujo de vídeo.

Eliminación de Fondo

Use modelos de matting ONNX para difuminar el fondo, sustituirlo por un color sólido, reemplazarlo por una imagen o generar una salida RGBA transparente.

Inferencia ONNX Personalizada

Adjunte su propio modelo ONNX a los fotogramas de vídeo y reciba salidas de tensores en bruto para un postprocesamiento específico de la aplicación.

Subtítulos Whisper sin Conexión

Transcriba audio localmente con Whisper, segmente el habla con Silero VAD, renderice subtítulos en vivo o escriba archivos SRT/VTT.

Anonimización de PII

Difumine, pixele o rellene con color sólido automáticamente rostros, matrículas y texto en pantalla, con filtrado opcional por expresiones regulares para correos electrónicos y números de teléfono.

Detección de Vocabulario Abierto y Comprensión Visión-Lenguaje

Detecte objetos a partir de un prompt en texto libre con OWLv2 o Grounding DINO en lugar de una lista fija de clases, o use un bloque de visión-lenguaje Florence-2 para subtitulado de fotogramas, OCR y localización de frases — cambie prompts y umbrales de confianza en tiempo de ejecución.

Búsqueda Semántica de Vídeo

Construya un índice de incrustaciones basado en CLIP mientras procesa el vídeo, y luego búsquelo con consultas en lenguaje natural para encontrar los fotogramas coincidentes.

Las mismas instancias de bloques también se conectan directamente a VideoCaptureCoreX y MediaPlayerCoreX mediante Video_Processing_AddBlock/Audio_Processing_AddBlock — sin necesidad de un MediaBlocksPipeline manual. Consulte las funciones de IA en las páginas de Video Capture SDK .NET y Media Player SDK .NET.

Live Video Compositor

Desarrolle software de producción de video en vivo similar a OBS con el Live Video Compositor — un motor de composición de video en tiempo real con múltiples entradas y salidas, construido sobre Media Blocks SDK .NET. Agregue y elimine dinámicamente cámaras, capturas de pantalla, archivos multimedia, fuentes RTSP/cámaras IP y fuentes NDI como entradas por capas, mézclelas con renderizado acelerado por GPU y transmita simultáneamente a archivos de grabación y plataformas de streaming en vivo. Diseñado para conmutación multicámara, diseños picture-in-picture, overlays en vivo y mezcla de audio con calidad de transmisión — todo totalmente controlable desde código C# en tiempo de ejecución.

El Live Video Compositor es un motor de composición de múltiples entradas y salidas construido sobre el mismo modelo de canalización. Se crea con un tamaño de lienzo y una velocidad de fotogramas — LiveVideoCompositorSettings(1920, 1080, new VideoFrameRate(25)) — y después se añade cada fuente como entrada con su propio rectángulo de destino y su orden Z: una cámara que ocupa el fondo, una captura de pantalla como superposición de imagen sobre imagen, un archivo multimedia, una cámara RTSP o una señal NDI. Las entradas y salidas se añaden y se quitan con Input_AddAsync y Output_AddAsync mientras la composición está en marcha, y cada entrada se ejecuta en su propia canalización aislada, de modo que una fuente que falla no detiene a las demás. Las capas se mezclan con renderizado OpenGL acelerado por GPU y respaldo por CPU, y el resultado puede ir a varios destinos a la vez: una grabación MP4 o WebM, una emisión en directo de YouTube o Facebook, una tarjeta DeckLink y una vista previa en pantalla.

Entradas y salidas dinámicas

Agregue o elimine fuentes de video y audio y destinos de salida en cualquier momento — incluso mientras el compositor está en ejecución. Cada entrada opera en su propio pipeline aislado, por lo que una fuente con fallos nunca interrumpe la composición completa.

Mezcla acelerada por GPU

Componga múltiples capas de video en tiempo real mediante renderizado multiplataforma acelerado por GPU (OpenGL) o respaldo por CPU. Posicione cada fuente con rectángulos de precisión por píxel, controle el apilamiento Z-order y elija entre políticas de redimensionamiento letterbox, stretch o fill.

Grabar + Transmitir + Previsualizar

Salida a múltiples destinos simultáneamente — grabe en MP4 o WebM, transmita en vivo a YouTube y Facebook, envíe video a hardware Decklink y muestre una vista previa en pantalla — todo desde una única instancia del compositor ejecutándose en tiempo real.

Overlays en vivo y efectos

Aplique superposiciones de texto, marcas de agua de imagen y efectos de video post-composición de forma dinámica — sin necesidad de reconstruir el pipeline. La medición de audio VU en tiempo real proporciona monitoreo de nivel profesional durante la producción en vivo.

Configuración del Live Video Compositor en C#

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

El Live Video Compositor funciona con todas las fuentes de entrada y formatos de salida compatibles con Media Blocks SDK .NET, incluyendo cámaras, captura de pantalla, archivos multimedia, cámaras RTSP/IP, NDI, Decklink y todas las salidas de grabación y streaming.

Compatibilidad con Unity

Media Blocks se entrega como un único .unitypackage acumulativo para Unity 6, con escenas de ejemplo para un reproductor de archivos multimedia y un visor RTSP en directo, y cubre Windows, Android, macOS e iOS desde una sola importación.

Cómo se compara Media Blocks

Comparativas directas con las bibliotecas y los SDK que los equipos suelen evaluar en paralelo.

Referencia completa de bloques, códecs y dispositivos

Cada bloque, códec, contenedor y dispositivo compatible con el SDK — fuentes, codificadores, decodificadores, filtros, sinks y hardware — está en una página de referencia aparte.

Abrir la referencia completa de bloques →

Instalación

Instalación Rápida con NuGet

Instale el SDK directamente en su proyecto usando la Consola del Administrador de Paquetes:

Install-Package VisioForge.DotNet.MediaBlocks

O busque VisioForge.DotNet.MediaBlocks en el Administrador de Paquetes NuGet de Visual Studio. Ver guía de instalación →

Requisitos del Sistema

Requisitos mínimos para desarrollo e implementación en todas las plataformas

Sistemas Operativos
  • Windows 10 / 11 (32-bit y 64-bit)
  • Windows 8/8.1, Windows 7 SP1
  • Windows Server 2016 y posterior
  • macOS 12 o posterior
  • Ubuntu 22.04 / 24.04
  • Android 8 y posterior
  • iOS 12 y posterior
.NET Framework
  • .NET Framework 4.6.1 o posterior
  • .NET Core 3.1
  • .NET 5/6/7/8/9/10
Hardware
  • Mínimo 2 GB RAM (4 GB recomendado)
  • Procesador Intel Core i5 o equivalente AMD
  • Soporte de aceleración GPU opcional (NVIDIA/Intel/AMD)
Frameworks de UI
  • WinForms
  • WPF
  • WinUI 3 para Desktop
  • Avalonia
  • GTK#
  • MAUI
  • Xamarin.Android/iOS/Mac
  • Unity

Documentación y Recursos

Todo lo que necesitas para empezar con Media Blocks SDK

Desarrolla con agentes de IA

¿Trabajas con un agente de IA — Claude Code, Cursor, GitHub Copilot, Gemini CLI, OpenAI Codex? VisioForge publica superficies legibles por máquina para Media Blocks SDK .NET para que tu agente acierte la integración a la primera: los paquetes NuGet correctos, el registro de licencia, la configuración del proyecto y los detalles de despliegue multiplataforma que de otro modo tendría que adivinar.

Consultas en vivo a la API y búsqueda de clases
Guías de integración por plataforma
Recetas de despliegue multiplataforma
Documentación completa como llms.txt

Conecta el servidor MCP

MCP

Añade el servidor MCP de VisioForge a tu agente para obtener ayuda contextual: buscar en la API, consultar clases y miembros, obtener ejemplos de código funcionales y traer guías de despliegue, directamente en tu 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" } } }
Guía de uso del servidor MCP

Carga un Agent Skill

Agent Skills

Publicamos un skill descargable para cada combinación de (SDK, plataforma) — para Media Blocks SDK .NET, un SKILL.md listo para usar por plataforma (qué paquetes NuGet, código de licencia, configuración del csproj, errores comunes) más un proyecto de ejemplo funcional del que tu agente puede copiar. Compatible con Claude Code, Cursor, OpenAI Codex, Gemini CLI y más de 30 agentes (Cloudflare Agent Skills RFC).

Apunta tu agente al índice de skills

https://www.visioforge.com/.well-known/agent-skills/index.json
Explora los skills y la configuración por herramienta

¿Prefieres pasar toda la documentación a tu agente? También está disponible como markdown plano: /llms.txt · /llms-full.txt

¿Listo para Empezar?

Descarga la prueba gratuita y comienza a construir tu pipeline multimedia hoy

Preguntas frecuentes

¿Qué es Media Blocks SDK y en qué se diferencia de otros SDKs de VisioForge?

Media Blocks SDK utiliza una arquitectura de pipeline modular donde se conectan bloques de procesamiento individuales (fuentes, codificadores, efectos, salidas) como piezas de construcción. A diferencia de los SDKs de Video Capture o Media Player que ofrecen flujos de trabajo predefinidos, Media Blocks le otorga control total sobre cada etapa del pipeline multimedia, siendo ideal para escenarios personalizados o complejos.

¿Cómo construyo un pipeline multimedia en C#?

Cree una instancia de MediaBlocksPipeline, añada bloques de origen (archivo, cámara, RTSP, captura de pantalla), conecte bloques de procesamiento (codificadores, efectos, overlays) y adjunte bloques de salida (archivo, renderizador, transmisión de red). Llame a StartAsync() para ejecutar. El SDK gestiona automáticamente el threading, la sincronización y la aceleración por hardware.

¿Funciona Media Blocks SDK en macOS, Linux y plataformas móviles?

Sí. Media Blocks SDK es compatible con Windows, macOS 12+, Ubuntu 22.04/24.04, Android 8+ e iOS 12+. Funciona con WinForms, WPF, MAUI, Uno Platform, Avalonia y Xamarin. El mismo código de pipeline se ejecuta en todas las plataformas con renderizado y aceleración por hardware específicos de cada plataforma.

¿Puedo transmitir video por RTMP, RTSP o HLS?

Sí. El SDK incluye bloques de salida de streaming dedicados para RTMP (YouTube Live, Facebook Live), servidor RTSP, HLS, SRT, NDI y Shoutcast. Puede combinar streaming con grabación local y vista previa utilizando bloques Tee para dividir el pipeline en múltiples salidas.

¿Se admite la codificación y decodificación acelerada por GPU?

Sí. Media Blocks SDK admite codificación acelerada por hardware mediante NVIDIA NVENC, Intel Quick Sync y AMD AMF, así como decodificación por hardware. En plataformas móviles, los códecs de hardware de iOS y Android se utilizan automáticamente. Esto permite el procesamiento en tiempo real de 4K con un uso mínimo de CPU.

¿Puedo usar cámaras industriales (GigE Vision, USB3 Vision) y Blackmagic Decklink?

Sí. El SDK incluye bloques de origen para cámaras industriales compatibles con GenICam (Basler, Allied Vision, FLIR/Teledyne) mediante GigE Vision y USB3 Vision. Los dispositivos Blackmagic Decklink son compatibles con bloques dedicados de origen y salida para captura y salida de video profesional.

¿Qué es el Live Video Compositor y en qué se diferencia de construir pipelines manualmente?

El Live Video Compositor es un motor de composición de video en tiempo real de alto nivel construido sobre Media Blocks SDK. Aunque puede ensamblar pipelines de mezcla personalizados manualmente con bloques individuales, el compositor proporciona una arquitectura completa para aplicaciones similares a OBS lista para usar — incluyendo aislamiento de entrada basado en bridges, composición acelerada por GPU, gestión dinámica de fuentes y salidas en tiempo de ejecución, control de capas Z-order, overlays de texto e imagen en vivo, efectos post-composición y medición de audio VU. Es ideal para construir sistemas de conmutación multicámara, software de streaming en vivo o herramientas de producción de broadcast en C# y .NET.

¿Puedo usar Media Blocks SDK en Unity?

Sí. Media Blocks SDK .NET incluye un único .unitypackage multiplataforma para Unity 6 que es compatible con Windows, Android, macOS e iOS desde una sola importación. Obtiene el SDK completo — captura, fuentes, decodificadores y codificadores, efectos, mezcla, grabación y streaming — y renderiza cualquier pipeline en un RawImage de Unity. Se incluyen dos escenas de ejemplo (un reproductor de archivos multimedia y un visor de cámaras RTSP / IP en vivo) como puntos de partida. Consulte la documentación de Unity para la configuración y las guías de compilación por plataforma.

¿En qué se diferencia esto del Video Player integrado de Unity?

El Video Player de Unity está bien para clips incluidos en el paquete, pero no tiene entrada RTSP / cámara IP, un conjunto limitado de códecs y carece de captura o streaming. Media Blocks SDK añade reproducción RTSP y de cámaras IP en vivo, una gama mucho más amplia de formatos y códecs (H.264, H.265, AV1, VP8/VP9, ProRes, MJPEG y más), captura de dispositivos, grabación y streaming saliente — todo a través de un único pipeline coherente que se comporta igual en Windows, Android, macOS e iOS.

¿Puedo grabar o transmitir video desde una aplicación de Unity?

Sí. Desde dentro de una compilación de Unity puede grabar en MP4, MKV o WebM y transmitir mediante RTMP, SRT, HLS o un servidor RTSP integrado, usando codificadores H.264 / H.265 acelerados por hardware en móvil. Combine fuentes, overlays y un mezclador de video para componer exactamente lo que graba o transmite — en escritorio y móvil.

¿Puedo crear pipelines de análisis de vídeo con IA en C#?

Sí. Media Blocks SDK .NET incluye bloques de VisioForge.DotNet.Core.AI para OCR, ANPR, detección de objetos, análisis de objetos, reconocimiento facial, eliminación de fondo e inferencia ONNX personalizada. Conecta estos bloques dentro del mismo MediaBlocksPipeline que las cámaras, las transmisiones RTSP, los renderizadores, los codificadores, las salidas a archivo y las salidas de streaming.

¿La conversión de voz a texto de Whisper funciona sin conexión?

Sí. El paquete VisioForge.DotNet.Core.AI.Whisper ejecuta Whisper localmente mediante el backend GGML/whisper.cpp y puede usar Silero VAD opcional para la segmentación del habla. Puede generar subtítulos en vivo, eventos de voz reconocida y archivos de subtítulos SRT o VTT independientes sin enviar el audio a un servicio en la nube.

¿Puedo usar modelos ONNX personalizados?

Sí. OnnxInferenceBlock le permite ejecutar un modelo personalizado de ONNX Runtime sobre los fotogramas de vídeo y recibir salidas de tensores en bruto para su propio decodificador o código de postprocesamiento. Para las familias de detectores más comunes, YOLOObjectDetectorBlock ya se encarga del preprocesamiento, la decodificación, el mapeo de coordenadas y los overlays de YOLOX, YOLOv8 y RT-DETR.

¿Puedo usar estos bloques de IA con VideoCaptureCoreX o MediaPlayerCoreX en lugar de un pipeline manual?

Sí. Cada bloque de IA también implementa las interfaces de bloque de procesamiento que usan VideoCaptureCoreX y MediaPlayerCoreX, por lo que puede registrar las mismas instancias de bloque con Video_Processing_AddBlock o Audio_Processing_AddBlock antes de StartAsync (captura) u OpenAsync/PlayAsync (reproducción) — sin necesidad de un MediaBlocksPipeline manual.