Что значит качество КАЖДОГО кадра в буквальном смысле? Сравнение покадрового (MJPEG) и потокового (MPEG) типов кодеков. Часть 2.

Продолжение, начало здесь.

Представляем вниманию посетителей сайта вторую часть из цикла статей от нашего давнего партнера, компании СПЕЦЛАБ, посвященную сравнению покадровых (MJPEG) и потоковых (MPEG) кодеков сжатия видео. Далее приводим текст статьи целиком, без купюр:

"Все говорят про качество кадра, но сторонники использования покадрового кодека говорят о качестве КАЖДОГО кадра.

Что это означает, можно в буквальном смысле понять, если из просмотра кино перейти к функционалу видеонаблюдения. Как только мы останавливаем КИНО (простое проигрывание видеозаписи от начала до конца) и начинаем искать нужный момент, например, кражу, то сразу же становится понятно данное выражение. В потоковых кодеках невозможно сходу попасть в нужный кадр, ведь подавляющее большинство кадров не существует в целом виде. Они лишь хранят в себе изменения относительно ключевого и предыдущих кадров. Сначала нужно просмотреть их, чтобы синтезировать нужный кадр. Именно синтезировать, т.к. его нет на диске в том виде, который вам нужен.

Говорят, что этот процесс не такой уж и трудоемкий, и сегодня компьютеры имеют достаточные мощности. Тем не менее, мало кто из разработчиков видеосистем на потоковых кодеках любит показывать процесс воспроизведения. Расстояние между ключевыми кадрами может составлять несколько сотен и даже тысяч кадров. Чем сильнее и умнее жмет кодек, тем сложнее процесс просчета каждого из кадра. Представляете, сколько нужно процессорного времени, чтобы один за другим поднимать с диска и высчитывать каждый кадр, чтобы добраться до 199-го по счету, начиная от ключевого?

А теперь представьте, если вы хотите проигрывать не один, а сразу 16 каналов видеозаписей! Или больше. Или как вы себе представляете просмотр архива? Каждый канал из 100 камер будете смотреть отдельно, растрачивая на это в 100 раз больше и так не краткого времени? Про системы с потоковыми кодеками говорят: когда включается воспроизведение, видеонаблюдение умирает.

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

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

Но всё вышесказанное относится только к серьезным (не значит, что известным) системам видеоконтроля, которые всё это делают. Как ни странно, даже подавляющее большинство разрекламированных цифровых систем видеонаблюдения выдают на просмотр лишь ту информацию, которая хранится в дельта-кадре. Получается, что вы смотрите не те изменения, которые произошли относительно ключевого кадра, а те, что произошли относительно перед ним, даже, если он находится совсем в другом месте и не имеет ничего общего с этим изображением. Получается ахинея, зато не тратятся так сильно ресурсы.

Вот поэтому всегда просите продавца показать не только видео реального времени, но и длинный кусок архивной видеозаписи. И желательно в мультэкранном режиме – сразу с нескольких камер, например 10-и. Обязательно проверьте, что вам показывают не пустую стену (повторяющийся кадр), а активное движение. Ну, и т.к. все рекламируют триплекс, убедитесь, что не была остановлена текущая запись по видеокамерам. И, если вас еще не выгнали, не стесняйтесь – сделайте несколько видео переходов вперед-назад.

Оцените качество картинки каждого кадра, а также засеките время, которое компьютер будет в ступоре во время этих переходов. Ну, и проверьте, что было с видеозаписью в то время, что вы занимались просмотром. Записала ли эта система хоть что-нибудь и с какой скоростью?

Важное замечание: При просмотре архива перемещайте ползунок как на большие участки записи, так и на длину одного кадра, чтобы убедиться, что программа не подставляет вам ближайший ключевой кадр, а позиционирует именно в тот временной момент, куда вы хотите попасть. Если же при попытке отмотать один-два кадра плеер увел вас на 10-100 кадров в этом направлении, то это не обман зрения, это технологический прием разработчика, придумавшего способ скрыть тормоза. Вот только подойдет ли такой прием вашей безопасности? Если только повесить табличку: «Просьба все криминальные действия проводить медленно или с повтором!»

Но это только начало, теперь внимательно присмотритесь к картинкам. Межкадровое сжатие основывается на алгоритмах предсказания и даже при верном своем просчете может показать несусветную галиматью. Но об этом в следующий раз. В общем, потоковые кодеки были созданы и больше подходят для просмотра кинофильмов, где ни у кого не возникает желания перематывать туда-сюда в поисках нужного кадра. Где при этом никто не смотрит сразу 16 видеофильмов на одном компьютере. И не ведет одновременную запись таких же фильмов на тот же диск.

А что покадровые кодеки? А про них нечего сказать, у них нет ни предсказаний, ни межкадровой информации, нуждающейся в пересчетах. Покадровые кодеки всегда выдают чистый полный кадр в любом месте видеозаписи. Не требуют специальных просчетов процессора. Вот поэтому они и считаются не киношными, а профессиональными – пригодными для видеонаблюдения.

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

Вот и все, других недостатков нет, хотя и ходят слухи про экономию сети, но мы их развеем в следующей статье.

Кодеки MJPEG и MPEG - наглядная схема отличия

С оригинальным материалом "Что значит качество КАЖДОГО кадра в буквальном смысле? Сравнение покадрового (MJPEG) и потокового (MPEG) типов кодеков. Часть 2." можно ознакомиться на сайте СПЕЦЛАБ.