Cтало возможным видеонаблюдение на базе H.264

Cтало возможным видеонаблюдение на базе H.264

Дата публикации: 26.04.2019

Аппаратная поддержка H.264/265. Раньше все только имитировали.

Не видеонаблюдение, а только видеозапись почти все ведут в полном разрешении H.264, скромно упуская тот момент, что просмотр и анализ строится на сильно уменьшенном потоке.

Запустите хотя бы один фильм в 4K на своём ПК. Или 2 видеоролика в Full HD. Или 4 в HD. Тормозят и разваливаются они не только в плеерах, программы по видеонаблюдению не привносят магии, они тоже используют стандартные аппаратные средства компьютера. Это значит, что ваши многомегапиксельные камеры только пишутся в своих форматах, а анализ и просмотр идет в уменьшенном виде.

Естественно, все разработчики давно построились под эти проблемы, искусно скрывая суть. Если увеличить одну камеру, то она будет показывать высокое разрешение. А все увеличивать, вроде как и смысла нет. Только вот для качественной работы видеоаналитики, нейросетей и СБИЛ нужны достойные размеры кадров постоянно и сразу для всех.

Но H.264 – тяжелый кодек, разжать его в высоком разрешении – высоко нагрузочная задача. И мы никак не уменьшим её. Тем не менее, можем перераспределить. Расчет алгоритмов стандартно ведется на центральном процессоре – он, хоть и мощный, но не справляется с большим числом потоков видео. А в современных комплектующих существует множество аппаратных средств многопотокового процессинга, которые обычно не задействованы, если вы не играете в мощные игрушки.

Это и видеоадаптеры, и чипы мат. плат, и даже в самих ЦП идёт поддержка ускорения для встроек Intel и видеокарт AMD в режимах DXVA2 и D3D11VA. По сути, программисты Спецлаб перелопатили все современные «расширения» и создали пакет технологий, позволяющий производить распаковку H.264 на их базе, высвобождая ресурсы ЦП.

Естественно, на каждой железяке своя примочка, поэтому нам приходится тратить на такую поддержку много ресурсов, но Спецлаб традиционно выжимает мощности компьютера по максимуму. На сегодняшний день мы используем 3 варианта:

- DXVA2 (устоявшаяся технология, обеспечивающая наилучшую совместимость с ОС и железом, но подходит только для сетевого клиента),

- D3D11VA,

- NVIDIA CUVID (она же NVDEC).

И этот процесс постоянно совершенствуется.

Эффект распространяется на просмотр живого видео, просмотр записей, панель «Внимание!». Лимит зависит от конкретной видеокарты. Например, одна из самых простых карт Quadro K620 (с низко производительным ГП образца 2014-ого года) вытягивает до 30 Full HD/25fps. На Geforce 1060 в 1,5 раза больше. На Quadro в 2. Кроме того, возможно использование сразу нескольких видеокарт.

Но мы столкнулись и с тем, что не все IP-камеры одинаково выдают потоки H.264 – с некоторыми это ускорение идет некорректно, и это сразу проявляется. Тем не менее, в большинстве своем такая технология отлично приживается, выдавая отличные показатели. Просто нужно тестировать камеры перед покупкой!

H264

Три пробиваем, 5 в уме
«Видео-касса». Записываем все расхождения чеков с проданным товаром
Размножение ресурсов
Мультипликатор. Как подключить много клиентов к одной и той же камере?