À propos du projet

VLStream Cloud est une plateforme open source de vidéo IoT et de gestion intelligente des flux. Elle associe une console de gestion Vue 3 à un backend multi-modules Spring Boot et cible des applications vidéo d'entreprise telles que la supervision de sécurité, les campus intelligents, la conservation de l'eau et les chantiers de construction. Capacités principales décrites dans le README : - Gestion des appareils vidéo : enregistrement, regroupement, étiquetage, surveillance de la santé, tests de connexion, contrôle PTZ et découverte de flux. - Lecture multi-protocole : prise en charge des appareils à protocole VLStream, des caméras RTSP et des appareils GB28181, avec lecture dans le navigateur via WebRTC Streamer (RTSP vers WebRTC), ainsi que HLS et xgplayer dans le frontend. - Analyse intelligente : demandes d'analyse, surveillance des tâches en temps réel, gestion des résultats et gouvernance des événements. - Cycle de vie des algorithmes : entrepôt d'algorithmes, tâches de formation, annotation des données, gestion des modèles, conversion OM Hi3519DV500 et déploiement sur appareils. - Automatisation des flux de travail : définition de processus basée sur Flowable, déploiement, tâches et approbations. - Permissions d'entreprise : authentification Sa-Token, RBAC, permissions de données, utilisateurs et rôles. - Services de plateforme : tâches planifiées, stockage d'objets, intégration SMS, surveillance et XXL-Job. - Opérations visuelles : tableaux de bord, vues SIG (Leaflet), composants CRUD réutilisables et mises en page vidéo. Notes d'architecture : la plateforme sépare le matériel (IPC/BOX/NVR), les serveurs de plateforme (VLS pour les événements IA et la livraison de modèles, WVP comme centre d'appareils vidéo, ZLMediaKit comme serveur multimédia, plus MQTT/EMQX, MySQL, Redis, MinIO) et les clients (VLStream-ui et WVP UI). Un planificateur de formation GPU à nœud unique exécute les tâches de formation dans des conteneurs Docker sur un seul serveur GPU physique, mettant les tâches en file d'attente lorsque le GPU est occupé et conservant les journaux et les artefacts de modèles. Les modèles formés sont livrés aux appareils via MQTT en utilisant des URL de téléchargement signées HMAC à courte durée de vie. Pile technologique : 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. Les dépendances d'exécution incluent WVP Server, ZLMediaKit, EMQX, MySQL, Redis et MinIO. Un SDK côté caméra distinct pour la carte Hi3519DV500 gère le streaming RTSP/WebRTC, l'inférence ACL et la réception de modèles, et n'est pas construit par les commandes Maven racine ou frontend. Le déploiement nécessite JDK 8, Maven 3.6+, MySQL 5.7+, Redis, MinIO ou un stockage compatible S3, un courtier MQTT, un serveur GPU Linux pour la formation et Node.js pour le frontend. Des scripts d'initialisation de base de données sont fournis pour MySQL, Oracle, PostgreSQL et SQL Server, avec Flyway gérant les mises à niveau de schéma. Le projet est sous licence MIT et le README conseille de connecter uniquement des appareils autorisés et de se conformer aux lois sur la confidentialité et la protection des données.