Об этом проекте
VLStream Cloud — это открытая платформа видеоинтернета вещей и интеллектуального управления потоками. Она объединяет консоль управления на Vue 3 с многомодульным бэкендом на Spring Boot и ориентирована на корпоративные видеоприложения, такие как контроль безопасности, умные кампусы, водное хозяйство и строительные площадки.
Основные возможности, описанные в README:
- Управление видеотехникой: регистрация, группировка, тегирование, мониторинг состояния, проверка подключения, управление PTZ и обнаружение потоков.
- Мультипротокольное воспроизведение: поддержка устройств с протоколом VLStream, RTSP-камер и устройств GB28181, воспроизведение в браузере через WebRTC Streamer (RTSP в WebRTC), а также HLS и xgplayer во фронтенде.
- Интеллектуальный анализ: запросы на анализ, мониторинг задач в реальном времени, управление результатами и обработка событий.
- Жизненный цикл алгоритмов: хранилище алгоритмов, задачи обучения, разметка данных, управление моделями, конвертация OM для Hi3519DV500 и развертывание на устройствах.
- Автоматизация рабочих процессов: определение процессов на Flowable, развертывание, задачи и утверждения.
- Корпоративные разрешения: аутентификация Sa-Token, RBAC, разрешения на данные, пользователи и роли.
- Платформенные сервисы: плановые задачи, объектное хранилище, интеграция SMS, мониторинг и XXL-Job.
- Визуальные операции: панели мониторинга, GIS-представления (Leaflet), переиспользуемые CRUD-компоненты и видеомаkеты.
Архитектурные заметки: платформа разделяет оборудование (IPC/BOX/NVR), серверы платформы (VLS для AI-событий и доставки моделей, WVP как центр видеотехники, ZLMediaKit как медиасервер, а также MQTT/EMQX, MySQL, Redis, MinIO) и клиенты (VLStream-ui и WVP UI). Одноузловой планировщик обучения на GPU запускает задачи обучения в Docker-контейнерах на одном физическом GPU-сервере, ставя задачи в очередь при занятости GPU и сохраняя логи и артефакты моделей. Обученные модели доставляются на устройства через MQTT с использованием кратковременных URL-адресов загрузки, подписанных HMAC.
Технологический стек: Java 8, Spring Boot 2.7.11, MyBatis-Plus, Sa-Token, Flowable, Redis/Redisson, Springdoc/Knife4j, Maven; фронтенд Vue 3.3, Vite, Element Plus, Avue, Pinia, hls.js, xgplayer, Leaflet, Axios. Зависимости времени выполнения включают WVP Server, ZLMediaKit, EMQX, MySQL, Redis и MinIO. Отдельный SDK для камер на базе Hi3519DV500 обрабатывает потоковую передачу RTSP/WebRTC, вывод ACL и прием моделей и не собирается корневыми командами Maven или фронтенда.
Для развертывания требуются JDK 8, Maven 3.6+, MySQL 5.7+, Redis, MinIO или S3-совместимое хранилище, MQTT-брокер, Linux GPU-сервер для обучения и Node.js для фронтенда. Предоставлены скрипты инициализации базы данных для MySQL, Oracle, PostgreSQL и SQL Server, а Flyway управляет обновлениями схемы. Проект лицензирован под MIT, и в README рекомендуется подключать только авторизованные устройства и соблюдать законы о конфиденциальности и защите данных.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.