Saltar a contenido

title: Captura de cámaras RTSP en .NET: latencia y protocolos description: Implementa y configura flujos de cámaras RTSP en .NET con opciones de baja latencia, código de ejemplo y mejores prácticas para UDP y TCP. tags: - Video Capture SDK - .NET - VideoCaptureCoreX - Windows - macOS - Linux - Android - iOS - GStreamer - Capture - Streaming - IP Camera - NDI Source - RTSP - ONVIF - NDI - UDP - C# primary_api_classes: - VideoCaptureCoreX - VideoCaptureCore - RTSPSourceSettings - IPCameraSourceSettings - IPSourceEngine


Integrar Flujos de Cámaras RTSP en Aplicaciones .NET

Video Capture SDK .Net VideoCaptureCoreX VideoCaptureCore

Soporte multiplataforma

El motor VideoCaptureCoreX funciona en Windows, macOS, Linux, Android e iOS vía GStreamer; el motor clásico VideoCaptureCore es solo Windows. Consulta la matriz de soporte de plataformas para códecs y detalles de aceleración por hardware, y la guía de despliegue en Linux para configuración en Ubuntu / NVIDIA Jetson / Raspberry Pi.

Configurar Fuentes de Cámaras RTSP Estándar

Implementar flujos de cámaras RTSP en tus aplicaciones .NET proporciona acceso flexible a cámaras de red y flujos de video. Esta poderosa capacidad permite monitoreo en tiempo real, características de vigilancia y procesamiento de video directamente dentro de tu aplicación.

Para opciones de conexión adicionales y protocolos alternativos, por favor consulta nuestra documentación detallada de cámaras IP que cubre un amplio rango de enfoques de integración de cámaras.

// Crear objeto de configuración de fuente RTSP
var rtsp = await RTSPSourceSettings.CreateAsync(new Uri("url"), "login", "password", true /*¿capturar audio?*/);

// Establecer fuente al objeto VideoCaptureCoreX
VideoCapture1.Video_Source = rtsp;

Optimizar para Streaming RTSP de Baja Latencia

La baja latencia es crítica para muchas aplicaciones en tiempo real incluyendo monitoreo de seguridad, sistemas interactivos y transmisión en vivo. Nuestro SDK proporciona configuraciones especializadas para minimizar el retraso entre captura y visualización.

Nuestro SDK incluye un modo dedicado específicamente diseñado para streaming RTSP de baja latencia. Cuando está configurado apropiadamente, este modo típicamente logra latencia inferior a 250 milisegundos, haciéndolo ideal para aplicaciones sensibles al tiempo.

// Crear el objeto de configuración de fuente.
var settings = new IPCameraSourceSettings();

// Configurar dirección IP, nombre de usuario, contraseña, etc.
// ...

// Establecer modo RTSP de Baja Latencia.
settings.Type = IPSourceEngine.RTSP_LowLatency;

// Establecer modo UDP o TCP.
settings.RTSP_LowLatency_UseUDP = false; // true para usar UDP, false para usar TCP

// Establecer fuente al objeto VideoCaptureCore.
VideoCapture1.IP_Camera_Source = settings;

NUEVO: Modo de Ultra Baja Latencia (60-120ms)

VideoCaptureCoreX ahora incluye un modo dedicado de baja latencia que logra 60-120ms de latencia total - hasta 10 veces más rápido que el modo estándar. Perfecto para vigilancia en tiempo real, monitoreo interactivo y aplicaciones de seguridad.

// Crear configuración de fuente RTSP
var rtsp = await RTSPSourceSettings.CreateAsync(
    new Uri("rtsp://192.168.1.100:554/stream"), 
    "admin", 
    "password", 
    true); // habilitar audio

// Habilitar modo de baja latencia - optimiza para retraso mínimo (60-120ms)
rtsp.LowLatencyMode = true;

// Establecer fuente a VideoCaptureCoreX
VideoCapture1.Video_Source = rtsp;

Cómo Funciona: - Establece búfer de jitter RTSP a 80ms (vs. 1000ms predeterminado) - Optimiza buffering de cola interna (máximo 2 fotogramas) - Deshabilita reordenamiento de paquetes para retraso mínimo - Compromiso: Optimiza velocidad sobre estabilidad

Protocolo de Transporte: UDP vs TCP

La elección entre UDP y TCP depende de tu entorno de red y requisitos de aplicación:

UDP (User Datagram Protocol)

  • Ventajas: Menor latencia, menos sobrecarga de protocolo
  • Desventajas: Puede perder paquetes en redes inestables
  • Mejor para: Redes confiables, aplicaciones sensibles a latencia

TCP (Transmission Control Protocol)

  • Ventajas: Entrega confiable, funciona a través de firewalls
  • Desventajas: Mayor latencia debido a retransmisión de paquetes
  • Mejor para: Redes inestables, conexiones a través de Internet
// Configurar para usar TCP (más confiable)
settings.RTSP_LowLatency_UseUDP = false;

// O configurar para usar UDP (menor latencia)
settings.RTSP_LowLatency_UseUDP = true;

Aplicaciones de Ejemplo

Explora estas aplicaciones de ejemplo para ver la integración de cámaras RTSP en acción:

Mejores Prácticas

  1. Probar latencia con tu hardware específico - El rendimiento varía según cámara y red
  2. Usar TCP si experimentas pérdida de paquetes - Más confiable para conexiones remotas
  3. Monitorear uso de ancho de banda - Los flujos de alta resolución requieren más capacidad
  4. Implementar reconexión automática - Las conexiones de red pueden fallar
  5. Considerar seguridad - Usar autenticación y considerar RTSP sobre TLS

¿Necesitas la URL RTSP para tu cámara? Consulta nuestro directorio de marcas de cámaras IP para URLs RTSP específicas por marca y ejemplos de conexión.

Documentación Relacionada


Visita nuestra página de GitHub para acceder a muestras de código adicionales y recursos de implementación.