Этот релиз представляет собой крупное обновление, которое кардинально улучшает работу с архивом, добавляет систему уведомлений, предоставляет мощные инструменты для управления конфигурацией и, самое главное, исправляет работу функции видеоаналитики.
✨ Новые возможности (Features)
- Интерактивный архив с календарем и событиями (Feature: Advanced Archive)
Работа с архивом стала интуитивно понятной и быстрой благодаря полному переосмыслению интерфейса:
Календарь с подсветкой активности: Экран архива теперь оснащен интерактивным календарем. Дни, в которые были записи или зафиксированы события аналитики, автоматически подсвечиваются.
Визуализация событий на таймлайне: На временную шкалу теперь наносятся цветные маркеры событий (обнаружение человека, автомобиля и т.д.), что позволяет визуально идентифицировать ключевые моменты.
Список событий и быстрая навигация: Справа от плеера появился список всех событий за выбранный день. Клик по любому событию мгновенно перемещает воспроизведение на этот момент.
Фильтрация событий: Добавлена возможность фильтровать события по их типу (например, показывать только моменты с обнаружением людей).
Динамическая шкала времени: Приближайте таймлайн колесиком мыши, и шкала будет автоматически детализироваться для точного поиска. - Система Desktop-уведомлений (Feature: Notifications)
Теперь вы будете в курсе событий, даже если приложение свернуто:
Уведомления от видеоаналитики: Приложение отправляет нативные desktop-уведомления при обнаружении объектов.
Уведомления о статусе записи: Система информирует о начале, успешном завершении или ошибке записи видео.
Настраиваемость и "умный" кулдаун: Уведомления можно полностью отключить в настройках. 30-секундный период "затишья" для одной камеры предотвращает спам. - Экспорт и импорт конфигурации (Feature: Config Management)
В общих настройках появились инструменты для полного управления конфигурацией:
Экспорт: Сохраняйте все настройки (камеры, группы, раскладки, пользователи и др.) в один json-файл для резервного копирования или переноса.
Импорт: Восстанавливайте всю конфигурацию из ранее сохраненного файла с автоматической перезагрузкой приложения.
🔧 Улучшения и исправления (Improvements & Fixes)
🐞 Ключевое исправление: Стабильная работа видеоаналитики. Полностью решена проблема, из-за которой аналитика не отключалась после включения.
Надежная сборка: Исправлен процесс сборки (PyInstaller), который ранее создавал нерабочий исполняемый файл analytics.exe. Теперь сборка на GitHub Actions проходит корректно для Windows и Linux.
Корректное управление процессом: Улучшен менеджер процессов в main.js. Теперь он использует нативные системные команды (taskkill для Windows) для гарантированного завершения дочернего процесса аналитики.
Непрерывная работа: Скрипт analytics.py теперь работает в непрерывном цикле, как и положено, до его принудительной остановки.
Надежная запись по событиям: Исправлена ошибка, из-за которой запись, инициированная аналитикой, могла прерываться из-за несовместимого аудиокодека (pcm_mulaw).
Корректная авто-остановка записи: Внедрен умный таймер. Запись по событию продолжается заданное в настройках время после последнего обнаружения и автоматически прекращается.
Исправлена локализация: Устранены проблемы, из-за которых новые элементы интерфейса в модальных окнах не переводились без перезапуска.
Прочие улучшения: Устранены мелкие дефекты UI, обновлены зависимости проекта.
✨ New Features
- Interactive Archive with Calendar and Events (Feature: Advanced Archive)
Calendar with Activity Highlighting: The archive now features an interactive calendar that highlights days with recordings or analytics events.
Event Visualization on Timeline: Colored markers for detected events (person, car, etc.) are now displayed directly on the timeline.
Event List & Quick Navigation: A clickable list of all events for the selected day allows for instant seeking.
Event Filtering: Filter events by type (e.g., show only person detections) for a more focused search.
Dynamic Timeline Scale: Zooming with the mouse wheel now dynamically adjusts the time scale for precise navigation. - Desktop Notification System (Feature: Notifications)
Video Analytics Alerts: Receive native desktop notifications when objects are detected.
Recording Status Updates: Get notified when a recording starts, stops, or fails.
Customizable & Smart: Notifications can be disabled in settings, and a 30-second cooldown per camera prevents alert spam. - Configuration Export & Import (Feature: Config Management)
Export: Save your entire application configuration (cameras, groups, layouts, users, etc.) to a single json file.
Import: Restore your complete setup from a backup file with an automatic application restart.
🔧 Improvements & Fixes
🐞 Core Fix: Video Analytics Stability. Completely resolved the critical bug where the analytics feature could not be toggled off after being activated.
Reliable Build Process: Fixed the PyInstaller build process that previously generated a non-functional analytics.exe. The GitHub Actions workflow now correctly builds the executable for both Windows and Linux.
Robust Process Management: The process manager in main.js now uses native system commands (taskkill on Windows) to ensure the analytics child process is reliably terminated.
Continuous Operation: The analytics.py script now runs in a continuous loop as intended until explicitly stopped.
Reliable Event-Based Recording: Fixed an issue where recordings triggered by analytics could fail due to an incompatible audio codec (pcm_mulaw).
Correct Auto-Stop for Recordings: Implemented a smart timer to ensure event-based recordings continue for the user-defined duration after the last detection and then stop gracefully.
Fixed Localization: Addressed bugs where new UI elements in modal windows would not translate without an app restart.
Other Improvements: Corrected minor UI glitches and updated project dependencies.