Media Blocks SDK .NETConstruya pipelines multimedia modulares en C#
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.
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
Ejemplos de Pipeline
// 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 SIMPLE
El pipeline del reproductor simple utiliza UniversalSourceBlock para leer y decodificar el archivo fuente, VideoRendererBlock para mostrar video y AudioRendererBlock para reproducir audio.
Visualización Interactiva del Pipeline
Loading pipeline diagram...
REPRODUCTOR AVANZADO
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();Pipeline de Reproductor Avanzado con Efectos
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();VISTA PREVIA DE CÁMARA
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.
Pipeline de Vista Previa de Cámara
Loading pipeline diagram...
VISTA PREVIA RTSP
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();Pipeline de Transmisión 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();CAPTURA CON VISTA PREVIA
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.
Pipeline de Captura con Vista Previa
Loading pipeline diagram...
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.
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.
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
Lleve el Media Blocks SDK .NET completo a Unity 6 con un único .unitypackage listo para importar. Construya cualquier pipeline — captura, decodificación y codificación, efectos, mezcla, grabación y streaming — y renderice el resultado en un RawImage de Unity. El paquete incluye dos escenas de ejemplo listas, un reproductor de archivos multimedia y un visor de cámaras RTSP / IP en vivo, como puntos de partida — no el límite de lo que puede construir. Un único paquete acumulativo es compatible con Windows, Android, macOS e iOS: importe una vez, cambie el Build Target y compile.
El SDK completo en Unity
Esto no es un envoltorio solo de reproducción. Sus scripts de Unity obtienen la API completa de Media Blocks SDK .NET — captura de dispositivos, múltiples tipos de fuentes, decodificadores y codificadores, efectos de audio y video, mezcla y composición, grabación a archivo y streaming en red. Construya el pipeline que su aplicación necesite.
Un único paquete acumulativo
Los runtimes nativos de Windows, Android, macOS e iOS se incluyen dentro de un único .unitypackage. Unity elige automáticamente el runtime nativo correcto cuando cambia el Build Target.
Escenas de ejemplo listas
Las escenas incluidas SimplePlayer (archivo multimedia) y RTSPViewer (cámara IP en vivo) renderizan un pipeline en un RawImage mediante el componente reutilizable VisioForgeVideoView, con los modos de aspecto Stretch, Letterbox y Crop — para que esté en funcionamiento en minutos.
Móvil con aceleración por hardware
La reproducción móvil utiliza los códecs de hardware de la plataforma — MediaCodec en Android y VideoToolbox en iOS. Los fotogramas se cargan en la textura de la GPU mediante una ruta de doble búfer sin asignaciones, para video en vivo fluido sin generar basura por fotograma.
Renderice en cualquier parte de la escena
Cada fotograma se carga en una Texture2D de Unity, por lo que el video no se limita a la UI. Muéstrelo en un RawImage, o asígnelo a un material sobre cualquier objeto 3D — pantallas, vallas publicitarias o superficies curvas — en cualquier parte de su escena.
Capture, grabe y transmita desde Unity
Vaya más allá de la reproducción: incorpore cámaras de dispositivos, micrófonos y transmisiones IP / RTSP, grabe en MP4, MKV o WebM, y transmita mediante RTMP, SRT, HLS o un servidor RTSP integrado — todo desde dentro de su compilación de Unity, en escritorio y móvil.
Renderice un pipeline de Media Blocks en un RawImage de Unity
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();Verificado en Unity 6 (6000.x). Requiere el nivel de compatibilidad de API .NET Standard 2.1.
Ver documentación de Unity →Referencia completa de bloques, códecs y dispositivos
Capacidades Generales
- • Vista Previa de Audio/Video
- • Captura de Video y Audio en una Amplia Gama de Formatos
- • Captura de Fotogramas a Clase Bitmap, Archivos BMP, JPEG y PNG
- • Control de Dispositivos de Captura de Video
- • Detección de Movimiento
- • Soporte de Interfaces Personalizadas
- • PIP (Picture-In-Picture)
- • Soporte para Múltiples Pantallas de Salida
- • Captura de Audio desde Altavoces
- • Soporte para Lectura y Escritura de Etiquetas de Archivos de Audio/Video
Dispositivos de Entrada Soportados
- • Cámaras Web USB y Dispositivos de Captura (Incluyendo 4K)
- • Cámaras USB (UVC) en Android vía USB OTG
- • Cámaras/Servidores IP JPEG/MJPEG, MPEG-4 y H.264 HTTP/RTSP/RTMP
- • Videocámaras DV y HDV MPEG-2
- • Tarjetas de Captura PCI
- • Sintonizadores de TV (Con/Sin Codificador MPEG Interno)
- • Formato HD Compatible con Cámaras IP
- • Cámaras IP ONVIF con Soporte PTZ
- • Dispositivos Blackmagic Decklink
- • Dispositivos de Captura de Audio y Tarjetas de Sonido
- • Dispositivos ASIO
Hardware Profesional
- • Soporte de Entrada/Salida Blackmagic Decklink
- • Cámaras FLIR/Teledyne (USB3Vision/GigE)
- • Cámaras Basler (USB3Vision/GigE)
- • Videocámaras DV y HDV MPEG-2
- • Tarjetas de Captura PCI
- • Sintonizadores de TV (Con/Sin Codificador MPEG)
- • Cámaras IP ONVIF con Soporte PTZ
- • Dispositivos ASIO
Fuentes
- • Cámaras Allied Vision
- • Cámara USB (UVC) de Android
- • GIF Animado
- • Cámaras Basler (USB3Vision/GigE)
- • Karaoke CDG
- • Conmutador de Respaldo
- • GenICam (Cámaras Industriales)
- • HTTP
- • HTTP MJPEG
- • Secuencia de Imágenes
- • Archivo Local
- • Búfer de Memoria
- • NDI
- • PulseAudio
- • Cámara Raspberry Pi
- • RTMP
- • RTSP
- • RTSP RAW
- • Captura de Pantalla
- • SRT
- • Audio del Sistema
- • Video del Sistema
- • Señal de Prueba
- • UDP/RTP
- • URI (Archivo/Red)
Procesamiento de Audio
- • Amplificar
- • Balance
- • Convertidor de Formato de Muestra
- • Normalizador de Carga
- • Mezclador
- • Remuestreador
- • Capturador de Muestras
- • Corrector de Marca de Tiempo
- • Rechazo de Paso de Banda Chebyshev
- • Límite Chebyshev
- • Compresor/Expansor
- • Filtro Csound
- • Nivel EBU R128
- • Eco
- • Ecualizador (10 Bandas)
- • Ecualizador (Paramétrico)
- • Renderizado HRTF
- • Karaoke
- • Eliminar Silencio
- • Reverberación
- • Escala/Tempo
- • Volumen
- • Medidor VU
- • Estéreo Amplio
Lector de Códigos de Barras
- • Código QR
- • UPC-A, UPC-E
- • EAN-8, EAN-13
- • Code 39
- • Code 93
- • Code 128
- • Codabar
- • ITF
- • RSS-14
- • Data Matrix
- • Aztec
- • PDF-417
Codificadores de Audio
- • AAC
- • ADPCM
- • ALAW
- • AptX
- • FLAC
- • MP2
- • MP3
- • OPUS
- • Speex
- • Vorbis
- • WAV
- • Wavpack
- • WMA (Windows Media Audio)
Codificadores de Video (CPU/GPU)
- • AV1
- • DV
- • GIF
- • H.264
- • H.265/HEVC
- • MJPEG
- • MPEG-2
- • MPEG-4
- • PNG
- • Theora
- • VP8/VP9 (VPX)
- • WMV (Windows Media Video)
- • Soporte de Codificadores de Hardware NVENC, AMD, Intel
- • Soporte de Codificadores de Hardware iOS/macOS/Android
Procesamiento de Video
- • Envejecimiento
- • Combinación Alfa
- • Auto Desentrelazado
- • Bayer a RGB
- • Clave de Croma
- • Demux Alfa de Códec
- • Efectos de Color
- • Desentrelazar
- • Dados
- • Detección de Bordes
- • Ojo de Pez
- • Voltear/Rotar
- • Gamma
- • Desenfoque Gaussiano
- • Escala de Grises
- • Superposición de Imagen
- • Superposición de Imagen Cairo
- • Entrelazar
- • Detector de Fotograma Clave
- • Procesador LUT
- • Espejo
- • Desenfoque en Movimiento
- • Eco en Movimiento
- • Eco de Zoom en Movimiento
- • Animación Óptica B/N
- • Gestor de Superposición
- • Perspectiva
- • Pellizcar
- • Pseudo 3D
- • Superposición de Código QR
- • Redimensionar
- • Capturador de Muestras
- • Borde Sobel
- • Esfera
- • Cuadrado
- • Estirar
- • Superposición de Texto
- • Túnel
- • Remolino
- • Balance de Video
- • Convertidor de Formato de Píxel
- • Mezclador de Video
- • Espejo Deformado
- • Ondulación de Agua
- • Caja de Zoom
Destinos de Archivo
- • ASF
- • AVI
- • DASH
- • HLS
- • HTTP MJPEG Live
- • MKV (Matroska)
- • MOV (QuickTime)
- • MP4
- • MPEG-PS
- • MPEG-TS
- • MXF
- • OGG
- • WAV
- • WebM
Transmisión en Red
- • Facebook Live
- • HLS
- • NDI
- • RTMP
- • RTSP
- • Shoutcast
- • SRT
- • YouTube Live
Blackmagic Decklink
- • Receptor de Audio
- • Fuente de Audio
- • Receptor de Video
- • Fuente de Video
Visualizadores de Audio
- • Bumpscope
- • Corona
- • Infinite
- • Jakdaw
- • Jess
- • LV Analyzer
- • LV Scope
- • Oinksie
- • Spacescope
- • Spectrascope
- • Synaescope
- • Wavescope
Decodificadores de Video
- • Decodificador AV1
- • Decodificador H.264
- • Decodificador HEVC
- • Decodificador JPEG
- • Decodificador VP8
- • Decodificador VP9
- • Decodificadores Acelerados NVIDIA, Intel y AMD
- • Decodificadores de Hardware Android
- • Decodificadores de Hardware iOS
Bloques Especiales
- • Detector de Códigos de Barras
- • Procesador de Datos
- • Capturador de Muestras de Datos
- • Marca de Tiempo de Depuración
- • Descifrador
- • Cifrador
- • Cola Múltiple
- • Renderizador Nulo
- • Cola
- • Descifrador SRTP
- • Cifrador SRTP
- • Tee (Divisor)
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.MediaBlocksO busque VisioForge.DotNet.MediaBlocks en el Administrador de Paquetes NuGet de Visual Studio. Ver guía de instalación →
Precios
Elija entre suscripción anual o licencia de por vida
Licencia Regular
- Actualizaciones menores y mayores gratuitas durante un año
- El SDK continúa funcionando después de que finaliza la suscripción
- Soporte prioritario
- Se renueva automáticamente cada año (puede cancelar en cualquier momento)
- Todos los 200+ bloques de procesamiento incluidos
Licencia de Por Vida
- Actualizaciones ilimitadas para siempre
- Soporte y correcciones prioritarios
- 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.
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💰 Ahorre más con paquetes Bundle
Este producto está incluido en nuestros paquetes bundle rentables. ¡Obtenga más productos y ahorre hasta un 71%!
.NET Bundle Professional
Ahorre hasta 71%
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
Ahorre hasta 70%
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
Requisitos del Sistema
Requisitos mínimos para desarrollo e implementación en todas las plataformas
| Sistemas Operativos |
|
| .NET Framework |
|
| Hardware |
|
| Frameworks de UI |
|
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.
Conecta el servidor MCP
MCPAñ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/mcpVS Code (.vscode/mcp.json)
{
"servers": {
"visioforge-sdk": {
"type": "http",
"url": "https://mcp.visioforge.com/mcp"
}
}
}Carga un Agent Skill
Agent SkillsPublicamos 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¿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.
