Sobre el proyecto
VLStream Cloud es una plataforma de IoT de vídeo y gestión inteligente de flujos de código abierto. Combina una consola de administración Vue 3 con un backend de múltiples módulos Spring Boot y está dirigida a aplicaciones empresariales de vídeo como supervisión de seguridad, campus inteligentes, gestión de recursos hídricos y obras de construcción.
Capacidades principales descritas en el README:
- Gestión de dispositivos de vídeo: registro, agrupación, etiquetado, monitorización de salud, pruebas de conexión, control PTZ y descubrimiento de flujos.
- Reproducción multiprotocolo: soporte para dispositivos de protocolo VLStream, cámaras RTSP y dispositivos GB28181, con reproducción en navegador mediante WebRTC Streamer (RTSP a WebRTC), además de HLS y xgplayer en el frontend.
- Análisis inteligente: solicitudes de análisis, monitorización de tareas en tiempo real, gestión de resultados y gobernanza de eventos.
- Ciclo de vida de algoritmos: almacén de algoritmos, tareas de entrenamiento, anotación de datos, gestión de modelos, conversión OM de Hi3519DV500 y despliegue en dispositivos.
- Automatización de flujos de trabajo: definición de procesos, despliegue, tareas y aprobaciones basados en Flowable.
- Permisos empresariales: autenticación Sa-Token, RBAC, permisos de datos, usuarios y roles.
- Servicios de plataforma: trabajos programados, almacenamiento de objetos, integración SMS, monitorización y XXL-Job.
- Operaciones visuales: paneles, vistas GIS (Leaflet), componentes CRUD reutilizables y diseños de vídeo.
Notas de arquitectura: la plataforma separa hardware (IPC/BOX/NVR), servidores de plataforma (VLS para eventos de IA y entrega de modelos, WVP como centro de dispositivos de vídeo, ZLMediaKit como servidor de medios, además de MQTT/EMQX, MySQL, Redis, MinIO) y clientes (VLStream-ui y WVP UI). Un planificador de entrenamiento de GPU de un solo nodo ejecuta trabajos de entrenamiento en contenedores Docker en un servidor físico de GPU, encolando trabajos cuando la GPU está ocupada y reteniendo registros y artefactos de modelos. Los modelos entrenados se entregan a los dispositivos a través de MQTT utilizando URLs de descarga firmadas con HMAC de corta duración.
Pila de tecnología: Java 8, Spring Boot 2.7.11, MyBatis-Plus, Sa-Token, Flowable, Redis/Redisson, Springdoc/Knife4j, Maven; frontend Vue 3.3, Vite, Element Plus, Avue, Pinia, hls.js, xgplayer, Leaflet, Axios. Las dependencias de ejecución incluyen WVP Server, ZLMediaKit, EMQX, MySQL, Redis y MinIO. Un SDK separado del lado de la cámara para la placa Hi3519DV500 gestiona la transmisión RTSP/WebRTC, la inferencia ACL y la recepción de modelos, y no se construye con los comandos de Maven raíz o del frontend.
El despliegue requiere JDK 8, Maven 3.6+, MySQL 5.7+, Redis, MinIO o almacenamiento compatible con S3, un broker MQTT, un servidor GPU Linux para entrenamiento y Node.js para el frontend. Se proporcionan scripts de inicialización de base de datos para MySQL, Oracle, PostgreSQL y SQL Server, con Flyway gestionando las actualizaciones de esquema. El proyecto está bajo licencia MIT y el README recomienda conectar solo dispositivos autorizados y cumplir con las normas de privacidad y protección de datos.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.