Работа с Н264-камерами: Как снизить нагрузку на процессор в программе для видеонаблюдения Xeoma
Читайте также: о природе технологии dual streaming
Читайте также: практическая информация о dual streaming в Xeoma
Читайте также: Все методы снижения нагрузки на процессор: инструкция
Если вы используете H264 (rtsp) камеру и хотите снизить нагрузку на процессор, вы можете воспользоваться возможностью сохранять видео в архив без перекодировки.
Если вы используете H264 (rtsp) камеру, вы можете получать многопиксельную картинку с камеры и видеть её в просмотре. Но зачастую, когда приоритетной задачей является только сохранение в архив, нет потребности получать такое хорошее качество в просмотре:
Если компьютер слабый или таких камер несколько, нагрузка может быть слишком высокой, из-за чего могут появляться искажения изображения:
Совет: искажение изображения в режиме просмотра всех камер в Xeoma может быть также вызвано слишком высоким битрейтом для потока на просмотр. Вы можете снизить битрейт в админке камеры в браузере, а Xeoma подхватит изменения.
В обоих этих случаях рекомендуем попробовать прямое сохранение записей в архив без перекодировки. Для этого нужно зайти в настройки камеры. Обычный URL для работы с rtsp (h264) камерами указывается в поле «Полный URL для IP камеры»:
Для организации прямого сохранения в архив, URL RTSP потока высокого разрешения, по которому можно получить максимальное качество, вставить в поле «Полный URL адрес RTSP (h264) видеопотока для прямого сохранения…». В обычное поле «Полный URL адрес IP камеры» вы можете вставить jpeg/mjpeg/rtsp URL для просмотра низкого разрешения (для превью и работы детекторов):
В окне просмотра вы будете видеть картинку меньшего качества.
А в архив будет сохраняться видео с максимальным качеством:
Если вы не знаете URL для потока меньшего разрешения или не хотите его использовать (просмотр не нужен совсем), можно оставить поле пустым:
Благодаря этой надписи вы будете знать, что сохранение в архив идёт без сбоев:
Даже без ссылки на просмотр, в архив будет сохраняться высококачественный поток, но это все равно снизит нагрузку на процессор.
Начиная с версии Xeoma 19.11.26, снизить нагрузку можно с помощью параметра ‘Декодировать только ключевые кадры’, который доступен в настойках модуля ‘Универсальная камера’.
Данный пункт можно отметить галочкой для декодирования только ключевых кадров (доступно только для H.264), таким образом можно снизить нагрузку на ЦП (чем выше используется разрешение для потока просмотра, тем лучше помогает данная опция снизить нагрузку на процессор). «Декодирование ключевых кадров» не применяется, если используется H.265 (он же hevc), H.264+, H.265+, MJPEG, MPEG-4.
Выберите этот пункт для снижения нагрузки на процессор от декодирования сжатых H264-потоков, декодируя только ключевые кадры. В некоторых случаях данная опция может вызвать искажение видеопотока (видео может «дёргаться»), в зависимости от заданных параметров для смены кадров камеры.
Вы можете выбрать ‘Автоматически’ для того, чтобы Xeoma сама выбирала когда нужно снижать нагрузку, включая декодирование ключевых кадров; или ‘Включено’, чтобы включить декодирование ключевых кадров на постоянной основе; или ‘Отключено’ для выключения данной опции.
Посмотреть ответы на часто задаваемые вопросы можно здесь: FAQ
1. Я выбрал ‘Декодировать только ключевые кадры’ в настройках модуля ‘Универсальная камера’ для снижения нагрузки на ЦП. Помогло — нагрузка снизилась значительно, но я не уверен какое влияние окажет эта опция на детектор движения.
2. Попросил бы подсказать настройки декодирования с целью минимизации потока от сервера к клиенту в режиме просмотра всех камер
Способы снижения потребления трафика между сервером и клиентом:
1) На сервере заходим в Главное меню -> Удалённый доступ -> Пользователи и ставим галочку Принудительное декодирование видео на клиенте — так по сети от сервера к клиенту будет идти сжатый поток.
2) На клиенте используем вкладки для распределения камер — нагрузка на сеть идёт только с тех камер, который в данный момент находятся на экране, поэтому несколько вкладок с меньшим числом камер потребляют меньше трафика, чем все камеры на экране одновременно.
3) На клиенте в Меню просмотра -> Настройки декодирования ставим 0 для бегунка Максимальное количество камер, для которых будет отображаться поток высокого разрешения — так при наличии нескольких камер на экране на клиент будет передаваться только поток для просмотра, он обычно потребляет меньше трафика, чем архивный поток.
4) (если не используется пункт 1) На клиенте в Меню просмотра -> Настройки декодирования ставим Включено в графе Декодирование видео на клиенте при просмотре в реальном времени.
5) На камерах понижаем параметры для вторичных потоков (разрешение, FPS, битрейт). Если для вторичных потоков используется MJPEG, то меняем его на H.264/H.265.
6) На камерах используем более эффективное сжатие (например, H.265/H.265+ вместо H.264).
28 апреля 2016 года
Обновлено: 14 апреля 2021 года
Читайте также:
Камеры видеонаблюдения и многопоточное видео dual streaming: что нужно знать?
Модуль “Универсальная камера” в Xeoma и его настройки