Elecard Boro - Примечания к выпускам¶
{
"last_commit": {
"date": "2024-04-03 10:22:34 UTC",
"hash": "525a187",
"describe": "2.1.5-26-g525a187"
},
"build": {
"date": "2024-04-03T10:22:44Z",
"clean repo": true,
"sphinx version": "sphinx-build 4.5.0",
"machine": "runner-pfqn1bvn-project-31-concurrent-0"
},
"note": ""
}
1. Ожидаемый выпуск¶
Ожидаемые функциональные возможности:
[зонд]
Поддержка протокола NDI и запуск задач по NDI announcement;
Поддержка анализа RTMP Push протокола;
Сниффинг существующей SRT-сессии (сниффинг SRT);
Расширение статистики по протоколу SRT;
Определение ГЦП на видеокартинке;
Восстановление ID подзадач при перезапуске задачи анализа OTT сервиса.
[сервер]
Пагинация рабочих видов;
Уменьшение времени отклика рабочих видов;
Выбор Алармов, состояний и событий, которые должны отображаться на LiveView;
График загрузки сегментов и таймингов (TTFB, DNS Lookup, TCP Connection);
Возможность блокировки определенных алармов (например по PID);
Анализ структуры потока на соответствие шаблону PSI.
[новые продукты]
Boro VoD — продукт для проверки файлов на соответствие установленному шаблону и оценки качества восприятия (QoE). Применяется в качестве модуля, который устанавливается после файлового транскодера, для валидации всего выпускаемого контента;
Boro Gate — продукт для объединения нескольких установленных Boro Solution в единую систему. Предполагает централизованное управление аккаунтами пользователей, коллекционирование алармов и единый BlockView для всей системы. При этом Boro Gate является единой точкой входа пользователей. Данная архитектура позволяет связать независимые Boro Solution, расположенные в макрорегионах, и имеет повышенную отказоустойчивость, чем реализация с единым центральным сервером. Кроме этого, при отсутствии связи между объектами Boro Solution, находящийся в изолированном регионе, будет сохранять полную функциональность.
2. Актуальные версии¶
Выпуск 2.1¶
Внимание
При обновлении зонда через веб-интерфейс на более новые версии возможно зависание процесса зонда с загрузкой одного ядра до 100%. Необходимо принудительно завершить приложение зонда и обновить зонд из консоли командой ./streamMonitor -u
.
ПОСЛЕДНЯЯ СБОРКА
2.1.9 (2024.03.27 11:00:09 UTC) [История изменений]
ТРЕБОВАНИЯ
Операционная система:Windows 7/8/8.1/10/11 64 bit, Server 2008/2012 64 bit.Linux 64bit + glibc-2.17 (December 2012: Ubuntu 13.04, Debian 8, RHEL 7, CentOS 7) и выше.Исходящий трафик:53/TCP/UDP (обязательный) - DNS;443/TCP (обязательный) – коммуникация зонда с сервером;8443/TCP (обязательный, по умолчанию) – коммуникация зонда с сервером для Boro Solution;3478/UDP, 19302/UDP – скачивание записей (WebRTC);162/UDP (по умолчанию) – SNMP trap оповещение.
НОВЫЕ ВОЗМОЖНОСТИ
- Новый вид KpiView. Предназначен для вывода статистики по ошибкам для всех наблюдаемых потоков и планирования регулярных отчетов о качестве сервиса;
Вкладка Health представляет собой отчет в реальном времени о качестве предоставляемых сервисов в виде таблицы. В статистике представлены следующие ключевые метрики: Потери, Доступность сервиса, Отсутствие сигнала, Статистика срабатывания Алармов, Активные Алармы. Статистика отображается за последние 24 часа и за последние 15 минут. Данный вид позволяет оперативно оценить состояние каждого сервиса без перехода к другим видам или журналам, а также посмотреть тренд доступности сервиса;
Доступность сервиса (Service availability) - новый параметр, регистрируемый системой Boro. Выражается в процентном отношении времени безотказной работы (за время наблюдения) к длительности мониторинга. Метрика базируется на стандарте SCTE 168-6. Для регистрация отказов применяется понятие «секунд-ошибок» – секунд, в которых произошла по крайней мере одна ошибка. Триггеры, которые будут влиять на доступность сервиса вынесены в отдельный профиль. Пользователь самостоятельно выбирает из профиля набор триггеров, которые будут регистрироваться системой;
Графики Availability доступны на вкладке KpiView ➝ Health. Мини-график тренда доступности отображает изменение общей доступности сервиса за последние 24 часа мониторинга. Одно деление соответствует 2 часам. Цвет деления соответствует цветовой карте Уровней Доступности, заданной в разделе KPI ➝ Доступность сервиса. При клике на мини-график открывается окно с детализацией за каждые 15 минут;
Вкладка Reports позволяет планировать регулярные отчеты о качестве предоставляемого сервиса. В отчет можно включать все параметры, доступные на вкладке Health. Отчет может быть как разовым (за выбранный пользователем период), так и регулярным за предыдущий день или неделю;
Автоматическая выгрузка отчетов о качестве сервиса на FTP/SFTP сервер (только для Boro Solution).
Новый вид BlockView. Предназначен для компактного отображения всех сервисов. При минимальном масштабе блоков вид вмещает более 1000 задач на экране с разрешением 1920x1080. Доступно несколько фиксированных масштабов блоков. Как и на MosaicView может применяться консолидация потоков. Реализован режим ранжирования блоков в зависимости от уровня ошибки;
- Поддержка протокола SRT. Зонд принимает потоки по протоколу SRT в режимах: Listener, Caller и Rendezvous. Все режимы поддерживают одновременный прием нескольких потоков. Реализована поддержка шифрования;
Реализована поддержка записи SRT потоков в формате MPEG-TS;
Добавлено новое событие Задача не имеет подзадач для OTT и SRT протоколов. Срабатывает, когда задача анализа SRT потока имеет только Мастер-задачу и не содержит ни одной подзадачи.
Масштабирование графиков на странице задачи. Реализованы фиксированные масштабы: 3min(live), 30min, 3h, 8h, 2d и 4d. Для метрик: Мгновенная громкость, Кратковременная громкость, Входящий битрейт, IAT и DF реализовано измерение min/avg/max значений на интервалах. Переключатель масштабов и панель навигации реализованы в виде плавающей панели, что позволяет избежать дополнительных прокруток страницы;
Проверка на соответствие потока стандарту TR 101290 2nd and 3rd priority. Реализованы триггеры на каждое событие и лампочки на странице задачи с дополнительной информацией об ошибке при наведении курсора на активную ошибку. Для триггера Ошибка повторения PCR реализовано два порога на выбор пользователя: 40 и 100 ms. При проверке третьего приоритета реализован механизм автоматического определения типа системы доставки (влияет на допустимые временные интервалы доставки таблиц);
Парсинг и отображение следующих таблиц транспортного потока: SDT, BAT и NIT;
Добавлена возможность исключения медиатипов и PID элементарных потоков из регистрации Ошибок PID, Ошибок CC и Разрывов меток синхронизации. Пользователь задает список в десятичном или шестнадцатеричном формате через запятую;
Добавлены новые триггеры: Вставка рекламного блока SCTE-35 отсутствует - срабатывает, когда зонд в течение установленного времени не обнаруживает начало вставки рекламного блока в программу; Метки SCTE-35 не найдены в плейлисте - срабатывает, когда зонд в течение установленного времени не обнаруживает начало вставки рекламного блока в программу;
Добавлен триггер Длительность сегмента превышает TARGETDURATION - срабатывает, когда длительность сегмента превышает целевую длительность EXT-X-TARGETDURATION, заявленную в Медиа-плейлисте;
Отображение максимальных значений PCR accuracy и PCR Interval в окне Info в PSI таблице;
Отображение наличия EMM/ECM в PSI таблице;
Выгрузка содержимого вида TableView и PSI таблицы в окне Info в xls-файл;
Реализовано автоматическое назначение профилей. Связка профиль - тип задачи настраивается пользователем. При создании задачи в Web-интерфейсе ей будут автоматически назначены профили порогов, оповещения и записи в зависимости от протокола;
Расширено содержимое Webhook сообщения для протоколов OTT и SRT. Добавлены поля, передающие URI подзадачи и ее описание. А также добавлены ссылки, ведущие в систему Boro: ссылка на родительскую задачу, ссылка на дочернюю задачу анализа медиа-представления и ссылка на страницу с профилем Webhook;
В сообщение SNMP добавлено название программы, в которой произошла ошибка;
На эскизы на странице задачи накладывается время их захвата и PTS кадра. Кроме этого, добавлено принудительное создание эскиза при входе и выходе из рекламы;
Пользовательские параметры HTTP-запроса теперь можно отправлять как в секции HTTP-заголовков, так и в URL (Query String Parameter);
Добавлено сохранение HTTP-заголовков, когда зонд не может скачать тот или иной объект;
- Повышена дружелюбность интерфейса:
Выбор вида, который открывается по умолчанию при входе в проект;
Выбор журнала, загружаемого на странице задачи по умолчанию;
Улучшение журнала событий на странице задачи (для IPTV задач). Для каждого из событий выделена ключевая информация, однако при этом сохраняется возможность просмотра полного json-сообщения. Для каждого события добавлены действия копирования, сохранения в файл и форматированного вывода;
Добавлено имя программы при регистрации событий в журнале Алармов;
Тултипы c информацией о метках вставки на графике рекламы;
Форматированный вывод в окне просмотра DASH-манифеста;
В журнале Алармов добавлено объединение записей об активных состояниях, если они принадлежат одному и тому же потоку и типу триггера;
На странице задачи в настройках добавлена возможность скрывать неиспользуемые графики;
Все виды внешних оповещений могут быть приостановлены на определенный период тишины;
Реализована единообразная активация профилей внешних оповещений и записи. Добавлены индикаторы активности профилей;
Добавлена возможность выбора получателей, которым будет приходить уведомления о балансе проекта. Ранее такие оповещения приходили только владельцу проекта.
Добавлено принудительное создание эскизов при входе и выходе из рекламного блока, если захват разрешен для периода действия рекламы;
Добавлена поддержка анализа меток SCTE-35 в HLS, когда в качестве контейнера сегментов используется формат fmp4.
ИЗВЕСТНЫЕ ПРОБЛЕМЫ
При обновлении версии зонда с предыдущих версий (1.7.x и 2.0.x) на новую версию (2.1.x) все задачи будут запущены «как новые», при этом все настройки задач сохраняются;
Ложные CC-ошибки, которые не подтверждаются на графике MLR, когда зонд и вещание запущены на одной Linux машине. Проблема решается включением технологии Receive Packet Steering на Linux машине, обратитесь в техническую поддержку;
Ложные CC-ошибки при высокой нагрузке на Linux машине, которые не подтверждаются на графике MLR (зонд и вещание на разных машинах). Требуется тюнинг входных буферов зонда и операционной системы, обратитесь в техническую поддержку.
3. История изменений¶
Выпуск 2.1¶
2.1.9 (2024.03.27 11:00:09 UTC)
[исправления]
Не приходит оповещение о выходе из рекламы, если время выхода попадает на момент, когда поток находится в состоянии Ошибка источника (даже в случае кратковременного состояния);
Зонд формирует некорректный URL для скачивания сегмента, если в теге <BASEURL> указана абсолютная ссылка на манифест;
Не создаются эскизы потоков, которые закодированы кодеком MPEG2 в специфичном формате;
Ложная ошибка парсинга SCTE-35 метки, когда длина дескриптора segmentation указана с учетом полей sub_segment_num и sub_segments_expected, независимо от значения поля segmentation_type_id;
Некорректный расчет индексов HLS сегментов в результате использования 32-битной переменной для хранения номеров EXT-X-MEDIA-SEQUENCE. Переменная переполнялась, когда индекс превышал 32 бита;
Падает задача анализа, если закодированный кодеком H264 поток содержит некорректные SEI заголовки;
Ложное определение ошибки PAT, когда секция данной таблицы передается в нескольких транспортных пакетах (таблица не входит в один пакет).
2.1.8 (2023.12.07 03:34:24 UTC)
[исправления]
В запись DASH-сервиса не попадает файл манифеста (MPD-файл) во всех режимах анализа;
Зонд приостанавливает скачивание сегментов, когда встречает в плейлисте сегмент с некорректно большой длительностью. Также в таком случае зонд не определяет состояние Ошибка источника, когда производится анализ только определенного медиапредставления. При этом зонд определяет ошибку Некорректная длительность сегмента;
Если обновленный Мастер-плейлист содержит нулевой BANDWIDTH для вариантов потока, зонд может разорвать связь Мастер-задачи и ее подзадач, в результате чего подзадачи некорректно отображаются в интерфейсе;
Падает задача анализа OTT, когда длина URI превышает 255 символов. В зонде расширено ограничение на длину URI;
Ложное определение ошибки CAT;
Некорректное определение выхода из рекламы для SCTE-35 меток с auto-return = true для HLS сервисов с сегментами в формате fMP4. Зонд генерирует выход из рекламы в ту же секунду, как принимает метку;
Падает задача анализа звука в формате AAC для OTT-сервиса с сегментами в формате fMP4 при использовании аудиодекодера FFmpeg;
В запись OTT-сервиса не попадают плейлисты, когда запись инициируется триггером Неизменяющийся плейлист;
Зонд формирует некорректные URI для скачивания сегментов, когда в качестве главного BaseURL указана абсолютная ссылка до манифеста (MPD-файла);
Зонд не отправляет уведомления (Webhook, Email и др.) и не регистрирует запись в Alarm журнале о входе/выходе в рекламу, если в момент входа/выхода регистрируется состояние Ошибка источника (нет сигнала);
Если вставка рекламы одновременно инициируется SCTE-35 меткой из плейлиста и меткой транспортного потока, то на графике рекламы будет отображаться некорректная информация о состоянии вставки;
Существенная утечка оперативной памяти, когда HTTP-сервер возвращает ошибку 404 при попытке скачивания init-сегмента. Зонд слишком часто осуществляет попытки скачивания init-сегмента (десятки раз в секунду). Добавлен тайм-аут между попытками скачивания init-сегмента и установлено ограничение на количество сохраняемых HTTP-заголовков (40 шт.), остальные заголовки обрезаются.
2.1.7 (2023.05.25 07:06:24 UTC)
[исправления]
Некорректный анализ QoS в результате неправильной работы алгоритма поиска старт-кодов в PES-потоке. Также существует угроза выхода за массив выделенной памяти в рамках одного процесса;
Иногда задача падает при использовании аудио и видео декодеров;
Падает задача анализа сегмента в формате fmp4, когда сегмент содержит некорректные данные в MDAT;
Не работает настройка Смещение начала анализа HLS.
2.1.6 (2023.05.15 05:59:22 UTC)
Предупреждение
В данной версии были обнаружены критические ошибки, которые приводят к тому, что зонд может некорректно анализировать параметры QoS для аудио и видео. Также возможен некорректный доступ к памяти внутри процесса зонда. Команда Elecard не рекомендует использование данной версии. Просим вас обновить зонд на самую последнюю версию.
[новые возможности]
Добавлена поддержка анализа меток SCTE-35 в HLS, когда в качестве контейнера сегментов используется формат fmp4.
[исправления]
Ложные ошибки Разрыв меток синхронизации при анализе HLS сервиса. Часто проявляется на сервисах с Медиа-плейлистом большой глубины. Ложные ошибки вызваны сбросом данных при переполнении буфера сегментов. Буфер переполняется в результате стремления зонда выдерживать позицию анализа в плейлисте. Установленная позиция и реальная позиция анализа начинают расходиться по следующим причинам: 1) нестабильная скорость скачивания, когда сегмент загружался слишком долго и плейлист при следующем обновлении уже существенно изменился; 2) плейлист долго не обновлялся. В результате этих причин зонд начинает «жадно» скачивать недостающие сегменты, но проанализировать их в реальном времени не успевает, т.к. проблемы на сервисе приводят к постоянному накоплению сегментов. В качестве решения выбрано окно в 30 сек, в котором зонд пытается нагнать установленную позицию. Если текущая позиция анализа выходит за это окно, зонд сбрасывает закачку сегментов, которые находятся между текущей позицией и установленной и отправляет событие с ошибкой «Пропущен интервал сегментов данных…»;
Аномально высокое потребление ресурсов CPU на специфических потоках в режиме анализа только QoS. Потоки имеют высокий битрейт и содержат большое число filter units;
Ложное определение ошибки PAT, когда интервал между пакетами с PID 0x0000 был близок к значению 500мс, но не превышал его;
Утечка памяти при анализе SRT сервиса в режиме listener;
Существенный расход оперативной памяти при потере связи зонда с сервером;
Не работает исключение по медиатипу при регистрации ошибки Разрыв меток синхронизации;
На некоторых потоках перестают захватываться эскизы после выхода из рекламного блока.
2.1.5 (2023.02.08 11:46:19 UTC)
[исправления]
Delay factor (DF) не вычисляется. Зонд все время возвращает значение 1000 мс;
Ложное определение ошибки точности PCR, когда PCR метки появляются слишком часто (например в соседних транспортных пакетах);
Не определяется завершение состояния Ошибка PAT. Ошибка остается активной, хотя поток уже был восстановлен и в нем присутствуют корректные данные о PAT;
Не завершается ошибка Замирание картинки после отключения детектора Фиксация замирания Видео в настройках задачи;
Зонд не может вычислить корректный номер сегмента, когда в DASH манифесте время старта периода отличается от нуля;
Зонд не определяет, что DASH сегмент зашифрован, и пытается анализировать его контент;
Ложное срабатывание Ошибка декодирования видео на потоках с переменной частотой видео кадров (VFR);
Для SRT задачи не вычисляется IAT статистика, если в URI используется доменное имя, а не IP адрес;
Зонд формирует некорректный URI до ключа дешифрования, если в теге #EXT-X-KEY в атрибуте URI присутствуют inline-данные. Проблема актуальна для HLS протокола;
Событие завершения вставки рекламы регистрируется дважды, когда стартовая метка имеет атрибут auto_return и при этом есть дополнительная закрывающая метка указывающая на то же самое время. После исправления: метка закрытия будет игнорироваться и событие возвращения в программу будет сгенерировано единожды;
Не определяется событие вставки рекламного блока по меткам из OTT плейлиста, когда pts_adjustment не равен нулю или когда её event_id совпадает с меткой из транспортного потока;
Существенный расход оперативной памяти в процессе длительной записи потока с большим битрейтом, если пребуферизация настроена в RAM. После окончания записи память освобождается.
2.1.4 (2022.10.21 10:53:16 UTC)
[новые возможности]
Добавлено создание эскизов на границах рекламного блока, если захват разрешен для периода действия рекламы.
[исправления]
Регистрируются MLR ошибки (без CC ошибок) при анализе SRT потоков. Зонд на сетевом уровне детектировал переотправку потерянных пакетов;
Некорректное указание порта в подсказке в логе зонда, когда не удается установить соединение с сервером;
Необоснованное переключение анализа с наилучшего варианта потока на другие варианты потока (обычно на худший) при анализе HLS сервиса в режиме Player;
Падение задачи анализа на некоторых потоках в формате MPEG2, когда включается вычисление метрики EPSNR;
Отображение некорректных PTS меток на эскизах потока, когда счетчик PTS достигает определенного значения. Состояние продолжается до обнуления счетчика;
Зонд не запускает задачи анализа субтитров в формате TTML для DASH сервисов;
Иногда не сбрасывается состояние ошибки TR 101 290 Ошибка Аудио/Видео PID;
Ложные кратковременные состояния Ошибка источника (нет сигнала) при анализе HLS сервиса. Состояния появлялись на границах сегментов при очень высокой скорости скачивания;
Ложное определение CC ошибок в транспортных пакетах, в которых присутствуют некорректные значения полей в секции Adaptation field;
Ложное определение ошибки Длительность сегмента превышает TARGETDURATION, когда длительность, заявленная в EXTINF, незначительно выше. Из HLS стандарта: Длительность EXTINF каждого медиа-сегмента в плейлисте, при округлении к ближайшему целому, ОБЯЗАНА быть меньше или равна длительности TARGETDURATION;
На определенных потоках при выходе из состояния Ошибка источника (нет сигнала), задача анализа зависает и одно ядро загружается до 100%;
После определения вставки рекламы следует некорректное событие возвращения в программу при работе с метками SCTE35 из транспортного потока. Поле pts_adjustment некорректно обрабатывалось зондом.
2.1.3 (2022.06.17 06:43:11 UTC)
[исправления]
Иногда при обновлении зонда через веб-интерфейс процесс зонда зависает, одно ядро загружается до 100%. Данная проблема может возникнуть в Linux при обновлении зонда 2.1.1/2.1.2 на более новые версии;
Ошибка скачивания записи, в случае если использовано практически все выделенное пространство для хранения записи. Также проблемы со скачиванием могут возникать при одновременной записи большого числа потоков;
Не отображается числовое значение segmentaion_type_id в событии SCTE-35;
Некорректно интерпретируется SPS/PPS/SEI заголовок, если он разбивается на два или более TS-пакета;
Некорректное отображения глубины цвета (Bit depth) для видео в формате 10-bit HEVC.
Не определяется состояние Неизвестный плейлист, когда Медиа-плейлист пустой (0 байт);
Перепутаны идентификаторы подсказок для ошибок TR 101 290 Ошибка буфера и Ошибка опустошения буфера;
Ложное определение Ошибки TDT (TOT/TDT min interval) TR 101 290.
2.1.2 (2022.06.01 11:12:00 UTC)
Внимание
При обновлении зонда через веб-интерфейс на более новые версии возможно зависание процесса зонда с загрузкой одного ядра до 100%. Необходимо принудительно завершить приложение зонда и обновить зонд из консоли командой ./streamMonitor -u
.
[исправления]
В IPTV unicast задачах отсутствуют данные на графике IAT, а также не регистрируются другие Ethernet параметры;
Падение процессов зонда, если в URI задачи указано доменное имя, а не IP-адрес;
Ложное детектирование падения процессов зонда, когда выполняется перезапуск задачи OTT по достижении состояния EndOfStream;
При определенных условиях зонд может отправлять на сервер события с отрицательным приростом времени.
2.1.1 (2022.05.17 07:38:25 UTC)
[новые возможности]
- Новый вид KpiView. Предназначен для вывода статистики по ошибкам для всех наблюдаемых потоков и планирования регулярных отчетов о качестве сервиса;
Вкладка Health представляет собой отчет в реальном времени о качестве предоставляемых сервисов в виде таблицы. В статистике представлены следующие ключевые метрики: Потери, Доступность сервиса, Отсутствие сигнала, Статистика срабатывания Алармов, Активные Алармы. Статистика отображается за последние 24 часа и за последние 15 минут. Данный вид позволяет оперативно оценить состояние каждого сервиса без перехода к другим видам или журналам, а также посмотреть тренд доступности сервиса;
Доступность сервиса (Service availability) - новый параметр, регистрируемый системой Boro. Выражается в процентном отношении времени безотказной работы (за время наблюдения) к длительности мониторинга. Метрика базируется на стандарте SCTE 168-6. Для регистрация отказов применяется понятие «секунд-ошибок» – секунд, в которых произошла по крайней мере одна ошибка. Триггеры, которые будут влиять на доступность сервиса вынесены в отдельный профиль. Пользователь самостоятельно выбирает из профиля набор триггеров, которые будут регистрироваться системой;
Графики Availability доступны на вкладке KpiView ➝ Health. Мини-график тренда доступности отображает изменение общей доступности сервиса за последние 24 часа мониторинга. Одно деление соответствует 2 часам. Цвет деления соответствует цветовой карте Уровней Доступности, заданной в разделе KPI ➝ Доступность сервиса. При клике на мини-график открывается окно с детализацией за каждые 15 минут;
Вкладка Reports позволяет планировать регулярные отчеты о качестве предоставляемого сервиса. В отчет можно включать все параметры, доступные на вкладке Health. Отчет может быть как разовым (за выбранный пользователем период), так и регулярным за предыдущий день или неделю;
Автоматическая выгрузка отчетов о качестве сервиса на FTP/SFTP сервер (только для Boro Solution).
Новый вид BlockView. Предназначен для компактного отображения всех сервисов. При минимальном масштабе блоков вид вмещает более 1000 задач на экране с разрешением 1920x1080. Доступно несколько фиксированных масштабов блоков. Как и на MosaicView может применяться консолидация потоков. Реализован режим ранжирования блоков в зависимости от уровня ошибки;
- Поддержка протокола SRT. Зонд принимает потоки по протоколу SRT в режимах: Listener, Caller и Rendezvous. Все режимы поддерживают одновременный прием нескольких потоков. Реализована поддержка шифрования;
Реализована поддержка записи SRT потоков в формате MPEG-TS;
Добавлено новое событие Задача не имеет подзадач для OTT и SRT протоколов. Срабатывает, когда задача анализа SRT потока имеет только Мастер-задачу и не содержит ни одной подзадачи.
Масштабирование графиков на странице задачи. Реализованы фиксированные масштабы: 3min(live), 30min, 3h, 8h, 2d и 4d. Для метрик: Мгновенная громкость, Кратковременная громкость, Входящий битрейт, IAT и DF реализовано измерение min/avg/max значений на интервалах. Переключатель масштабов и панель навигации реализованы в виде плавающей панели, что позволяет избежать дополнительных прокруток страницы;
Проверка на соответствие потока стандарту TR 101290 2nd and 3rd priority. Реализованы триггеры на каждое событие и лампочки на странице задачи с дополнительной информацией об ошибке при наведении курсора на активную ошибку. Для триггера Ошибка повторения PCR реализовано два порога на выбор пользователя: 40 и 100 ms. При проверке третьего приоритета реализован механизм автоматического определения типа системы доставки (влияет на допустимые временные интервалы доставки таблиц);
Парсинг и отображение следующих таблиц транспортного потока: SDT, BAT и NIT;
Добавлена возможность исключения медиатипов и PID элементарных потоков из регистрации Ошибок PID, Ошибок CC и Разрывов меток синхронизации. Пользователь задает список в десятичном или шестнадцатеричном формате через запятую;
Добавлены новые триггеры: Вставка рекламного блока SCTE-35 отсутствует - срабатывает, когда зонд в течение установленного времени не обнаруживает начало вставки рекламного блока в программу; Метки SCTE-35 не найдены в плейлисте - срабатывает, когда зонд в течение установленного времени не обнаруживает начало вставки рекламного блока в программу;
Добавлен триггер Длительность сегмента превышает TARGETDURATION - срабатывает, когда длительность сегмента превышает целевую длительность EXT-X-TARGETDURATION, заявленную в Медиа-плейлисте;
Отображение максимальных значений PCR accuracy и PCR Interval в окне Info в PSI таблице;
Отображение наличия EMM/ECM в PSI таблице;
Выгрузка содержимого вида TableView и PSI таблицы в окне Info в xls-файл;
Реализовано автоматическое назначение профилей. Связка профиль - тип задачи настраивается пользователем. При создании задачи в Web-интерфейсе ей будут автоматически назначены профили порогов, оповещения и записи в зависимости от протокола;
Расширено содержимое Webhook сообщения для протоколов OTT и SRT. Добавлены поля, передающие URI подзадачи и ее описание. А также добавлены ссылки, ведущие в систему Boro: ссылка на родительскую задачу, ссылка на дочернюю задачу анализа медиа-представления и ссылка на страницу с профилем Webhook;
В сообщение SNMP добавлено название программы, в которой произошла ошибка;
На эскизы на странице задачи накладывается время их захвата и PTS кадра. Кроме этого, добавлено принудительное создание эскиза при входе и выходе из рекламы;
Пользовательские параметры HTTP-запроса теперь можно отправлять как в секции HTTP-заголовков, так и в URL (Query String Parameter);
Добавлено сохранение HTTP-заголовков, когда зонд не может скачать тот или иной объект;
- Повышена дружелюбность интерфейса:
Выбор вида, который открывается по умолчанию при входе в проект;
Выбор журнала, загружаемого на странице задачи по умолчанию;
Улучшение журнала событий на странице задачи (для IPTV задач). Для каждого из событий выделена ключевая информация, однако при этом сохраняется возможность просмотра полного json-сообщения. Для каждого события добавлены действия копирования, сохранения в файл и форматированного вывода;
Добавлено имя программы при регистрации событий в журнале Алармов;
Тултипы c информацией о метках вставки на графике рекламы;
Форматированный вывод в окне просмотра DASH-манифеста;
В журнале Алармов добавлено объединение записей об активных состояниях, если они принадлежат одному и тому же потоку и типу триггера;
На странице задачи в настройках добавлена возможность скрывать неиспользуемые графики;
Все виды внешних оповещений могут быть приостановлены на определенный период тишины;
Реализована единообразная активация профилей внешних оповещений и записи. Добавлены индикаторы активности профилей;
Добавлена возможность выбора получателей, которым будет приходить уведомления о балансе проекта. Ранее такие оповещения приходили только владельцу проекта.
[известные проблемы]
При обновлении версии зонда с предыдущих версий (1.7.x и 2.0.x) на новую версию (2.1.x) все задачи будут запущены «как новые», при этом все настройки задач сохраняются;
Ложные CC-ошибки, которые не подтверждаются на графике MLR, когда зонд и вещание запущены на одной Linux машине. Проблема решается включением технологии Receive Packet Steering на Linux машине, обратитесь в техническую поддержку;
Ложные CC-ошибки при высокой нагрузке на Linux машине, которые не подтверждаются на графике MLR (зонд и вещание на разных машинах). Требуется тюнинг входных буферов зонда и операционной системы, обратитесь в техническую поддержку.
Выпуск 2.0¶
Важно
- IPTV: каждая программа в транспортном потоке создает один поток данных на сервер.
- OTT сервисы в режиме анализа всех альтернатив медиа-данных:HLS: каждый вариант потока (Variant Stream) создает один поток данных;DASH: каждое представление видео потока (Video Representation) создает один поток данных.
- OTT сервисы в режиме анализа Плеер: один OTT сервис создает один поток данных. (В режиме Плеер анализируется поток с наибольшим битрейтом, который позволяет закачивать сеть в текущий момент времени, как в HLS медиаплеере).
ПОСЛЕДНЯЯ СБОРКА
2.0.7 (2022.04.13 06:54:36 UTC)
ТРЕБОВАНИЯ
Операционная система:Windows 7/8/8.1/10/11 64 bit, Server 2008/2012 64 bit.Linux 64bit + glibc-2.17 (December 2012: Ubuntu 13.04, Debian 8, RHEL 7, CentOS 7) и выше.Исходящий трафик:53/TCP/UDP (обязательный) - DNS;443/TCP (обязательный) – коммуникация зонда с сервером;8443/TCP (обязательный, по умолчанию) – коммуникация зонда с сервером для Boro Solution;3478/UDP, 19302/UDP – скачивание записей (WebRTC);162/UDP (по умолчанию) – SNMP trap оповещение.
НОВЫЕ ВОЗМОЖНОСТИ
Реализована поддержка протокола MPEG-DASH. Протокол DASH имеет большое количество вариантов формирования плейлистов, большинство из них уже поддерживается зондом. Если зонд не поддерживает ваш формат манифеста, пожалуйста, сообщите в отдел технической поддержки: tsup@elecard.com;
Большинство OTT триггеров адаптировано для работы с MPEG-DASH. Триггеры, несовместимые с DASH, помечены в интерфейсе «Только HLS»;
Реализована запись MPEG-DASH сервисов;
Реализована возможность скачивания записей (автоматических и ручных) в формате Pcap. Поддерживается только для IPTV-вещания (протоколы UDP/RTP);
Существенно переработана система автоматической записи. Теперь запись может быть инициирована любым из триггеров. Как и система оповещения, запись получила свой раздел на странице Журналы оповещений и записей;
Реализована возможность синхронной записи в нескольких задачах. Срабатывание триггера инициирует запись сразу в нескольких связанных задачах (зондах). Например, таким образом можно сделать автоматическую запись входа и выхода транскодера по преднастроенному триггеру ошибки;
Реализована поддержка Akamai Token authentication и Akamai Media Encryption;
Добавлена возможность назначать несколько профилей оповещения одного типа (за исключением ALARM оповещения);
Подсчет количества и длительности ошибок каждого приоритета (сработавших триггеров) на интервалах в 15 минут и 24 часа;
Новый алгоритм параллельного скачивания сегментов и обновления плейлистов, что снижает вероятность определения Ошибки источника сигнала при низкой скорости закачки и значительном размере манифеста;
Добавлена поддержка файлов cookies;
Расширено измерение времен работы по HTTP/HTTPS. Помимо общего времени скачивания и TTFB, регистрируются времена DNS lookup и TCP connection;
- Реализована возможность задать смещение анализа OTT. В зависимости от типа протокола, смещение можно указать в секундах, процентах или выбрать смещение по умолчанию.Для анализа VoD (static) контента теперь необходимо специально задавать анализ всего плейлиста. Для удобства пользователей добавлен новый профиль порогов OTT-VoD, который появляется в новых проектах по умолчанию, и преднастроен специально для анализа VoD;
Добавлена возможность выбора периода обновления Мастер-плейлиста;
Добавлено новое событие Ошибка CRC из второго приоритета TR 101 290;
Расширены возможности детектора Некорректное разрешение варианта потока: определяется несоответствие разрешения диапазону 16..65536 и регистрируется отсутствие одного из измерений разрешения (высота/ширина) в манифесте;
Добавлены новые системные события: Предупреждение утилизации RAM, Нехватка RAM, Предупреждение использования CPU и Чрезмерное использование CPU;
Улучшена работа с журналами оповещений, появилась возможность поставить обновление журнала на паузу;
Добавлен журнал обновления зонда;
Для OTT задач на странице Manifest добавлена вкладка Service Alarms, которая суммирует информацию о сработавших триггерах в подзадачах всего сервиса;
Добавлена система сообщений и триггер для события, когда зонд не может получить доступ к папке
./record
или к ее подпапкам. Обычно ошибка возникает, когда зонд сначала был запущен от суперпользователя, а затем от имени пользователя с обычными правами;Добавлен альтернативный метод скачивания HTTP-заголовков для оценки доступности сегментов: Range — выполняется запрос методом HTTP GET с указанием диапазона скачивания (HTTP range requests) равным 1 байту. Ранее применялся только метод Head.
ИЗВЕСТНЫЕ ПРОБЛЕМЫ
Зонд может осуществлять записи большого размера, но не позволяет скачать запись размером более 2047 Мбайт;
Нестабильный анализ некоторых AAC потоков. Проблема решается путем использования альтернативного декодера, обратитесь в техническую поддержку;
Ложные CC-ошибки, которые не подтверждаются на графике MLR, когда зонд и вещание запущены на одной Linux машине. Проблема решается включением технологии Receive Packet Steering на Linux машине, обратитесь в техническую поддержку;
Ложные CC-ошибки при высокой нагрузке на Linux машине, которые не подтверждаются на графике MLR (зонд и вещание на разных машинах). Требуется тюнинг входных буферов зонда и операционной системы, обратитесь в техническую поддержку.
2.0.7 (2022.04.13 06:54:36 UTC)
[исправления]
Не срабатывает триггер Мало сегментов в плейлисте в режиме Auto, когда в плейлисте нет ни одного сегмента;
Дублирование состояния Ошибка загрузки плейлиста, когда в качестве URI задачи указана ссылка на Медиа-плейлист;
Редко: Утечка памяти в буфере перед декодером;
Скачкообразная большая утечка памяти в OTT-DVR (Catch up) задачах;
Ложное событие Изменение описания аудиопотока при анализе определенных потоков в формате AAC.
2.0.6 (2022.02.01 12:16:42 UTC)
[новые возможности]
Добавлен альтернативный метод скачивания HTTP-заголовков для оценки доступности сегментов: Range — выполняется запрос методом HTTP GET с указанием диапазона скачивания (HTTP range requests) равным 1 байту. Ранее применялся только метод Head.
[исправления]
Ложная ошибка доступа к папке с записями в Windows, когда зонд запущен как сервис;
Слишком долгий запуск зонда, если в папке с записями большое количество файлов;
Не создаются эскизы на потоке формата HEVC 1080i;
Зонд не определяет выход из рекламы, когда для выхода используется только auto_return;
Проблемы с анализом медиапредставлений в HLS сервисе, когда вариант потока и медиапредставление имеет идентичный URL;
Задача анализа DASH сервиса зависает после смены AST и начала нумерации сегментов с 0;
Зонд не переходит на анализ варианта потока с наилучшим качеством в режиме Плеер, когда используется настройка Скачивать тело сегмента = Never. Теперь зонд в режиме Плеер будет всегда анализировать вариант потока с наилучшим качеством без попыток переключения на другие варианты, т.к. без скачивания тела сегмента невозможно рассчитать доступную полосу пропускания.
Зонд неправильно определяет версию ОС Windows 11;
Зонд не начинает закачивать сегменты медиапредставлений, при смене типа плейлиста с VoD на Live;
Определяется изменяющееся значение declaredFPS, в то время как оно должно быть постоянным;
Перестают скачиваться сегменты и при этом не регистрируется ошибка Нет сигнала, когда на машине с Linux системное время переводят назад;
Зонд пропадает в web-интерфейсе, когда на машине с Windows системное время переводят назад.
[известные проблемы]
Нестабильный анализ некоторых AAC потоков. Проблема решается путем использования альтернативного декодера, обратитесь в техническую поддержку;
Ложные CC-ошибки, которые не подтверждаются на графике MLR, когда зонд и вещание запущены на одной Linux машине. Проблема решается включением технологии Receive Packet Steering на Linux машине, обратитесь в техническую поддержку;
Ложные CC-ошибки при высокой нагрузке на Linux машине, которые не подтверждаются на графике MLR (зонд и вещание на разных машинах). Требуется тюнинг входных буферов зонда и операционной системы, обратитесь в техническую поддержку.
2.0.5 (2021.09.07 09:25:27 UTC)
[исправления]
Падение задачи анализа HLS сервиса (по протоколу HTTPS). Обновлена библиотека OpenSSL до версии 1.1.1;
Ложное определение расхождения длительности вставки рекламы в теге из плейлиста и в бинарной информации. В бинарной информации длительность указывается точнее;
Не высвобождается память после падения задачи анализа, пока пользователь не закроет Windows Error Reporting (WER) окно. Проблема присутствует только в Windows версии;
Ряд проблем с детектированием ошибки парсинга дескрипторов команды вставки рекламы;
Отсутствует ссылка на команду вставки, для которой зарегистрирована Ошибка распознания меток SCTE-35. В описание ошибки добавлено указание на команду вставки и источника метки;
Создаются записи нулевого размера при анализе потока с высоким битрейтом. Проблема повторяется преимущественно на Windows версии;
Не очищается папка пребуферизации (когда пребуферизация осуществляется на HDD) после падения задачи;
Размер папки record может значительно превысить установленный предел: Доступное место для записи;
Во время записи по триггеру задача может перейти в зависшее состояние. В интерфейсе не отображаются метрики и события, не обновляются эскизы, но при этом на виде LiveView отображается зеленая полоса. Задачу невозможно остановить из web-интерфейса;
При мониторинге HLS сервиса в режиме Плеер перестают анализироваться медиапредставления, на странице задачи отображается лишь вкладка Manifest. Проблема проявляется, когда после обновления Мастер-плейлиста одновременно обновляются значения всех полей BANDWIDTH и обновляются все ссылки на Медиа-плейлисты.
2.0.4 (2021.05.17 09:49:31 UTC)
[новые возможности]
Добавлена система сообщений и триггер для события, когда зонд не может получить доступ к папке
./record
или к ее подпапкам. Обычно ошибка возникает, когда зонд сначала был запущен от суперпользователя, а затем от имени пользователя с обычными правами.
[исправления]
Не запускается анализ DASH манифеста, если в ссылке явно не указано расширение .mpd;
При изменении PAT/PMT потока, задача IPTV анализа может перейти в состояние, когда перестают отображаться все графики, кроме IAT;
Иногда на старте задачи может зарегистрироваться перманентная ложная ошибка Ошибка декодирования видео и/или Ошибка декодирования аудио;
Не срабатывает триггер Ошибка PID, если в программе ни по одному из заявленных PID нет данных и нет PCR меток;
Не запускается анализ DASH сервисов с определенным форматом mp4 контейнера;
Смещение анализа DASH сервиса работает некорректно. Алгоритм управления смещением был существенно пересмотрен, описание работы можно найти в подсказке Смещение начала анализа DASH в настройках порогов;
Не запускается анализ OTT сервиса, если плейлист содержит тег #EXT-X-CUE-OUT-CONT без дополнительных параметров;
В Alarm журнале задачи иногда регистрируется событие Ошибка загрузки плейлиста без дополнительных аргументов о причине проблемы (подробностей о CURL или HTTP ошибках);
Зонд не учитывает тег <Location> при анализе DASH. В результате постоянно создаются новые сессии на сервере раздачи контента при обновлении манифеста;
Падение процесса вычисления IAT;
Зонд определяет состояние Ошибка декодирования аудио для аудио PID в котором не приходят данные. Исправление: на старте задачи зонд выставит состояние Ошибка декодирования аудио, но если данные на PID будут отсутствовать в течение Интервал Ошибки PID, тогда ошибка декодирования будет снята;
Утечка памяти в родительском процессе зонда;
При анализе сервиса HLS + mp4 в режиме Плеер при переключении варианта потока картинка декодируется с артефактами, определяется состояние Ошибка декодирования видео;
При записи сервиса HLS + mp4 в запись не попадает init-сегмент.
2.0.3 (2021.02.20 10:38:53 UTC)
[новые возможности]
Добавлено управление закачкой ключей шифрования. Можно выбрать один из трех режимов работы: отключить скачивание ключей, синхронное скачивание ключей и автоматический режим. Ранее зонд использовал только синхронный режим, при котором возникали проблемы с мониторингом, когда при запросе ключа отсутствует HTTP-ответ. Автоматический режим позволяет обойти данную проблему, сохраняя при этом проверку ключей.
[исправления]
Не всегда применяется настройка по ограничению пространства для записи на HDD. В процессе записи зонд может заполнить все свободное место в разделе жесткого диска;
Утечка HANDLE-дескрипторов в Windows версии. Проблема приводит к «зависанию» зонда и сбою ОС;
При определенных условиях не запускается пребуферизация Pcap записи до перезапуска зонда;
При определенных условиях зонд после нескольких переключений вариантов потока перестает закачивать сегменты. Проблема актуальна для анализа HLS в режиме Плеер;
При анализе потока, содержащего аудио в формате AAC, возможно ложное срабатывание триггера Изменение описания аудиопотока;
Зонд некорректно распознает значение timescale, если оно задано на уровне Adaptation Set, а не в Representation. Проблема актуальна для анализа DASH;
Возможны циклические пропуски сегментов для определенного типа MPD-файлов. Проблема актуальна для анализа DASH;
Не работает запись для определенного типа MPD-файлов. Проблема актуальна для анализа DASH.
2.0.2 (2021.01.25 08:52:09 UTC)
[исправления]
Периодически регистрируются короткие ложные события: Потеря сегментов, Ошибка источника и Разрывы меток PTS/DTS при анализе HLS сервиса;
Не работает механизм определения, что сегмент начинается с IDR кадра;
Не срабатывает триггер Фактический битрейт для HLS в режиме анализа всех вариантов потока;
При определенных условиях содержимое Медиа-плейлиста отображается в качестве Мастер-плейлиста, хотя в качестве URI задачи указана ссылка на Медиа-плейлист;
Падение задачи анализа при смене транспортного потока на входе при включенной записи с пребуферизацией в RAM;
Иногда на зонде запущенном под Linux без прав суперпользователя не удается запустить запись вручную. Создаются записи нулевого размера;
При записи транспортного потока с пребуферизацией на HDD могут появиться артефакты аналитики потока;
При запуске записи вручную иногда задача перестает принимать поток. При попытке перезапуска задачи интерфейс не отзывается. При перезапуске зонда у задачи фиксируется Сбой задачи;
Длительность записи может быть короче установленных в профиле значений;
Не регулируется частота захвата эскизов, когда в момент вставки рекламы SCTE-35 происходит смена потока (поток вставки имеет другую PSI таблицу).
2.0.1 (2020.12.07 08:10:44 UTC)
[новые возможности]
Реализована поддержка протокола MPEG-DASH. Протокол DASH имеет большое количество вариантов формирования плейлистов, большинство из них уже поддерживается зондом. Если зонд не поддерживает ваш формат манифеста, пожалуйста, сообщите в отдел технической поддержки: tsup@elecard.com;
Большинство OTT триггеров адаптировано для работы с MPEG-DASH. Триггеры, несовместимые с DASH, помечены в интерфейсе «Только HLS»;
Реализована запись MPEG-DASH сервисов;
Реализована возможность скачивания записей (автоматических и ручных) в формате Pcap. Поддерживается только для IPTV-вещания (протоколы UDP/RTP);
Существенно переработана система автоматической записи. Теперь запись может быть инициирована любым из триггеров. Как и система оповещения, запись получила свой раздел на странице Журналы оповещений и записей;
Реализована возможность синхронной записи в нескольких задачах. Срабатывание триггера инициирует запись сразу в нескольких связанных задачах (зондах). Например, таким образом можно сделать автоматическую запись входа и выхода транскодера по преднастроенному триггеру ошибки;
Реализована поддержка Akamai Token authentication и Akamai Media Encryption;
Добавлена возможность назначать несколько профилей оповещения одного типа (за исключением ALARM оповещения);
Подсчет количества и длительности ошибок каждого приоритета (сработавших триггеров) на интервалах в 15 минут и 24 часа;
Новый алгоритм параллельного скачивания сегментов и обновления плейлистов, что снижает вероятность определения Ошибки источника сигнала при низкой скорости закачки и значительном размере манифеста;
Добавлена поддержка файлов cookies;
Расширено измерение времен работы по HTTP/HTTPS. Помимо общего времени скачивания и TTFB, регистрируются времена DNS lookup и TCP connection;
- Реализована возможность задать смещение анализа OTT. В зависимости от типа протокола, смещение можно указать в секундах, процентах или выбрать смещение по умолчанию.Для анализа VoD (static) контента теперь необходимо специально задавать анализ всего плейлиста. Для удобства пользователей добавлен новый профиль порогов OTT-VoD, который появляется в новых проектах по умолчанию, и преднастроен специально для анализа VoD;
Добавлена возможность выбора периода обновления Мастер-плейлиста;
Добавлено новое событие Ошибка CRC из второго приоритета TR 101 290;
Расширены возможности детектора Некорректное разрешение варианта потока: определяется несоответствие разрешения диапазону 16..65536 и регистрируется отсутствие одного из измерений разрешения (высота/ширина) в манифесте;
Добавлены новые системные события: Предупреждение утилизации RAM, Нехватка RAM, Предупреждение использования CPU и Чрезмерное использование CPU;
Улучшена работа с журналами оповещений, появилась возможность поставить обновление журнала на паузу;
Добавлен журнал обновления зонда;
Для OTT задач на странице Manifest добавлена вкладка Service Alarms, которая суммирует информацию о сработавших триггерах в подзадачах всего сервиса.
[исправления]
Зонд определяется как нежелательное ПО встроенным антивирусным приложением Microsoft Defender и помещается в карантин;
При старте OTT задачи в режиме Плеер всегда срабатывает триггер Переключение варианта потока и триггер Событие в Медиа-плейлисте.
Выпуск 1.7¶
ПОСЛЕДНЯЯ СБОРКА
1.7.7 (2021.01.21 08:37:15 UTC)
ТРЕБОВАНИЯ
Операционная система:Windows 7/8/8.1/10 64 bit, Server 2008/2012 64 bit.Linux 64bit + glibc-2.17 (December 2012: Ubuntu 13.04, Debian 8, RHEL 7, CentOS 7) и выше.Исходящий трафик:53/TCP/UDP (обязательный) - DNS;443/TCP (обязательный) – коммуникация зонда с сервером;8443/TCP (обязательный, по умолчанию) – коммуникация зонда с сервером для Boro Solution;3478/UDP, 19302/UDP – скачивание записей (WebRTC);162/UDP (по умолчанию) – SNMP trap оповещение.
1.7.7 (2021.01.21 08:37:15 UTC)
[исправления]
Периодически регистрируются короткие ложные события: Потеря сегментов, Ошибка источника и Разрывы меток PTS/DTS при анализе HLS сервиса;
Может возникать существенная утечка памяти, когда пребуферизация записи осуществляется в RAM. Для мультикаст потоков;
Зонд не скачивает сегменты, если в плейлисте явно не указано расширение .ts или .mp4s, указывающее на тип контейнера. Добавлена проверка содержимого сегмента для определения типа контейнера. Если сегмент зашифрован - анализируется значение поля content-type;
Может возникать ложное срабатывание триггера Некорректный размер сегмента, если значение поля BANDWIDTH в Мастер-плейлисте обновляется при каждом обновлении плейлиста;
Незначительная утечка памяти в родительском процессе зонда;
При определенных условиях содержимое Медиа-плейлиста отображается в качестве Мастер-плейлиста, хотя в качестве URI задачи указана ссылка на Медиа-плейлист;
Не регулируется частота захвата эскизов, когда в момент вставки рекламы SCTE-35 происходит смена потока (поток вставки имеет другую PSI таблицу).
1.7.6 (2020.11.20 11:37:45 UTC)
[новые возможности]
Метки SCTE-35, полученные из плейлистов, регистрируются отдельным событием Метка SCTE-35 из OTT-плейлиста в журнале EVENTS. В событии регистрируется как кодированная запись из плейлиста, так и её разобранное содержимое. Если строку не удается разобрать, регистрируется событие Ошибка распознания меток SCTE-35;
Выбор с какого места в плейлисте начинать анализ. Настройка Смещение начала анализа HLS в порогах позволяет задать смещение в секундах или процентах. Для анализа VOD необходимо установить значение 100%;
Добавлено новое событие Битрейт варианта потока не задан. Регистрируется, когда в Мастер-плейлисте или манифесте в описании варианта потока отсутствует поле Bandwidth. В таком случае на анализ накладываются определенные ограничения, ознакомьтесь с соответствующей подсказкой триггера в интерфейсе Boro.
[исправления]
Ложное обнаружение Ошибки PID на потоках, в которых отсутствует PCR;
Некорректное вычисление расхода оперативной памяти RAM;
Зонд удаляет записи нулевого размера при старте;
При анализе дампа HLS (не обновляющийся плейлист) отображается битрейт только первого скачанного сегмента;
Падение процессов зонда, когда запускается Сниффер без указания целевого интерфейса;
Существенная утечка памяти, когда зонд часто регистрирует события Ошибка загрузки плейлиста;
Алгоритм определения вставки рекламы не учитывает смещение входа, заданное в метке SCTE-35;
Редко механизм измерения громкости может выдать завышенный на несколько децибел результат. После перезапуска задачи измерение становится корректным;
Зонд не начинает анализ контента обновившегося плейлиста, когда #EXT-X-MEDIA-SEQUENCE не изменяется после обновления. Например, когда начинается запись нового события: тип плейлиста меняется с VOD на EVENT, список сегментов предыдущей записи удаляется и заменяется несколькими свежими сегментами, однако #EXT-X-MEDIA-SEQUENCE остается равным 1;
Зонд останавливает анализ OTT с ошибкой CURLE_FAILED_INIT: «easy handle already used in multi handle»;
Существенный расход оперативной памяти в процессе записи, если пребуферизация настроена в RAM. После окончания записи память освобождается;
Утечка памяти при разрешенной записи, если пребуферизация настроена в RAM;
При запуске записи вручную в архив новой записи может попасть фрагмент предыдущей записи;
Зонд не сохраняет задачи и настройки задач, когда нет прав на запись в конфигурационный файл monitor.cfg;
При смене анализируемого входного потока на другой поток, информация о программе в PSI таблице не обновляется, если номер программы совпадает.
[известные проблемы]
В момент начала и остановки записи регистрируются ложные MLR. Вероятность ошибки прямо пропорциональна нагрузке на сетевой адаптер.
1.7.5 (2020.07.09 07:25:05 UTC)
[новые возможности]
Поддержка анализа HLS сервисов, в которых при каждом запросе Мастер-плейлиста формируются уникальные ссылки (с использованием токенов) на Медиа-плейлисты с ограниченным временем жизни. Необходимо задействовать опцию Обновлять MasterPlaylist;
Настройка периода обновления Мастер-плейлиста.
[исправления]
Состояние Предупреждение maxIAT или Ошибка maxIAT может остаться активным до перезагрузки зонда;
При определенных условиях завершения работы, задача не появляется в списке Остановленных задач;
При записи HLS сервиса циклично записывается один и тот же сегмент. Проблема возникала при наличии одинакового имени для всех файлов сегментов;
Ложное обнаружение Ошибки декодирования аудио на потоках, содержащих аудио в формате AC-3;
Ложные сообщения «buffer overflow, data skipped» в консоли зонда. Добавлена дополнительная проверка на переполнение буфера;
Ложное перманентное обнаружение PMT ошибки на SIT таблице (PID 0x001F);
Сообщение в Ошибке загрузки плейлиста содержит некорректные символы (illegal/malformed utf-8);
При определенных условиях в режиме анализа Плеер, задача анализа HLS сервиса останавливается после выхода из состояния Ошибка источника (нет сигнала).
[известные проблемы]
Некорректное сообщение «Подзадача остановлена. Мастер-плейлист (манифест) существенно изменился.» при завершении подзадач анализа аудио и субтитров, когда зонд работает в режиме Плеер и происходит переключение варианта потока. Решение проблемы появится в версии 2.0.
1.7.4 (2020.06.18 12:03:14 UTC)
[исправления]
Зонд присылает зеленые эскизы, и регистрируется постоянное состояние замирания картинки на некоторых видеопотоках в формате MPEG2;
Некорректная остановка задачи при завершении анализа HLS VoD сервиса (в режиме анализа всех вариантов потока);
Если первой задачей анализа был RTP поток, то для следующих запускаемых задач не будут отображаться Ethernet параметры;
Иногда при прерывающемся вещании падает процесс, отвечающий за сбор Ethernet параметров;
Ошибка парсинга нескольких дескрипторов в метках вставки рекламы SCTE35. Синтаксический анализ меток приведен в соответствие стандарту ANSI/SCTE35 2019a;
Неконтролируемое потребление CPU и падение процессов зонда. Чаще проявляется на MPTS потоках с включенными опциями QoE;
Задача не завершается командами web-интерфейса;
Отсутствуют данные на IAT графике при анализе потока из localhost интерфейса на ОС Windows 10. Для полнофункциональной работы зонда в Windows необходима установка последней версии библиотеки Npcap;
Не применяется опция Анализировать только QoS OTT параметры;
Перестают определяться пользовательские теги в HLS плейлистах после того, как зонд регистрирует обновление Мастер-плейлиста.
1.7.3 (2020.05.27 08:51:18 UTC)
[исправления]
Ложное обнаружение ошибок Разрыв меток PTS/DTS, когда включена опция Обновлять MasterPlaylist (для HLS сервисов, в которых после обновления Мастер-плейлиста обновляется значения поля BANDWIDTH и ссылки на Медиа-плейлисты). Исправление: зонд будет допускать изменение BANDWIDTH в пределах 5% без создания новой задачи;
Ложное периодическое определение замирания, когда включена опция Анализ возможности декодирования Видео в режиме Full и Интервал фиксации замирания видео равен 2с;
Не определяется Отсутствие сигнала, если зонд не смог распознать тип содержимого сегментов. Исправление: для нераспознанных сегментов зонд будет использовать базовый анализатор (уровень доставки);
Искажение графика IAT: передается два и более значений метрики в секунду;
На графике рекламы метки входа/выхода многократно повторяются. В журнале событий SCTE35 метки регистрируются корректно;
Практически полная потеря данных на графике громкости при анализе HLS сервисов, когда задача выходит из состояния Отсутствие сигнала;
Некорректная работа детектора Анализ возможности декодирования Видео в режиме Lite при анализе HLS сервисов. Корректные значения RealFPS отображаются только в начале сегментов, а затем определяется нулевая частота кадров, что приводит к ложному срабатыванию триггера;
В архиве записи HLS сервиса, в JSON-описании не регистрируется сегмент, который не удалось скачать. Ошибка скачивания сегмента в JSON-описании также не регистрируется;
В архиве записи некорректно отображается дата создания файлов;
Незначительная утечка памяти в главном процессе зонда.
1.7.2 (2020.04.29 10:03:22 UTC)
[исправления]
Ложное срабатывание триггера Отсутствие звукового сопровождения при мониторинге HLS сервиса;
Не применяется настройка Full для опции Анализ возможности декодирования Видео.
1.7.1 (2020.04.21 03:56:24 UTC)
[новые возможности]
Поддержка альтернативных медиа-данных (Alternative Renditions) в HLS версии 4-7. Поддерживаются альтернативные видео и аудио потоки, а также потоки, несущие субтитры;
Запись HLS сервиса в любом режиме анализа. Поддерживается ручная запись, запись по событиям SCTE35 и замиранию видео. Записывается полная структура сервиса: Мастер-плейлист, Медиа-плейлисты, сегменты данных и описание записи в формате JSON;
Регистрация меток вставки рекламы, передаваемых в HLS плейлистах. Поддерживается несколько стандартов: RFC8216, ANSI/SCTE35 2017, Adobe, Elemental и SCTE-35 Enhanced;
Расширено определение SCTE35 меток в транспортном потоке: регистрируются метки, передаваемые в командах SpliceInsert и TimeSignal, а также наличие команд SpliceNull и BandwidthReservation;
Определение пользовательских HLS тегов. При помощи настройки фильтров может быть зарегистрирован любой тег, появляющийся в Мастер или Медиа плейлистах;
Оповещения о событиях в проекте в мессенджер Telegram;
Импорт и экспорт конфигурации зонда в формате CSV. Допускается вставка части конфигурации в формате JSON;
Новое событие Отсутствие PCR. Регистрируется, когда в течение 1 минуты не удалось обнаружить PCR в потоке;
Новое событие Дублирование URI. Регистрируется, когда в Мастер-плейлисте для нескольких альтернатив медиа-данных или вариантов потока задан одинаковый URI;
Поддержка IGMPv3. При конфигурации задачи анализа можно указать адрес источника мультикаста;
Поддержка сжатия данных, передаваемых по протоколу HTTP (gzip);
Измерение времени до приема первого байта (TTFB) - периода между отправкой запроса на скачивание и приемом первого байта сегмента (манифеста, ключа);
Регистрация фактического IP-адреса (после разрешения имени и перенаправления до последнего адреса), откуда были получены файлы OTT сервиса (плейлисты, сегменты, ключи);
Настройка интервала захвата эскизов в период замирания потока. Появилась возможность захвата только первого и последнего кадра периода, а также захват каждого ключевого кадра;
В сообщения SNMP Trap добавлены поля идентификации: sequenceId - идентификационный номер сообщения; referenceNumber - референсный номер сообщения, предназначенный для связывания сообщений о возникновении ошибки и ее завершении;
Существенно улучшена скорость доступа к журналу событий задачи;
Улучшена работа с конфигурациями, сохраняемыми непосредственно на сервере: добавлена возможность редактирования и пересохранения конфигурации;
Улучшено отображение событий изменения PSI, Видео и Аудио заголовков в журнале событий задачи и в e-mail-уведомлениях. Разница между текущим и предыдущим состояниями отображается в цвете;
На странице TableView добавлено отображение полезного битрейта (без учета нулевых пакетов и пакетов, помеченных флагом TEI) и суммарного битрейта потоков, принимаемых зондом;
Экспорт страницы TableView в CSV файл. Обновление данных на странице TableView может быть приостановлено для изучения.
[исправления]
Некорректный расчет битрейта элементарных потоков HLS сервиса, если в потоке PCR были проставлены с ошибкой или метки приходят слишком редко. При анализе HLS зонд будет сразу использовать счетчики PTS/DTS вместо PCR;
Иногда становится недоступной информация о структуре потока PSI или о видео/аудио заголовках;
Некорректное отображение логических ядер в таблице загрузки CPU, когда их число превышает 64, проблема присутствует только в Windows версии.
Выпуск 1.6¶
Важно
Важно
1.06.11 (2020.02.03 02:30:08 UTC)
[новые возможности]
Новый детектор и сообщение в событии Некорректный размер сегмента: «Размер (content-length) скачанного сегмента [index] равен 0 байт».
[исправления]
Зонд отправляет статистику и события «в будущее», если произошел перезапуск задачи в момент, когда сервер был недоступен;
Существенная утечка памяти при записи потока по событию;
Циклический перезапуск задачи анализа или цветовые искажения на эскизах, захватываемых с видео потока с цветовой субдискретизацией 4:2:2;
Не определяется Ошибка источника сигнала, и не срабатывает какой-либо профильный OTT триггер, когда зонд скачивает сегменты с нулевым размером файла (content-length);
Ложное обнаружение периодических ошибок СС и Разрыв меток PTS/DTS в режиме, когда зонду указали в качестве задачи ссылку на Медиа плейлист и включена опция Обновлять MasterPlaylist.
1.06.10 (2019.12.05 08:11:43 UTC)
[новые возможности]
В качестве библиотеки захвата пакетов в ОС Windows рекомендуется использовать Npcap. При установке библиотеки необходимо выбрать опции WinPcap API-compatible Mode и Support Loopback Traffic;
В алгоритм определения меток вставки рекламы SCTE35 добавлена поддержка логирования команды time_signal().
[исправления]
На эскизах, захватываемых с видео потока в формате HEVC, присутствует логотип компании Elecard;
Зонд не отправляет на сервер содержимое некорректного плейлиста. Исправление: зонд будет отправлять до 1Кбайт содержимого некорректного плейлиста. Гарантируется доставка и отображение только текстовых данных.
1.06.9 (2019.11.12 10:36:45 UTC)
[новые возможности]
Обновлены документы Quick_Start_en.txt и Probe_as_service.txt, вкладываемые в архив зонда.
[исправления]
На эскизах, захватываемых с видео потока в формате MPEG2, присутствует логотип компании Elecard;
Ложное обнаружение ошибок Разрыв временных меток в режиме, когда зонд скачивает тело сегментов через установленный интервал;
Периодическое падение мастер задачи мониторинга OTT сервиса (вкладка General) в режиме анализа всех вариантов потока;
Не захватываются эскизы, если отключено определение Разрыва временных меток (когда значение порога Интервал разрыва временных меток равно нулю).
1.06.8 (2019.10.10 08:01:13 UTC)
[новые возможности]
Новый детектор и сообщение в событии Ошибка плейлиста: «Не удалось распознать URL сегмента в Медиа-плейлисте, или ссылка на сегмент заканчивается на .m3u8»;
Новый детектор и сообщение в событии Ошибка плейлиста: «Не удалось распознать содержимое тега #EXT-X-KEY»;
Новая опция Скачивать тело сегмента позволяет производить OTT QoS анализ без скачивания тела сегментов, что позволяет существенно сократить трафик.
[исправления]
Не определяется какая-либо ошибка при нехватке полосы скачивания HTTP progressive download сервиса. При недостаточной скорости скачивания будет регистрироваться событие Низкая скорость скачивания;
Зонд не начинает анализ HLS сервиса, если в Медиа-плейлисте указан некорректный URL сегмента или ключа. Ошибка исправлена и добавлены два новых сообщения в событие Ошибка плейлиста (см. раздел [новые возможности]);
Не удается переназначить сетевой интерфейс на автоматический (согласно таблице маршрутизации) выбор интерфейса в OTT задачах. После выбора пустого значения в поле IP сетевого интерфейса настройка появляется в конфигурации, но не применяется зондом;
Зонд не определяет Ошибку PID и Ошибку Аудио/Видео PID на потоках, в которых отсутствуют PCR метки;
Большая утечка памяти при мониторинге live OTT сервисов с большим количеством сегментов в плейлисте (Cath-Up TV). Внедрено временное решение: зонд начинает анализ OTT сервисов с 3-го сегмента от конца плейлиста.
[известные проблемы]
Зонд начинает анализ OTT сервисов с 3-го сегмента от конца плейлиста. Необходимо учитывать данное поведение при мониторинге live OTT сервисов с большим количеством сегментов в плейлисте (Cath-Up TV).
1.06.7 (2019.09.24 05:30:31 UTC)
[новые возможности]
Добавлено описание команды для установки зонда как службу системы Windows в справку командной строки:
streamMonitor.exe -R[имя_сервиса]
;В архив зонда
share/service-daemon
добавлены сценарий автоматической установки зонда как службу системы Windows BoroServiceInstall.bat и сценарий его удаления BoroServiceUninstall.bat;Добавлено новое событие Сегмент с нулевой длительностью, которое отображается при обнаружении сегмента с нулевой заявленной длительностью и размером файла менее 564 байт (три транспортных пакета);
Добавлено новое событие Некорректная длительность сегмента, которое отображается при обнаружении сегмента с заявленной длительностью в 10 раз выше или ниже оценочной длительности. Оценочная длительность рассчитывается как отношение размера сегмента к заявленному битрейту.
[исправления]
Зонд воспринимает ссылки на HLS плейлисты как HTTP progressive download сервис, если в URL отсутствует расширение M3U8;
Зонд не начинает анализ HLS сервиса, если HTTP сервер возвращает код состояния 206 Partial Content;
Вместо свежего сегмента зонд при определенных условиях скачивает и анализирует все сегменты из обновленного плейлиста;
Зонд “зависает” при двойном нажатии
Ctrl+C
в командной строке, проблема присутствует только в Windows версии;В одной задаче запускается два идентичных процесса анализа, если одновременно запустить остановленный зонд и возобновить завершенные задачи;
На графике битрейтов потока пропадают данные при анализе HLS сервиса с длительностью сегмента более минуты;
Не определяется Ошибка источника сигнала при скачивании сегмента с заявленной длительностью большей, чем действительная. Плейлист не обновляется и сегменты не скачиваются пока не выйдет время заявленной длительности сегмента. Ошибка исправлена и добавлены два события проверки заявленной длительности (см. раздел [новые возможности]);
Библиотека захвата пакетов не запускается или наоборот запускается множество таких процессов, что приводит к существенному потреблению ресурсов сервера;
Возникают ложные скачки на графике Скорость потока IPTV CBR потоков в Windows версии;
В разделе завершенных задач регистрируются задачи с пустым полем URI и статусом «Отклонена»;
При анализе HLS VoD сервисов ошибочно определяется состояние Некорректный элементарный видео поток;
Отсутствуют Ethernet параметры (IAT, SrcAddr, Mapping и др.) в задачах зонда, запущенного на сервере с большим количеством сетевых интерфейсов.
1.06.6 (2019.07.03 06:39:57 UTC)
[исправления]
Не определяется Замирание картинки на видео потоках, в которых размеры P/B кадров соизмеримы с размерами I кадров;
Появление ошибки Переполнения видео буфера Buffer overflow, data skipped! без видимых причин. Ошибка возникает с определенным интервалом;
В оповещениях не передается информация об источниках вещания (IP:MAC) при определении состояния: Несколько источников мультикаста в одной группе;
В логе запуска не отображается версия запускаемого зонда.
[новые возможности]
Пользовательские сообщения в консоли запускаемого зонда при ошибке загрузки библиотеки захвата пакетов (отображаются возможные причины и подсказки).
1.06.5 (2019.06.25 04:19:51 UTC)
[исправления]
Задача мониторинга IPTV потока может попадать в состояние, когда регистрируется Ошибка источника сигнала (нет данных), при этом IAT:MLR параметры корректно отображаются в задаче. Т.е. все Ethernet параметры отображаются корректно, а график битрейта имеет нулевые значения. Некорректное состояние задачи может сопровождаться значительным повышением потребления CPU.
1.06.4 (2019.06.03 02:58:21 UTC)
[исправления]
Повышенная нагрузка на CPU (в сравнении с выпуском 1.05) для Windows сборок;
Ложное определение Ошибки Аудио/Видео PID (ETR 101 290);
Утечка памяти при включенных Video QoE параметрах.
1.06.3 (2019.05.20 09:41:44 UTC)
[исправления]
Большая утечка памяти при мониторинге некоторых типов потоков;
В процессе мониторинга транспортного потока, содержащего некорректный элементарный поток, состояние Некорректный элементарный видео поток сбрасывается и не определяется вновь после пропадания и последующего восстановления сигнала на входе зонда;
Некорректно обрабатываются потоки, в которых несколько PMT таблиц имеют одинаковый PID. Изменена логика работы зонда с такими потоками. В описание программ (PSI событие) добавлено поле sharedPmtPid, означающее, что несколько программ определены внутри одного PID;
Изменена логика обнаружения события Ошибка декодирования видео/аудио для шифрованных потоков и потоков, содержащих некорректный элементарный видео поток. В обоих случаях выставляется состояние ошибки без попытки декодирования потока;
Ложное обнаружение СС ошибок при мониторинге некоторых типов потоков.
[более не используется]
Событие HlsBitrateDeviation (отклонение битрейта сегмента на фиксированную величину) более не регистрируется зондом. Данный параметр заменен на триггер Фактический битрейт, позволяющий устанавливать верхнюю и нижнюю границы битрейта в процентах.
1.06.2 (2019.05.06 09:16:09 UTC)
[исправления]
Утечка памяти при смене pcrPID.
[новые возможности]
Пользовательские сообщения в консоли запускаемого зонда при неудачном соединении с сервером (отображается причина ошибки).
1.06.1 (2019.04.22 06:54:13 UTC)
[новые возможности]
Регистрация изменений описания аудиопотока (изменение заголовков аудиопотока). Возможность настройки соответствующего триггера;
Возможность установки зонда как Windows сервиса;
Запись IPTV потоков;
Скачивание записей по технологии WebRTC;
Проверка возможности декодирования Аудио;
Проверка возможности декодирования Видео;
Проверка наличия аудиодорожки в программе;
Отображение декодированного аудио битрейта и частоты видео кадров;
Измерение и отображение Мгновенной (Momentary Loudness) и Кратковременной (Short-Term Loudness) громкости;
Обнаружение «Тишины» в звуковом сопровождении на основе Кратковременной громкости (Short-Term Loudness). Возможность настройки соответствующих порога и триггера;
Опциональное отключение обновления Master playlist;
Режим анализа транспортного уровня OTT (анализ скачивания файлов и анализ тела плейлистов, без анализа сегментов);
Выбор поведения анализатора при обнаружении события EndOfStream (плейлист не обновляется И все заявленные сегменты уже скачаны и проанализированы), для OTT;
Обнаружение чересстрочной развертки в видеопотоке, для OTT;
Обнаружение уменьшения количества сегментов в плейлисте (ниже установленного порога), для OTT.
[исправления]
Ложное обнаружение состояния Скорость потока ниже порога при отсутствии сигнала на входе.
[известные проблемы]
Повышенные системные требования (Linux glibc-2.27) при QoE анализе потоков с форматом HEVC. Задача запускается на операционной системе с более старой библиотекой, но декодер не будет инициализирован.
Выпуск 1.5¶
1.05.19 (2019.05.06 09:22:27 UTC)
[исправления]
Утечка памяти при смене pcrPID.
Отображение большого объема служебного лога в консоли запущенного зонда. Сократили объем отображаемого лога.
[новые возможности]
Пользовательские сообщения в консоли запускаемого зонда при успешном запуске и неудачном соединении с сервером (отображается причина ошибки).
1.05.18 (2019.04.29 09:00:45 UTC)
[исправления]
При возникновении состояния Ошибка PID и после отключения детектора (установка 0 в настройках порогов) состояние ошибки сохраняется до следующего появления данных;
Родительский процесс задачи анализа всех профилей выставляет состояние Отсутствие сигнала при запуске и не снимает его при появлении возможности успешного запуска дочерних задач анализа профилей. Профили анализируются успешно (плейлисты обновляются, сегменты скачиваются), но задача возвращает общее состояние Отсутствие сигнала;
В результате обновления библиотеки openssl в версии зонда 1.05.16 появились повышенные системные требования: glibc-2.17 и выше. В данном выпуске добавлено исправление, снижающее требования до стандартных: glibc-2.11 (для версий 1.05.xx).
Ошибка программы, возникающая в случае прерывания процесса запуска задач сигналом остановки зонда (т. е. при запуске зонда и его последующей незамедлительной остановке).
Зонд не определяет имена программ для некоторых MPTS потоков, проблема присутствовала только в Windows версии зонда.
1.05.17 (2019.03.22 08:12:53 UTC)
[выпуск не состоялся] Данная версия не прошла тестирование и не была опубликована.
1.05.16 (2019.03.22 08:12:53 UTC)
[исправления] Проблема дешифрования HLS сегментов, когда при обновлении плейлиста вектор инициализации изменяется, а URL ключа остается неизменным. Проблема приводит к периодической потере синхронизации в начале каждого сегмента (sync byte error). Относится к анализу HLS.
1.05.15 (2019.03.15 10:46:34 UTC)
[новые возможности] Принудительный перезапуск процесса задачи через 10с, в случае, когда падение потока не приводит к корректному завершению процесса.
Выпуск 1.0¶
1.00 (2016.11.01 09:09:16 UTC) - First release
Версия 0.1¶
0.01 (2014.11.07) - Initial version