metrika
Product:
Category:

April

Flussonic Media Server v.25.04

🔎 Почему стоит обновиться до Flussonic 25.04?

✔ Снижение нагрузки на CPU и диск.

✔ Новые дашборды в мониторинге: отслеживайте больше ошибок и контролируйте трафик.

✔ Бесперебойная работа SDI при переключении входа благодаря компенсации потерь аудиофреймов.

✔ Улучшенная обработка MPEG-TS и телетекста для вещательных сценариев.

📊 Ключевые изменения в Flussonic 25.04

Мониторинг и аналитика

  • Интеграция с Retroview — Исторические графики перенесены из Pulse в Retroview, что снизило нагрузку на CPU при отображении метрик (#19777).
  • Обновления дашборда Teledis — Отслеживание ошибок MPEG-TS (TEI и контрольная сумма), фильтрация метрик по серверу и корреляция с версиями ПО (#47469, #48254, #48255).
  • Новый дашборд статистики сервера — Мониторинг трафика, нагрузки планировщика и состояния сервера в реальном времени для ускорения диагностики (#48782, #49212, #49166).

Улучшения в стриминге и приёме потока

  • Расширения WHIP/WHEP — Улучшена поддержка воспроизведения кросс-доменных потоков (#49108).
  • API камеры для эпизодов — Получение записей и аналитики с камер Iris через API для централизованной обработки. Возможности:
  • Безопасность и наблюдение: доступ к клипам по движению и метаданным для централизованного мониторинга.
  • Аналитика: передача данных о детекции объектов и временных метках на внешние платформы (#46095).
  • Устойчивость аудио SDI — При переключении входов SDI система компенсирует потерю аудиофреймов вставкой тишины и отслеживанием разрывов. Критично для бесперебойной передачи аудио при сбоях оборудования (#48209).

Улучшения производительности и стабильности

  • Оптимизация очистки DVR — Новый механизм очистки равномерно распределяет задачи удаления по всему периоду хранения. Преимущества:
  • Отсутствие скачков загрузки диска во время обслуживания
  • Меньше конкуренции за I/O с текущими записями
  • Плавная ротация архива на системах с высокой нагрузкой (#22155)
  • Прогноз использования диска — API Central теперь включает поле estimated_disk_usage для:
  • Прогноза доступного места на диске
  • Мониторинга скорости записи
  • Проактивного планирования ресурсов (#48298)
  • Улучшенные метки в Central — В схеме Central теперь используются метки из Layouter в объектах streamer и stream (#49567).
  • Рефакторинг мультиплексора MPEG-TS — Более эффективная работа с конфигурацией (#41909).
  • Улучшения KLV и телетекста — Улучшена обработка метаданных и субтитров в потоках MPEG-TS и DVB-телетексте (#47177, #46598).

🛠 Оптимизация системы и исправления

Стабильность и производительность стриминга

  • Источники Shoutcast теперь отправляются в UDP без прерываний (#34340).
  • Улучшено отображение входного/выходного битрейта в интерфейсе (#45676).
  • Разрывы при записи архива теперь отражаются в статистике DVR (#45930).
  • Битрейт потока теперь корректно обновляется после транскодирования (#48161).
  • URL с не-ASCII символами теперь проходят проверку в источниках (#48836).
  • MPEG-TS мультиплексор больше не перезапускается при скачках DTS телетекста назад (#46851).
  • Транскодер теперь поддерживает CBR MPEG-TS файлы (#47230).
  • WebRTC-проигрыватель корректно обрабатывает смену разрешения (#48792).
  • Исправлена ошибка, вызывавшая неконтролируемый рост битрейта потока (#49575).

Мониторинг, телеметрия и дашборды

  • IP-адрес устройства теперь сохраняется в OpenTelemetry при вызовах управления камерами (#46189).
  • Параметры нагрузки планировщика теперь отображаются на дашборде сервера (#49166).
  • Повышена надёжность доставки метрик и добавлены алерты на их пропадание (#48979).
  • Исправлены ошибки передачи телеметрии (#49513, #49487).
  • Повышена стабильность Prometheus API при отсутствии данных (#49518).
  • Ссылки на графики потоков теперь корректно указывают на выбранный сервер (#49519).
  • Некоторые не критичные ошибки входов понижены до предупреждений, добавлены новые графики в Teledis (#49406).
  • Исправлены ошибки с правами доступа к дашбордам (#49410).
  • Улучшено отображение деталей входа в потоки (#48219).
  • Счётчик рестартов потоков теперь отслеживается точнее (#48625).
  • Улучшен сбор статистики и работа телеметрии (#48623).
  • Улучшено отображение OCR-субтитров на Astra Linux 1.7 (#49141).

Улучшения DVR и архива

  • Исправлена очистка DVR для архивов “по движению” (#49230).
  • Переразметка архива теперь работает стабильно даже при высокой нагрузке (#49260).
  • DVR теперь включает отображение соответствий между временем начала диапазона и реальным временем в iris-dvr (#49581).

Исправления приёма и транскодирования

  • Улучшена стабильность запуска транскодера (#48787).
  • Исправлен сбой при добавлении входа с приоритетом выше текущего (#49310).
  • Параметры чтения MPTS теперь применяются без перезапуска входа (#49391).
  • MPEG-TS reader теперь корректно обрабатывает пустые chunked-ответы (#49392).
  • Переразметка потоков по меткам работает корректно при нагрузке (#49260).
  • Улучшена валидация параметра size в конфигурации транскодера (#49464).

Обновления API и Central

  • Изменена структура streamer healthcheck status для лучшей читаемости (#48716).
  • Ускорено выполнение запроса streams_list (#49164).
  • Удалено поле failover_from, чтобы избежать неправильной маршрутизации потоков (#49454).
  • Исправлено сохранение модели VisionPoint (#49480).
  • Ускорена генерация config_external — изменения применяются быстрее (#49688).
  • Central больше не создаёт vsaas auth_backend по умолчанию (#49857).

Общие улучшения

  • Агенты теперь подключаются до 10 раз быстрее — время активации снижено с 10 до 1 секунды (#40801).
  • Добавлена поддержка тестирования на Astra Linux 1.7 (#48043).
  • Детектор движения больше не запускается на потоках без входа и избегает дублирования сборщиков событий (#46753).
  • Улучшена публикация статического screencast из Chrome (#48747).
  • Добавлена поддержка эпизодов, сгенерированных Smartcam или Iris (#49772).
  • Улучшено логирование для ускорения реакции на инциденты (#49665).
  • Дашборды теперь надёжнее отображают данные по инцидентам (#49490).

Watcher v.25.04

Изменения в области ИИ и аналитики

  • Определяйте направление движения транспорта для мониторинга трафика и точного подсчета въезжающих и выезжающих автомобилей. (#8347)
  • Датчик движения теперь поддерживает протокол http+iris для получения эпизодов (#49773)
  • Настраивайте зоны детекции: устанавливайте разные названия и типы детекции для каждой зоны для мониторинга и безопасности (#48488)
  • Распознавание номерных знаков маленького размера, которые раньше аналитика игнорировала. (#49773)

Администрирование и API

  • Теперь во vsaas.io можно авторизоваться по номеру телефона или войти по логину и паролю (#45410)
  • Теперь списки камер всегда отображаются с сортировкой по названию в списках и API (#45648, #47055)
  • Предпросмотр эпизодов: в новой версии iOS-приложения появилась система кэширования для быстрого отображения миниатюр эпизодов (#48958)

🛠 Оптимизация системы и исправления

Производительность и стабильность

  • Улучшены времена отклика API для /organizations и folder_list (#48090, #49082)
  • Теперь собираются анонимные данные о использовании системы, что помогает проактивно обнаруживать проблемы и их устранять (#45023, #48954)
  • Ускорена скорость подключения агентов в 10 раз (#49730, #40801)
  • Новый эндпоинт node_layout_decisions для получения информации о перемещении потока (#48879)

Мониторинг и воспроизведение

  • Исправлены проблемы с воспроизведением архивов при клике на события (#48369)
  • Расширена поддержка видеовходных источников в плеере (#45801)
  • Исправлена настройка истечения срока действия DVR в API (#49152)

API и улучшения бэкенда

  • Добавлены поля last_change, которое показывает информацию о последнем изменении конфигурации камеры, и last_episode_at в Watcher API (#49419)
  • Ускорена скорость подключения агентов в 10 раз (#49730, #40801)
  • Новый эндпоинт node_layout_decisions для получения информации о перемещении потока (#48879)

Улучшения интерфейса и мобильные устройства

  • Новый интерфейс управления пользователями (#47916)
  • Отдельная страница для персон (#49421)
  • Экран карты для iOS - Визуализация местоположений камер и событий на карте (#45664)
  • Переработанные карточки событий - Компактный и расширяемый вид событий для десктопа/мобильных устройств (#48493)
  • Защита с помощью пин-кода - Защита доступа к приложению с помощью настраиваемых пин-кодов (#49363)

Flussonic Central 25.04

  • #39070 (new) Added the ability to manage streamer configurations from a file.
  • #48298 (new) Added the estimated_disk_usage field, which represents the estimated percentage of disk usage on the streamer.
  • #48879 (new) The node_layout_decisions field has been added to the response for stream layout history requests.
  • #48884 (new) Added the ability to automatically create episodes based on recorded ranges. This is useful for publish streams when an episode needs to be created for translation.
  • #49160 (new) Added support for the vision.detectors field.
  • #49567 (new) Improved the Central schema for streamer and stream labels by adding a reference to Layouter labels.
  • #49772 (new) Added support for episodes generated by Smartcam or Iris.
  • #40801 (fixed) Increased the speed of connecting new agents. Agents can now be activated within 1 second instead of 10 seconds.
  • #48716 (improved) Updated the structure of the streamer healthcheck status to improve readability.
  • #48836 (fixed) Stream input URL field validation has been made stricter and now includes checks for non-ASCII characters.
  • #49164 (fixed) Improved the execution time of the streams_list operation.
  • #49230 (fixed) Fixed DVR clearing with “On Motion” archive.
  • #49260 (fixed) Fixed relayout due to label mismatches when multiple nodes are under pressure.
  • #49454 (fixed) Deprecated the failover_from field, which previously prevented streams from returning to their original streamer.
  • #49480 (improved) Fixed saving of the VisionPoint model.
  • #49688 (fixed) Improved the generation speed of config_external. Changes now propagate to Media Server faster.
  • #49857 (improved) Removed automatic vsaas auth_backend creation by Central.

March

  • #21498 (new) Added access to the DVR archive using LL-HLS event playlists (/rewind-3600.ll.m3u8, /archive-xxxxxxxxxx-now.ll.m3u8)
  • #27673 (new) Added a working DVR remote option that allows reading remote archives via m4f without adding an extra input.
  • #30105 (new) Now you can view your colleagues’ statistics in Retroview.
  • #42488 (new) Added statistics for lost PIDs of incoming MPEG-TS streams to Teledis analyzer.
  • #44380 (new) Improved NDI statistics.
  • #45950 (new) OpenTelemetry can now be configured via a configuration file.
  • #47321 (new) Writing files to the DVR cache is now serialized in a single process.
  • #47465 (new) Added DVR read performance statistics to Teledis analyzer.
  • #47546 (new) Now you can see statistics on your colleagues’ accounts in the stream analyzer service.
  • #47766 (new) Implemented token refresh when an update is required.
  • #47767 (new) Enabled viewing statistics for all accounts added to colleagues.
  • #47813 (new) Added segment popularity statistics for DVR, which can be used to calculate DVR storage size.
  • #47872 (new) Added a stage environment for better stability.
  • #48155 (new) Added a dashboard with input bitrate by stream name.
  • #48306 (new) Added error-free streams to the “Top N Streams with Input Errors” dashboard when no error streams are present.
  • #48353 (new) Added functionality to create alerts in Teledis.
  • #48641 (new) Separated stream input error details graph by channel_id and pid.
  • #39797 (fixed) Added extended SRT statistics to telemetry.
  • #43220 (improved) SRT push is now always CBR.
  • #43269 (improved) Removed the srt_port_resolve field from the session_generic scheme.
  • #43528 (fixed) The file processor now correctly determines video resolution.
  • #45651 (fixed) Restart MPTS reader on input timeout.
  • #45696 (fixed) Muxer now bursts only when necessary.
  • #46400 (fixed) Fixed incorrect source statuses in the Web UI.
  • #46457 (fixed) PAT after the multiplexer is now stable according to the configuration.
  • #46470 (fixed) If a camera is overloaded and responds to ONVIF requests with a 503 error, the streamer will now repeat failed ONVIF requests after a delay.
  • #46647 (fixed) Added a workaround for outdated HLS players like TVIP or MAG by sending MPEG-TS playlists to them based on the User-Agent header.
  • #47197 (fixed) Improved ONVIF motion detector to handle bad ONVIF responses correctly, preventing scheduler overload.
  • #47363 (fixed) Fixed issues with working with remote archives of on-demand streams.
  • #47452 (improved) The dvr.stats field with storage statistics is now visible without a configured RAID 0.
  • #47456 (improved) Migrated to new database servers.
  • #47680 (fixed) Restored transcoding channels indication in ChassisUI.
  • #47700 (improved) All protocols now have telemetry statistics.
  • #47729 (fixed) Live streams will no longer attempt to return to the primary source with audio_timeout unless audio frames appear.
  • #47764 (fixed) api-sessions are now separated from other types of sessions and will not be visible in the sessions list or in telemetry.
  • #47801 (improved) Added backward compatibility for the transcoder to run on obsolete operating systems.
  • #47877 (fixed) Fixed script errors during re-authentication for organizations without dashboards.
  • #47884 (fixed) Fixed transcoder regression in Docker containers.
  • #47924 (fixed) Live streams now correctly check alive sources after errors.
  • #47927 (fixed) Fixed DVR crashes on invalid segments without duration.
  • #47938 (fixed) Fixed broken audio transcoding for mp2a/mp3 sources.
  • #48032 (fixed) Fixed the source selection mechanism when the active source is lost.
  • #48055 (fixed) Fixed transcoder crashes on specific AD splices.
  • #48076 (improved) Increased session timeout duration in Grafana without requiring a page refresh.
  • #48103 (fixed) Fixed regression in thumbnail generation caused by the async decoder.
  • #48136 (improved) Improved test coverage for better stability.
  • #48141 (fixed) Deprecated auth request parameters for publishing.
  • #48232 (improved) Increased bitrates in the encoding target presets to make them more realistic: SD - 3 Mbit/s, HD - 6 Mbit/s, and FHD - 12 Mbit/s.
  • #48304 (fixed) Fixed memory leaks in the NVENC2 transcoder.
  • #48436 (fixed) Changed the query for the input_availability graph from counter to gauge.
  • #48451 (fixed) Improved response speed to errors encountered while working with Grafana.
  • #48526 (fixed) The session referer property is no longer validated.
  • #48550 (fixed) Fragment units with both start and end bits set in one unit will no longer be dropped.
  • #48577 (fixed) Improved transcoder parameters view from external config in the Web UI.
  • #48621 (improved) Optimized performance for internal statistics storage.
  • #48816 (fixed) Improved dashboard load speed and fixed data display issues on some dashboards.
  • #48872 (improved) Improved reaction time to dashboard display issues.
  • #49007 (fixed) Fixed issues with the speed of telemetry data transmission.
  • #49015 (fixed) Enhanced the sessions method for handling large data requests.
  • #19912 (new) Now you can register via phone number, activate, configure, and use cameras on vsaas.io.
  • #41857 (new) Added a profile screen.
  • #42889 (new) Added episode indication for vehicle position (front/rear).
  • #45410 (new) Added login functionality to vsaas.io.
  • #46614 (new) It is now possible to create a mosaic from the Mosaics section in the main menu.
  • #46833 (new) Now you can navigate to the camera agent from the admin camera list.
  • #48071 (new) Added an “About” screen with information about the app and service in the iOS app.
  • #48101 (new) Added a settings screen in the iOS app.
  • #48132 (new) Now you can check the reason for a streamer’s unavailability and view information about all unavailable streamers.
  • #48260 (new) Now filtering by preset is available in the camera list.
  • #48270 (new) Added an events screen with filters in the iOS app.
  • #48489 (new) It is now possible to configure the detection zone even if a non-configurable preset is selected in the camera settings.
  • #48581 (new) Added logging for dvr_export actions with user details and a filter to track them.
  • #48631 (new) Added alerts with information about processes.
  • #48702 (new) Added a mosaic screen.
  • #48719 (new) Now you can view the history of layout changes in the admin camera list.
  • #14475 (fixed) Fixed license plate recognition on cameras with FULL HD or higher resolution.
  • #44144 (improved) Increased the accuracy of license plate detection.
  • #44439 (fixed) Added strict validation of the stream URL according to RFC 3986 in the API.
  • #44488 (fixed) Prevented adding cameras if the organization limit is reached.
  • #44511 (fixed) Fixed player zoom to any location in the Android app.
  • #44897 (fixed) Fixed long reconnect intervals causing some license plates not to be registered by video analytics.
  • #45065 (fixed) Fixed the issue with mosaics not being available in the Android app.
  • #45549 (fixed) Fixed the camera list not being available in the Android mobile app on Xiaomi Redmi Note 12.
  • #46262 (improved) Added a new streamer node to the cluster.
  • #46615 (improved) Added the ability to manage routes for mosaics.
  • #46737 (fixed) Added client and admin routes for user management.
  • #46822 (fixed) The network system has been updated, making the application more stable and improving performance.
  • #46886 (fixed) Fixed the issue of opening the camera screen before the player loaded.
  • #47181 (improved) Upgraded verification for the Flussonic Watcher application in the Play Console.
  • #47185 (improved) Improved Flussonic Agent compatibility with Kubernetes.
  • #47215 (improved) Optimized retrieval of the organizations list in API v3 Client.
  • #47263 (fixed) Fixed uncontrolled PTZ control.
  • #47571 (improved) Migrated the organization settings page to the new UI.
  • #47634 (fixed) The streamer selection is now visible on the camera settings page.
  • #47669 (improved) Fixed the issue where new UI updates were not available for users.
  • #47759 (fixed) Fixed the display of detection zones in the camera settings after saving changes.
  • #47771 (improved) Added filtering to events for streams with speech recognition enabled in the API.
  • #47790 (fixed) Added horizontal orientation view in the My Cameras module in the iOS app.
  • #47913 (improved) Implemented a page for selecting the organization owner in the new interface.
  • #47915 (improved) The organization users settings page is now available in the new interface.
  • #47917 (improved) The Users - Settings page is now available in the new interface.
  • #47918 (improved) The Users - Organization Permissions page is now available in the new interface.
  • #47919 (improved) The Users - Access to Cameras page has been replaced with a new UI.
  • #47937 (improved) Added auto-selecting substream names for camera quality settings.
  • #47946 (fixed) Added a description for each episode in the episode list.
  • #47987 (improved) Fixed the schema in Watcher, now correctly displaying the current stream state.
  • #47992 (improved) Added the ability to create API keys in Client API v3 and Admin API v3. Fixed an issue with changing readonly for a user. Also added additional fields in users for configuration.
  • #48002 (fixed) Restored the ability to view and edit the “via” parameter in the “Stream URL” field.
  • #48016 (fixed) Fixed the issue with support not being available after authentication in the Android app.
  • #48017 (improved) The stream will resume in a few seconds after changing the audio recording.
  • #48025 (improved) Added the is_default field to the Presets List in Client API v3.
  • #48028 (fixed) Fixed changing the “via” parameter in input streams in API v3.
  • #48047 (fixed) The camera marker is now displayed correctly on Yandex Maps.
  • #48048 (improved) Added preset configuration for organizations in API v3 Client.
  • #48077 (improved) Added a new firmware to automatically update the home camera when adding.
  • #48084 (fixed) Fixed issues with the “capture only video” setting in camera settings.
  • #48085 (fixed) Now the camera can be added successfully regardless of the audio value format.
  • #48086 (fixed) Now default values are displayed in the fields when creating a camera.
  • #48087 (improved) Added name and organization_id filters to the organization_users_list request in Client API v3.
  • #48117 (improved) Added permission-based filters to the organizations list in Client API v3.
  • #48118 (fixed) Fixed the stream_get method for streams without an organization.
  • #48134 (improved) Fixed the display of presets for a specific organization.
  • #48135 (fixed) Now the camera preview is displayed immediately on the settings page without any delay.
  • #48143 (fixed) Fixed the issue with changing a stream’s preset when the preset is not adjustable.
  • #48150 (fixed) Fixed a navigation bug.
  • #48151 (improved) Fixed a player bug.
  • #48152 (fixed) Fixed random preview display for episodes.
  • #48165 (fixed) Fixed pagination for API v3 /users.
  • #48173 (fixed) Fixed organization selection on the camera editing page when the total number of organizations exceeds 100.
  • #48188 (fixed) Restored the ability to create a camera without specifying a substream.
  • #48207 (fixed) Fixed email validation error for users_list.
  • #48229 (fixed) Fixed the bug with folder jumping when changing the organization for the stream.
  • #48231 (fixed) Fixed the issue where it was not possible to navigate to editing a disabled user.
  • #48236 (improved) Push notifications are now sent faster.
  • #48243 (fixed) Fixed unstoppable camera firmware auto-update.
  • #48257 (improved) The page with the organization’s mosaic list is now available in the new interface.
  • #48276 (improved) Added a delete route for mosaics.
  • #48278 (improved) Added user_organization_folders_list in API v3 Client.
  • #48280 (improved) The Persons page has been replaced with a new UI.
  • #48283 (improved) Fixed update routes for admin and client user_save.
  • #48323 (fixed) Fixed pagination for mosaics.
  • #48328 (improved) Added missing delete_person and person_lists and fixed person_list in API v3.
  • #48382 (improved) Added a separate method with a list of the user’s organizations and the ability to filter by can_edit for the API.
  • #48386 (fixed) Made requests to change the camera independent of each other.
  • #48389 (improved) Added a modal window for selecting and adding users from other organizations.
  • #48391 (improved) Added push notifications in the iOS app.
  • #48401 (improved) Added a favorite cameras section.
  • #48425 (fixed) Fixed support not opening.
  • #48429 (improved) Organizations are now displayed compactly in the user list.
  • #48448 (improved) Fixed permission retrieval and correct title assignment in folders in API v3.
  • #48494 (improved) Added a filter by user_permissions.can_edit_streams for organizations_list.
  • #48515 (fixed) Now you can use the user search field when selecting an organization owner.
  • #48516 (fixed) Fixed the issue where the user could not select an owner if one was not initially assigned.
  • #48519 (fixed) The maximum number of sessions field now accepts null (unlimited), and the locals field has been added to the output for the API.
  • #48523 (fixed) The application has become less resource-demanding.
  • #48528 (fixed) Made text fields with horizontal scroll.
  • #48534 (fixed) Fixed the return of vision configuration in stream_get for the API.
  • #48544 (fixed) Removed the apikey field from the V2 users_list response.
  • #48548 (improved) Added more detailed error logs.
  • #48557 (improved) Added a feature to update the camera’s preview automatically.
  • #48569 (fixed) Fixed an issue where the camera_config function returned 500 errors when the iris camera response was incorrect in the API.
  • #48592 (fixed) Added permissions for all folders in the organization where the user has access in the API.
  • #48613 (improved) Added the can_add_mosaic field for the ui_settings route. It indicates whether the user has permission to add mosaics.
  • #48648 (improved) Added additional fields to the stream layout in the API.
  • #48657 (fixed) Fixed the loss of the via agent parameter in the URL of the stream in the API.
  • #48680 (improved) Now you can edit the mosaic in the new interface.
  • #48690 (fixed) Fixed the can_edit_streams filter in the list of organizations in the API.
  • #48718 (improved) Added support for filtering by multiple folder_id values in streams_list API v3.
  • #48733 (fixed) Fixed the stream list search field bug.
  • #48734 (fixed) Fixed failover triggering after restarting or updating Watcher.
  • #48769 (improved) Fixed glitchy previews for detected faces.
  • #48770 (improved) Added detectors to stream vision and removed areas from the preset in API v3.
  • #48785 (fixed) Now displaying a maximum of 50 persons per page in the persons list.
  • #48786 (improved) Added sorting by id in the persons list API v3 Client.
  • #48833 (fixed) Fixed the synchronization of the preset configuration while saving the stream in the API.
  • #48867 (fixed) Added the ability to delete a stream from a subfolder in API v3.
  • #48897 (fixed) Fixed preview retrieval by token.
  • #48941 (fixed) In the modal window for selecting cameras for the mosaic, we now show which cameras are already selected and prevent adding the same camera again.
  • #48951 (fixed) Fixed action button naming.
  • #48995 (improved) Added logs for incorrect credentials when logging in.
  • #48998 (fixed) Fixed the issue where mobile pushes were not being sent to clients.
  • #47901 (new) Configuration of Central and Layouter via the k8s operator combined into a single manifest.
  • #48380 (new) Introduced a pressure condition into Layouter. Now Layouter takes into account the disk pressure state of streamers and redistributes streams if a streamer is in a disk pressure state. Redistribution will only occur if there is another streamer in the cluster that is not in the disk pressure state.
  • #48709 (new) Added support for load balancing WHIP (WebRTC publish).
  • #48778 (new) Added support for load balancing RTSP (RTSP publish).
  • #48789 (new) Added filtering by the stream.labels field.
  • #46761 (improved) Refactored the operator and improved its test coverage.
  • #47466 (improved) Added a stream.layout.node_layout_decisions field describing Layouter decisions about node compatibility with the stream.
  • #47851 (improved) Added validation on the streamer.stats field to prevent it from appearing in the database.
  • #47894 (improved) Reduced the default value of streamer_dead_timeout to 1 minute. This means that Failover will now be triggered by default after 1 minute when a streamer is unavailable.
  • #48104 (fixed) Fixed a bug where the Streamer was considered dead differently in Layouter and Central, which led to Failover.
  • #48172 (fixed) Added a service central migrate command to conveniently launch the migration tool.
  • #48185 (improved) Improved the description for streamer_dvr_parts_exceeded in layout.change_reason.
  • #48322 (fixed) Fixed Layouter behavior in single-streamer systems. Layouter will no longer consider disk load for such systems.
  • #48411 (fixed) Added clearing of outdated records in the layout history.
  • #48480 (improved) Fixed clearing of episodes with unconfigured stream DVR.
  • #48542 (fixed) Improved Live & DVR availability after streamer failover.
  • #48559 (fixed) Removed relayout for disabled streams.
  • #48589 (fixed) Fixed the installation script to ensure correct migration after an update.
  • #48673 (fixed) Removed relayout into null-ingest due to streamer_dvr_size_exceeded and node_become_offline reasons.
  • #48735 (fixed) Fixed failover triggering after restarting Central.

February

Новое

  • #31294 Added SRT input statistics to the extended API.
  • #43589 Enhanced media processing performance using the updated version of FFmpeg for transcoding.
  • #45000 Removed the concept of stream sessions from the media server. Now they are monitored using a time-series approach.
  • #45115 Added a new ability for pushers configuration.
  • #45769 Added regular checking of secondary input availability: recheck_secondary_inputs_interval.
  • #46498 Added a built-in stream analyzer service for automated TR101290 error detection, frame drops, and bitrate issues in real-time.
  • #46876 Added an API to monitor WebRTC ingest statistics counters, such as ABR changes and packet loss.
  • #47123 Properly deliver play counters to live stream telemetry.
  • #47189 Added additional RTSP ingest stream quality metrics.
  • #47273 Added PromQL API for the Retroview service.
  • #47302 Improved the speed of reading HLS DVR segments.
  • #47515 Now dashboards load faster.
  • #47517 Now the organization ID in dashboards syncs with your account ID.

Улучшено

  • #46650 Added deployment of Retroview to a Kubernetes cluster via ArgoCD.
  • #46893 Added a workaround for reading from IP cameras that assign the same DTS to sibling frames.
  • #47145 Added OpenTelemetry traces to ONVIF camera control.
  • #47270 Improved collection of statistics on frame reorders inside stream input.
  • #47320 Added graceful handling of broken DVR cache segments.
  • #47554 Improved stability of database connections.
  • #47590 Improved validation of incoming requests for better security and stability.

Исправлено

  • #40438 Now inserted adverts are sequentially rotated when inserted into VOD HLS splices.
  • #44093 Added more cases where media_info from VOD or live can configure the transcoder to produce the same result.
  • #45258 Improved the Streaming API request ranges.json.
  • #45693 Changed default memory allocation tuning to reduce memory usage when DVR serves more than 10 Gbps.
  • #45829 Added a 503 response when reading DVR from a corrupted file.
  • #46499 Now properly collecting stream input counters from published streams.
  • #46588 Now stream.stats.dvr_info.bytes returns actual disk usage.
  • #46903 Restored GPU metrics in the OpenMetrics API.
  • #47017 Fixed cleanup for some streams and disks after disk removal from RAID.
  • #47083 Restored pushers statuses in WebUI.
  • #47604 Fixed monitoring to review and analyze request status codes.
  • #47642 Restored the ability to burn subtitles.
  • #47695 In ranges.json Streaming API, changed opened_at and closed_at parameter units from seconds to milliseconds (with backward compatibility).

Новое

  • #44048 Added the possibility to configure some camera image settings via API v3.
  • #45410 Added login entry in vsaas.io.
  • #46622 Added PTZ controls in the iOS app.
  • #46775 Enabled capturing of video only.
  • #46777 Added camera rotation support in the vsaas.io Android app.
  • #46778 Added camera rotation feature for vsaas.io in the iOS app.
  • #46816 Added firmware auto-update for Iris cameras upon activation.
  • #46944 Added FAQ for clients on vsaas.io.
  • #47086 Now possible to configure media_quality in the camera_config API v3.
  • #47089 Added media quality settings: Users can now select their preferred playback quality.
  • #47090 Added a Support section to the new interface.
  • #47093 Now users can contact support via Watcher on cloud.vsaas.io.
  • #47131 Added media quality settings in the iOS app.
  • #47132 Added media quality settings.
  • #47135 Added a firmware update view in the activation and player screens of the iOS app.
  • #47137 Added camera update notifications.
  • #47447 Added a support module in the iOS app.
  • #47448 Now users can get support via the mobile application.
  • #47774 Added playback_token in the Streams Admin API v3.

Улучшено

  • #43645 Added a firmware update feature to the new interface.
  • #43646 Replaced the add and edit camera page with a new UI.
  • #45372 SmartCam now recognizes car brands and models.
  • #46553 Fixed crashes on object-rich scenes.
  • #46642 Replaced the Agents page with a new UI.
  • #46689 Context search is now available for processing requests in English and Russian.
  • #46929 Added a notification about firmware updates in progress to the camera editing page.
  • #46968 The profile page is now available in the new interface.
  • #47018 Sorting in the API v3 agents list now works correctly.
  • #47139 Now users can change the organization of the camera without encountering folder errors.
  • #47290 Fixed video analytics startup on Debian Buster-based distributions.
  • #47307 Improved alert for mass agent disconnection to help localize missing video issues.
  • #47357 Added FAQ about support on vsaas.io.
  • #47403 Fixed an issue where streams were not displaying correctly due to folder structure on multiple streams.
  • #47424 Fixed episodes_list endpoint response on long polling requests.
  • #47429 Now possible to send messages to users via API v3.
  • #47433 Now possible to see more detailed information about organizations in the user_list API v3.
  • #47468 Fixed episodes_list endpoint failures.
  • #47471 The Admin menu now opens correctly on click and no longer collapses when the cursor moves away.
  • #47475 Added a Support menu item to the old interface with minor adjustments.
  • #47503 Added flag info for support in the API v2 whoami.
  • #47544 Fixed an issue where video was missing from the camera.
  • #47545 Added an alert when no video is available because the stream is not captured by any streamer.
  • #47559 Now possible to use filters in the Organizations API v3.
  • #47589 Now possible to change presets in an organization via API v3.
  • #47646 Now possible to filter organizations by streams and users using gte and lte.
  • #47652 Now possible to change organizations in API v3.
  • #47656 Added is_domain_admin information to the Profile API v3 and ownership details to the Users API v3 for organizations.
  • #47776 Fixed token retrieval implementation in camera properties.

Исправлено

  • #42363 Fixed issues with the Admin menu not being available.
  • #44535 Now possible to update Sputnik camera firmware.
  • #44897 Fixed long reconnect intervals that caused some license plates to not be registered by video analytics.
  • #46847 Removed the count limit when searching for cameras by name.
  • #47019 Now possible to filter agents by stream title using partial match in the Agents API v3.
  • #47031 Now updating from older Watcher versions to the new ones proceeds smoothly, with the streamer remaining visible in streams.
  • #47104 Added keyboard visibility control for blank spaces.
  • #47146 Now possible to filter by organization_id in the Agents API v3.
  • #47240 Now users can view mosaics in API v3, even if they don’t have manage camera access.
  • #47353 Now, when registering a new user on vsaas.io, the account is limited to 10 streams.
  • #47355 Now the stream organization limit does not interfere with editing a stream if it is already in the organization.
  • #47359 Restored streamer selection for camera editing.
  • #47362 Now possible to change streamers in API v3 using layout.
  • #47364 Now users can edit both stream and notification settings via the Watcher Client API.
  • #47425 Updated conditions for camera auto-updating when connecting to cloud.vsaas.io.
  • #47432 Now possible to use filters in users_list by organization_id.
  • #47462 Fixed the request for adding a new camera.
  • #47693 Updated upgrade conditions for camera auto-upgrade.
  • #47722 Fixed a bug when changing the stream organization upon title update.
  • #47747 Added serial number support for device searches.
  • #47751 Fixed a camera settings activity bug in the iOS app.
  • #47755 Fixed token transmission in camera properties.

Новое

  • #47570 Layouter no longer factors in long-inactive streams when calculating potential disk usage.

Улучшено

  • #46706 Added a per-camera rate limit for generic episodes to ensure stable system operation.
  • #47264 Fixed the mechanism for sending commands to the agent in a multi-instance setup by adding Redis Pub/Sub.
  • #47341 Refactored the code responsible for node stats collection to prepare for node configurator removal.

Исправлено

  • #46541 Replaced 500 Internal Server Error status code with 499 if the client aborted a streams_list request.
  • #46909 Fixed a possible external_episodes_list internal server error caused by a panic.
  • #47350 Fixed an issue where a stream would return to the old ingest after failover if the previous ingest node had an unconfigured RAID0.
  • #47400 Added the stream_disabled option to layout.change_reason.
  • #47446 Fixed the initial layout of DVR streams.
  • #47753 Fixed a bug in the operator that prevented the migrator from starting after updating the Central resource.
  • #47807 Fixed a bug that made it impossible to lay out a stream with DVR on Inference.

January

Новое

  • #40387 Now it is possible to refetch lost DVR from an IP camera with iris firmware on it. Do not lose even a single frame!
  • #42775 Added x-originator to API calls.
  • #43397 Added support for Genlock on Dektec SDI cards.
  • #44478 Stream stats are now saved to the streams7 table.
  • #44605 Added the ability to access the chassis on a separate port.
  • #45821 Added frip muxer to our ffmpeg build.
  • #46004 Changed the mechanism of collecting telemetry of streams to Retroview.
  • #46490 DVR streaming will now read only required tracks from disk, reducing I/O on MBR streams.

Улучшено

  • #26067 Deleted obsolete dvr_only field from schemas.
  • #43548 Upgraded to Erlang 27.1.
  • #45682 Released new Retroview written in Go.
  • #46104 Fixed auto-play functionality for video and audio in the player.
  • #46519 streams7 chunks are now aggregated in a Kubernetes cluster with a single server.
  • #46729 Updated media-server-operator.

Исправлено

  • #42071 Enhanced support for OVH S3 access.
  • #42432 Now, if a disk is removed from RAID, the assigned part of the DVR will be automatically deleted.
  • #43828 It is now possible to disable asking for unknown streams on config_external server via the x-config-server-dynamic-streams=false header.
  • #45129 Fixed behavior of the thumbnail_url option that was not reconfigured on stream config edit.
  • #45466 Added workarounds for handling broken IP cameras that do not change audio timestamps.
  • #45685 Enhanced OpenTracing instrumentation for the streams_list API call.
  • #45850 Added support for ingesting from an SRT server that cannot support passing the streamid option.
  • #46209 Restored the lost inputs.stats.active field in the API, which led to an invalid input status in the UI.
  • #46259 Fixed switching the source from inactive to a good one.
  • #46315 Fixed search by stream name.
  • #46338 Enabled tracing to resolve performance issues.
  • #46387 Fixed switching sources while using the backup option.
  • #46871 Decreased mmap/munmap rate when converting DVR to HLS.

Новое

  • #43404 Added sensor data and the ability to flip the image for Iris cameras with the new firmware in the camera_config API.
  • #45163 Created a single login and registration page that requires a phone number and verification code.
  • #45410 Add login enter in vsaas.io.
  • #45661 (vsaas.io) Deployed iOS application to Apple Store.
  • #45670 (vsaas.io) Changed logo in iOS application.
  • #46035 Added add and change and delete user rights in folders in API folder_users_list folder_user_get
  • #46222 Improved permission checks for the organizations list API to better control the organizations that are given to users.

Улучшено

  • #42020 Added filtering to the camera page in the new interface.
  • #45234 Added routes for managing organizations and users in organizations.
  • #45689 Removed the dvr_info field from the stats section in the streams_list API.
  • #45933 Changed default episodes view to cards and added saving user-selected view preferences when switching tabs.
  • #46333 Added managing routes for users apikey for APIv3.
  • #46412 (vsaas.io) Deploy iOS application to App Store.
  • #46698 The dvr data is now being returned to preset.

Исправлено

  • #37883 The camera title is now correctly displaying in the navigation menu.
  • #45292 We fixed an issue with the API that caused users to not receive error messages when trying to add a stream to a folder or organization that they did not have permission to change. We have also improved the interaction logic when adding and changing streams, organizations, folders, and settings.
  • #45432 Fixed missing Info (i) icon with source codecs and tracks.
  • #45843 Fixed issue with cameras list crashes in Android application.
  • #46121 (vsaas.io) Fixed issues with previews not available on iOS.
  • #46303 Fixed an issue with installing the flussonic-watcher and watcher-standalone packages by performing a forced migration of the central database prior to launching it.
  • #46382 Fixed the appearance of the streamer and of the image on the preview stream
  • #46556 Now you can set the address where the camera is located. API: https://flussonic.ru/doc/api/watcher-client/#tag/stream/operation/stream_save.
  • #46659 Now you can edit the stream comment normally without affecting other settings.

Новое

  • #3411 Added available disk space lookup in Layouter. Now Layouter takes into account available disk space on the streamer when distributing streams.
  • #46151 Сentral layouter is now a separate process that lives in separate systemd unit.

Улучшено

  • #45875 Fixed a bug in central-operator that made it impossible to add a streamer that was outside the k8s cluster.
  • #46538 Optimized database queries to speed up streams_list request.

Исправлено

  • #46256 Fixed wrong streamer status in cluster_stats_get operation.
  • #46391 Removed deprecated change_reasons.
  • #46752 Added handling of generic episodes with equal opened_at. Now duplicated episode would not be created.
Ошибка