Какой кодек лучше hevc или avc

Обновлено: 02.07.2024

Какой кодек стоит выбрать для видео-трансляций? По мнению руководителя отдела цифровых медиа консалтинговой компании Frost & Sullivan, Анви Рамбиа нет смысла выбирать кодек в отрыве от всей экосистемы. На конференции Streamingmedia East она анализировала сегодняшние ниши применения кодеков и перспективы изменения их рыночных позиций на ближайшие годы. Предлагаемый материалы по существу является изложением ее доклада, а пояснения и дополнения Медиа-Спутника выделены курсивом и цветом.

HEVC ?

Этот год был очень успешным в плане развития HEVC –появилось множество сервисов в 4 к , использующих это кодек . В частности, Indian Professional League, NASA, DirecTV, SwissCom, Rogers out in Canada with the National Hockey League, SkyVR with the Skycube boxes, Dish и их число продолжает расти . Цены на оборудование падают, экосистема готова , тестирование проведено, подтверждены данные по битрейтам, число внедряемых кодеров быстро растет. Другими словами, несмотря на тяжелые условия лицензирования HEVC уверенно стартовал. Лицензирование HEVC включает отчисления с каждого HEVC устройства и компрессированного в HEVC наименования видео , без верхнего предела по выплатам, а также отчисления с доходов от видео, компрессированного в HEVC.

В этом году начало также начало появляться HDR видео. Параметр HDR относится к категории «убойных приложений» . По мнению многих HD c HDR смотрится более эффектно, чем 4К безHDR. Но включение опции HDR в спецификацию AVC противятся производители телевизоров— им интересно продавать модели с экранами 4к и, а включение в формат AVC, обслуживающий HD разрешение, привлекательной опции HDR может затормозить этот процесс.

Еще одним «убойным приложением» может стать VR , также требующий значительной полосы, а следовательно и применения HEVC.

AVC?

В то же время, если стоит задача доставки видео с разрешением HD или ниже, резонов думать об использовании HEVC пока нет.

Во-первых, сегодняшние HEVC кодеры дают выигрыш не в 50 %, заявленных в рекламных буклетах, а только в 15 %. Если речь идет об ОТТ распространении , то стоимость дополнительных 15 % транспортной полосы можно компенсировать выбором более дешевого СDN . Стоимость услуг CDN за последнее время заметно упала , а вилка между верхней и нижней ценой схожего набора услуг —увеличилась.

Кроме того , AVC компрессия сегодня гарантированно совместима с любой экосистемой и с любыми вариантами обработки видео. С ней работают все плееры, DRM, Middleware, системы вставки рекламы и разные системы видео-контроля и аналитики.

И еще — кодеры HEVC пока медленные. Транскодирование в HEVC в реальном времени сегодня если и выполняется, то с неэффективной тратой компьютерных ресурсов.

А в сетях профессиональной доставки живого вещания в 4К до сих пор используются связки из четырех синхронизированных AVC кодеров, каждый из которых кодирует свой квадрант. Некоторые производители, такие как Ericsson и Imagine, уже подготовили HEVC кодеры с реально низкой задержкой. Их применение в точках формирование сигнала будет большим шагом в упрощении инфраструктуру доставки HEVC сигналов. Одновременно отрабатываются и транскодеры реального времени для формата 4K.

HEVC Оборудование

На диаграмме показаны объемы приемного оборудования с поддержкой HEVC . Как можно видеть, сейчас основную массу HEVC приемников составляют смартфоны, в основном на базе Android. HEVC включен в некоторые Android чипсеты на аппаратном уровне, и его умеет декодировать плеер DivX Mobile из Google Play. Приемных устройств другого типа с поддержкой HEVC очень мало. Apple имеет готовые наработки для iOS, но ждет ясности с условиями лицензирования. Рост числа таких устройств вероятно даст толчок более массовому внедрению HEVC , хотя неизбежна задержка, связанная со сроком жизни нынешних абонентских приемников.

Количество HEVC кодеров пока тоже мизерно. Их доля в пересчете на канал среди проданных в 2016 году кодеров составляет около 1 % . Предполагается, что эта доля ближайшие два будет удваиваться, но тем не менее останется незначительной. К слову, до сих пор продаются и даже дорабатываются кодеры MPEG-2 Причем, доходность от их продажи в этом году оказалась выше, чем от продаж AVC кодеров (видимо относительно себестоимости).

С другой стороны, надо иметь в виду, что аппаратные кодеры на ASIC сегодня сохраняют актуальность только для вещательных сетей, для ОТТ это устаревшая концепция. Поэтому большинство продаваемых последнее время кодеров реализованы программно, хотя часто с аппаратными акселераторами. В будущем они могут быть перепрограммированы не только по разрешению, но и по системе компрессии. В условиях сегодняшней неопределенности это дает необходимую гибкость выбора кодека в будущем.

В любом случае это год показал, что HEVC принят индустрией и будет постепенно будет замещать AVC . Вероятность того, что в секторе платного ТВ его перебьет другая система компрессии по мнению Анви Рамбиа сейчас очень мала.

VP9?

Напомним, что VP9 безлицензионный кодек c открытым кодом, разработанный Google. Его последняя версия была представлена в 2013 году и включена в браузеры Google Chrome и Chromium.

По оценке Анви Рамбиа VP9 для стриминга более эффективен, чем AVC, но его основная проблема в том, что он не интегрирован с DRM и соответственно не подходит для доставки премиального контента.

Приведем здесь основные выводы:

— Кодеки следующего поколения ( HEVC и VP9) обеспечивают 50% снижение битрейта по сравнению с AVC. В то же время такой результат требует в 10-20 раз больше процессорного времени

— VC9, адаптированный для процессора общего назначения, уже может представлять практический интерес в некорых нишах , но для большинства реальных сценариев он еще слишком медленный по сравнению с AVC и HEVC, если только не используется сверхмощный CPU

— Декодер ffvp9 по производительности намного превосходит остальные протестированные декодеры.

По словам Анви Рамбиа VP9 сейчас активно используется в корпоративных сетях и в системе видеоконференций от Google ( видимо имеются в виду Google Hangouts и платная платформа Chromebox for meeting). Недавно Google усовершенствовал возможности масштабирования ( Scalible Video Coding) VP 9, что делает прямым конкурентом AVC в сфере видео- конференций Microsoft включил VP 9 декодер в свой Edge браузер и скоро добавит в свою систему видеоконференций. В тестовом режиме его также поддерживают Mozilla Firefox и VLC.

VP9 уже два года поддерживается YouTube, а этой осенью для сжатия контента загружаемого для off-line просмотра этот кодек начал использовать Netflix. Это в определенной мере гарантирует жизнеспособность формата и снижает риски внедрения в корпоративном секторе.

Что касается приемных устройств, то кроме ПК с упомянутыми браузерами, VP9 на уровне ОS поддерживаетcя платформой Android, начиная с версии 4.4 «KitKat». В то же время платформа IOS этот кодек не поддерживает и не очень понятно будет ли, так как в Apple пока не собираются отказываться от связки HLS + AVC.

Но, несмотря на распространение VP 9 в Интернете и корпоративных сетях, Анви Рамбиа пока не видит оснований рассматривать этот кодек как конкурента HEVC в вещательных сетях. В первую очередь, из-за отсутствия декодеров, защищенных на аппаратном уровне, отсутствия метаданных, необходимых для защиты и реализации других функции платного ТВ. Кроме того, VP9 еще более медленный, чем HEVC и активных работ для повышения его быстродействия не наблюдается.

H.265 (HEVC), в отличии от H.264 (AVC), становится наиболее часто используемым форматом для сжатия видео и записи контента 4K / 8K UHD, не говоря уже о видео HD / SD. Увеличение количества видео 4K и 8K бросает вызов текущему стандарту сжатия H.264, поскольку ему больше не удается кодировать видео Ultra HD с удовлетворительной скоростью передачи данных, чем контент HD.

Вследствие этого, стандарт сжатия видео HEVC следующего поколения получает преимущество над AVC благодаря лучшей эффективности сжатия. Это позволяет на 50% снизить скорость передачи, но обеспечивает такое же качество видео.

Этот пост показывает различия между двумя стандартами, основанные на размере файла, использовании полосы пропускания, скорости передачи данных, качестве и совместимости.

Что такое H.265 (HEVC)?

H.265 также называется высокоэффективным кодированием видео (HEVC). Данный формат в два раза более эффективен, чем H.264 при кодировании. Он вдвое снижает скорость передачи при том же уровне качества по сравнению со своим предшественником. Предназначен для дисплеев HDTV следующего поколения и систем захвата контента, которые имеют прогрессивную частоту кадров и разрешение, а также улучшенное качество изображения с точки зрения уровня шума, цветовых пространств и динамического диапазона.

Что такое H.264 (AVC)?

H.264 или MPEG-4 AVC – это формат кодирования видео, который в настоящее время является одним из наиболее часто используемых для сжатия и доставки видеоконтента. AVC экономит битрейт на 50% и более по сравнению с его предшественником MPEG-2. Имеет более широкий спектр приложений, охватывающих все сжатое видео, начиная от потоковых приложений с низким битрейтом (YouTube, iTunes, Vimeo, Facebook, Instagram) для различных передач HDTV по наземному, кабельному и спутниковому телевидению. Он также широко используется для дисков Blu-ray, DVD, IP-сетей и приложений для цифрового кино с кодированием, практически без потерь.

Сравнение форматов сжатия видео

Эффективность сжатия

H.265 отличается от H.264 эффективностью сжатия. HEVC удваивает эффективность кодирования по сравнению со своим предшественником. Это означает, что кодек H.265 экономит около 50% битрейта при том же качестве кодирования. В частности, среднее уменьшение битов для H.265 составляет 64% при 4K UHD, 62% при 1080p, 56% при 720p и 52% при 480p. Таким образом, если загрузить фильм в H.265 и воспроизвести его на устройстве iPhone Android, то будет сохранено 50% памяти мобильного устройства. И качество фильма не пострадает!

H.265 vs H.264 сравнение форматов – эффективность сжатия

Сравнение форматов видео и эффективность сжатия

Полоса пропускания

H.265 превосходит H.264 и в отношении использования полосы пропускания. Поскольку алгоритм HEVC использует эффективное кодирование, он обещает приблизительно 40-50% уменьшения полосы пропускания передачи, необходимой для сжатия видео (например, в формате 720p), с тем же качеством. Как правило, для потоковой передачи 4K H264 (AVC) требуется полоса пропускания 32 Мбит / с, а для передачи видео 4K HEVC – всего 15 Мбит / с. Таким образом, можно наслаждаться 4k видео без проблем даже при перегруженном сетевом соединении.

HEVC и AVC – экономия пропускной способности

H.264 и H.265 – полоса пропускания

Качество видео

Большая разница между рассматриваемыми кодеками заключается в качестве видео при одинаковой скорости передачи данных. В AVC границы областей блока, вероятно, будут искажены, потому что каждый макроблок является фиксированным, а данные независимы друг от друга. В то время как H.265 предлагает более четкие детали на гранях и сглаживает градиентные области с меньшим количеством артефактов.

Таким образом, H.265 лучше, чем H.264, когда речь идет о сжатии видео с лучшим качеством изображения.

H.265 (HEVC) и H.264 (AVC) – качество видео

Размер файла

Высокая степень сжатия также тесно связана с требованием цифрового хранения видеопотоков и передачи. Уменьшенная пропускная способность приводит к уменьшению размера файла. Тесты показывает, что видео, закодированное с помощью H.264, в 1-3 раза больше, чем H.265. Это выгодно для хранения информации на жестком диске или устройствах с ограниченным пространством хранения, необходимого для размещения видеоданных. В этом отношении большое преимущество H.265 перед H.264.

HEVC и AVC – размер файла

H.265 vs H.264 сравнение форматов – размер файла

Совместимость форматов

Ничто не совершенно. Так же, как и HEVC. Все, сказанное выше, является преимуществом HEVC перед H264. Но есть и недостаток – плохая совместимость. В настоящее время новый формат далеко не так популярен, как H264. Современные устройства и платформы, поддерживающие кодек H264, составляют 99%. Поддержка кодека H265, может составлять около 30-40%.

Преимущества и недостатки

H.265 имеет много преимуществ перед H.264. Например, он поддерживает до 8K UHDTV (разрешением, максимум 8192 × 4320), скорость передачи данных составляет несколько ГБ / с, а размер файла вдвое меньше, и это с лучшим качеством! H.265 имеет большое влияние на увеличение спроса и продажи экранов 4К, предлагая более высокое качество видео даже в сети с ограниченной пропускной способностью.

Но есть и обратная сторона. HEVC требует больше времени для кодирования по сравнению с AVC. Во-вторых, поскольку перспективный кодек, который сейчас широко не используется, просмотр видео H.265 не так прост. Поэтому преобразование H.265 в H.264 по-прежнему очень востребовано в наши дни.

Пишите в комментариях ниже какую информацию добавить или убрать для форматов сжатия видео – H.264 (AVC) vs H.265 (HEVC). Открыт для предложений по оформлению и наполнению страницы.

Что такое высокоэффективное кодирование видеоизображений (HEVC)?

До недавнего времени при необходимости оптимизировать качество видео и уменьшить размеры файлов предпочтение отдавалось кодеку H.264 (также известному как AVC). Переход на кодек H.265 (или HEVC) требует большей вычислительной мощности по сравнению с H.264, однако кодек HEVC работает намного эффективнее и обеспечивает повышение качества видео при более низких битрейтах.

Переломным моментом в использовании видеокодека HEVC / H.265 стала Всемирная конференция разработчиков Apple (WWDC) 2017 года, на которой компания Apple объявила кодек HEVC своим «видеокодеком следующего поколения». Последствия этого события стали глобальными. Благодаря такой заинтересованности в HEVC и уже появившейся на тот момент в большинстве микросхем для мобильных устройств аппаратной поддержке видеокодирования HEVC поставщики видеоконтента осознали, что кодек HEVC стал новым стандартом сжатия видео для потоковой передачи.

HEVC по сравнению с AVC. В чем преимущества кодека HEVC?

Из объявления Apple: «Одним словом, эффективность. И в первую очередь – эффективность кодирования. Кодек HEVC примерно на 40 % эффективнее AVC. Это означает, что воспроизведение с приличным качеством начнется для пользователя на 40 % быстрее, а когда плеер полностью адаптируется к видеопотоку, контент будет выглядеть на 40 % лучше. Мы решили сделать HEVC доступным для всех. В самые новые устройства Apple поддержка HEVC встроена на аппаратном уровне. Даже для более старых устройств, где такой аппаратной поддержки нет, мы планируем развертывание кодека HEVC на программном уровне. Так что теперь HEVC будет использоваться повсюду».

Ответ на вопрос любой компании относительно выбора между HEVC и AVC можно обобщенно выразить в виде двух основных преимуществ кодека HEVC.

  • Эффективность HEVC примерно в два раза превосходит эффективность AVC
  • HEVC поддерживает 4K и расширенный динамический диапазон изображений

При использовании кодека HEVC с той же пропускной способностью, что и AVC, можно достичь более высокого качества видео – либо обеспечить тот же уровень качеств, что и AVC, с использованием половины пропускной способности, необходимой для AVC.

HEVC по сравнению с H.264 и MPEG‑2. Сравнение трех кодеков

Если коротко, кодек HEVC предоставляет инструменты для передачи видео с заданным уровнем качества при наименьшем объеме передаваемой информации. Ниже приведено сравнение кодеков MPEG‑2, H.264 и HEVC по компонентам.

Компонент MPEG‑2 H.264 HEVC / H.265
Общие Компенсированное предсказание движения, кодирование остатка, преобразование кодирования, энтропийное кодирование Основные характеристики аналогичны MPEG‑2 Основные характеристики аналогичны MPEG‑2
Внутрикадровое предсказание Только DC Мультинаправленный, мультишаблонный, 9 внутренних режимов для 4x4, 9 для 8x8 и 4 для 16x16 35 режимов внутрикадрового предсказания, размер блока предсказания 32x32, 16x16, 8x8 и 4x4
Типы кодируемых изображений I, B, P I, B, P, SI, SP I, P, B
Преобразование DCT, 8x8 DCT‑подобное целочисленное преобразование, 8x8 и 4x4 DCT‑подобное целочисленное преобразование, 32x32, 16x16, 8x8 и 4x4
Блоки оценки движения 16x16 16x16, 16x8, 8x16, 8x8, 8x4, 4x8, 4x4

Компенсированное предсказание движения, кодирование остатка, преобразование кодирования, энтропийное кодирование
Компенсированное предсказание движения, кодирование остатка, преобразование кодирования, энтропийное кодирование
Компенсированное предсказание движения, кодирование остатка, преобразование кодирования, энтропийное кодирование
Компенсированное предсказание движения, кодирование остатка, преобразование кодирования, энтропийное кодирование
Компенсированное предсказание движения, кодирование остатка, преобразование кодирования, энтропийное кодирование
Мультинаправленный, мультишаблонный, 9 внутренних режимов для 4x4, 9 для 8x8 и 4 для 16x16
Мультинаправленный, мультишаблонный, 9 внутренних режимов для 4x4, 9 для 8x8 и 4 для 16x16
Мультинаправленный, мультишаблонный, 9 внутренних режимов для 4x4, 9 для 8x8 и 4 для 16x16
DCT‑подобное целочисленное преобразование, 8x8 и 4x4
Мультинаправленный, мультишаблонный, 9 внутренних режимов для 4x4, 9 для 8x8 и 4 для 16x16
Мультинаправленный, мультишаблонный, 9 внутренних режимов для 4x4, 9 для 8x8 и 4 для 16x16
DCT‑подобное целочисленное преобразование, 8x8 и 4x4
64x64 и иерархическое разбиение дерева квадратов до 32x32, 16x16 и 8x8. Для каждого размера можно применить до 8 способов разбиения, не обязательно на квадраты.
64x64 и иерархическое разбиение дерева квадратов до 32x32, 16x16 и 8x8. Для каждого размера можно применить до 8 способов разбиения, не обязательно на квадраты.
Адаптивный фильтр удаления блочности и адаптивный к выборке смещения фильтр
Адаптивный фильтр удаления блочности и адаптивный к выборке смещения фильтр

Сравнение кодеков MPEG‑2, H.264 и HEVC

Как кодек HEVC влияет на библиотеки видеоконтента?

Для СМИ и компаний сферы развлечения, отбирающих и создающих большие библиотеки контента в нарастающем темпе, кодек HEVC может обеспечить большую экономию битрейта. Стремясь идти в ногу с потребительским спросом на мультиэкранные технологии, организации сталкиваются с растущей нагрузкой на инфраструктуру хранилищ. С помощью кодека HEVC, уменьшающего размеры файлов вдвое, можно экономить на хранении, а не удваивать емкость хранилища.

Какие преимущества обеспечивает кодек HEVC в отношении битрейта?

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

  • развертывание большего количества каналов в спутниковых, кабельных и IPTV сетях;
  • снижении стоимости управляемого и неуправляемого распространения видео;
  • расширение охвата для операторов мобильной связи и IPTV с ограниченной пропускной способностью;
  • повышения качества просмотра при использовании сервисов OTT до обычного уровня вещательных компаний.

Как кодек HEVC улучшает потоковую передачу на мобильные устройства, Ultra HD 4K и 8K?

На рынке потоковой передачи для мобильных устройств кодек HEVC обеспечивает снижение битрейта на 30–50 процентов при сопоставимом с H.264 качестве видео, что приводит к сокращению расходов на доставку видеоконтента по сетям.

Когда устройство способно декодировать HEVC, для обеспечения заданного уровня качества операторы мобильной связи могут доставлять гораздо меньше данных, что снижает расходы и обеспечивает более надежное воспроизведение видео.

Распространение HEVC также согласуется с интересом массового рынка к видео высокого разрешения (Ultra HD 4K и 8K), поскольку 4K‑телевизоры чаще всего поддерживают только HEVC и более новые кодеки.

Основной вывод. В среднем HEVC позволяет передать видео того же качества, что и H.264, при скорости передачи данных примерно вдвое ниже (точные соотношения могут меняться в зависимости от типа контента).

Например, для потока 1080p издатель без потери качества может сократить скорость передачи данных с 8 Мбит/с до 4 Мбит/с. Такое снижение битрейта может оказать существенное влияние на стоимость периферийного кэширования, поскольку размер файла при доставке конечным потребителям становится меньше.

В некоторых сценариях, таких как доставка контента в сетях 4G на планшет с высоким разрешением, это может дать пользователю возможность просмотра потока 1080p, а не 720p, что улучшит общее качество просмотра.

Могут ли компании платного телевидения и кабельного телевидения с инфраструктурой абонентских приставок использовать HEVC?

Для платного телевидения и кабельного телевидения, где используется традиционная инфраструктура со старыми телеприставками, не подлежащими обновлению, внедрение HEVC является проблематичным. Однако некоторые из таких компаний диверсифицируют доставку контента, и для OTT‑сегментов их бизнеса создавать и внедрять решения HEVC гораздо проще.

Допустимо ли смешивать кодеки H.264 и HEVC в мультибитрейтовом потоке?

Ответ на этот вопрос во многом зависит от способности устройства просмотра незаметно для пользователя переключаться при работе с потоком с H.264 на H.265. В начале распространение кодека HEVC большинство устройств выбирали либо одно, либо другое, так что H.264 и H.265 не смешивались в одних и тех же мультибитрейтовых потоках. Но поскольку H.264 и H.265 вписываются в один и тот же механизм передачи, любые сложности, связанные со смешиванием двух кодеков, не являются проблемой.

Когда кодек HEVC был стандартизирован?

Как и стандарт H.264, HEVC является результатом совместной работы группы экспертов по кодированию видео ITU‑T и группы экспертов по движущимся изображениям (MPEG) ISO / IEC, создавших в 2013 году первую версию стандарта кодеков HEVC.

ITU‑T упрощает создание и принятие телекоммуникационных стандартов, а ISO / IEC управляет стандартами для электронной промышленности.

Сложно представить сейчас область человеческой деятельности, в которую бы, так или иначе, не проникло цифровое видео. Мы смотрим его по телевизору, на мобильных устройствах, на стационарных компьютерах, снимаем его сами цифровыми камерами, сталкиваемся с ним на автодорогах, в магазинах, в больницах, школах и вузах, на промышленных предприятиях самых разных профилей. В нашу жизнь все прочнее и шире входят слова и термины, непосредственно связанные с цифровым представлением видеоинформации. Время от времени возникают и вопросы из этой области. Чем различаются и что делают различные устройства или программы, которые мы используем для кодирования/декодирования цифровых видеоданных? Какие из этих устройств/программ лучше или хуже и в чем? Что означают все эти бесконечные MPEG2, H.264/AVC, VP9, H.265/HEVC и т.д. Попробуем разобраться.

Совсем краткая историческая справка

Первый общепринятый стандарт видео компрессии MPEG2 был окончательно принят в 1996 году, после чего началось быстрое развитие цифрового спутникового телевещания. Следующим стандартом стал MPEG4 part 10 (H.264/AVC), который обеспечивает в два раза большую степень сжатия видеоданных. Он был принят в 2003 году, что стало толчком к развитию систем DVB-T/C, Интернет ТВ и к появлению разнообразных сервисов видеообмена и видеосвязи. С 2010 по 2013 годы международной группой Joint Collaborative Team on Video Coding (JCT-VC) велась интенсивная работа по созданию следующего стандарта сжатия видеоданных, названного разработчиками High Efficient Video Coding (HEVC), который обеспечил следующее двукратное увеличение степени сжатия цифровых видеоданных. Этот стандарт был утвержден в 2013 году. В этом же году принят стандарт VP9, разрабатывавшийся компанией Google, который должен был не уступать HEVC по степени сжатия видеоданных.

Основные этапы видеокодирования

В основе алгоритмов компрессии видеоданных лежит несколько простых идей. Если взять некоторую часть изображения (в стандартах MPEG2 и AVC эту часть называют макроблок), то с большой вероятностью вблизи нее в этом или соседних кадрах окажется похожий участок. Таким образом, чтобы передать информацию об изображении в текущем участке достаточно передать только его отличие от ранее закодированного похожего участка. Процесс поиска похожих участков среди ранее закодированных изображений называют предсказанием (Prediction). Набор разностных значений, определяющих отличие текущего участка от найденного предсказания, называют остатком (Residual). Выделяют два основных типа предсказания. В первом из них значения Prediction представляют собой набор линейных комбинаций пикселей, примыкающих к текущему участку изображения слева и сверху. Такое предсказание называют пространственным (Intra Prediction). Во втором — в качестве предсказания используются линейные комбинации пикселей похожих участков изображений с ранее закодированных кадров (эти кадры называют Reference). Такое предсказание называют временным (Inter Prediction). Чтобы восстановить изображение текущего участка, закодированного с временным предсказанием, необходима информация не только об остатке (Residual), но и о номере кадра, на котором находится похожий участок, и координатах этого участка.

Полученные при предсказании значения Residual содержат меньше информации, чем исходное изображение, и требуют меньшего количества битов для передачи изображения. Чтобы повысить степень сжатия видеоданных, в системах видеокодирования используют какое-либо спектральное преобразование. Как правило, это косинус-преобразование Фурье. Такое преобразование позволяет выделить основные гармоники в остаточном двумерном сигнале Residual. Такое выделение производится на следующем этапе кодирования — квантовании. Последовательность квантованных спектральных коэффициентов содержит небольшое количество главных, больших по величине, значений. Остальные значения с большой вероятностью являются нулевыми. В результате количество информации, содержащееся в квантованных спектральных коэффициентах, оказывается в десятки раз ниже, чем в исходном изображении.

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

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

Проиллюстрируем возможные варианты (далеко не все) реализации перечисленных выше этапов кодирования на примере H.264/AVC и HEVC.

Стандарт AVC

В стандарте AVC основной структурной единицей изображения является макроблок — квадратная область размером 16x16 пикселей (рис. 1). При поиске наилучшего варианта предсказания кодер может выбирать один из нескольких вариантов разбиения каждого макроблока. При пространственном Intra-предсказании таких вариантов три: выполнить предсказание для всего блока целиком, разбить макроблок на четыре квадратных блока размером 8x8 или на 16 блоков размером 4x4 пикселя и выполнять предсказание для каждого такого блока независимо. Количество возможных вариантов разбиений макроблока при временном Inter-предсказании существенно богаче (рис. 1), что обеспечивает адаптацию размера и положения предсказываемых блоков к положению и форме границ движущихся в видеокадре объектов.


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

Для большей наглядности начнем с цифр. Пускай видеозапись будет вестись непрерывно, в разрешении Full HD (сейчас это уже необходимый минимум, во всяком случае, если вы хотите полноценно использовать функции видеоаналитики) и в режиме реального времени (то есть, с фреймрейтом 25 кадров в секунду). Предположим также, что выбранное нами оборудование поддерживает аппаратное кодирование H.265. В этом случае при разных настройках качества изображения (высоком, среднем и низком) мы получим примерно следующие результаты.

Кодек

Интенсивность движения в кадре

Использование дискового пространства за сутки, ГБ

H.265 (Высокое качество)

H.265 (Высокое качество)

H.265 (Высокое качество)

H.265 (Среднее качество)

H.265 (Среднее качество)

H.265 (Среднее качество)

H.265 (Низкое качество)

H.265 (Низкое качество)

H.265 (Низкое качество)

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

Учитывая, что в сутках 86400 секунд, цифры выходят поистине астрономические:

148×86400/1024=12487 ГБ

Итак, если бы мы записывали видео без сжатия в максимальном качестве при заданных условиях, то для хранения данных, полученных с одной единственной видеокамеры в течение суток нам бы потребовалось 12 терабайт дискового пространства. Но даже система безопасности квартиры или малого офиса предполагает наличие, как минимум, двух устройств видеофиксации, тогда как сам архив необходимо сохранять в течение нескольких недель или даже месяцев, если того требует законодательство. То есть, для обслуживания любого объекта, даже весьма скромных размеров, потребовался бы целый дата-центр!

К счастью, современные алгоритмы сжатия видео помогают существенно экономить дисковое пространство: так, использование кодека H.265 позволяет сократить объем видео в 90 (!) раз. Добиться столь впечатляющих результатов удалось благодаря целому стеку разнообразных технологий, которые давно и успешно применяются не только в сфере видеонаблюдения, но и в «гражданском» секторе: в системах аналогового и цифрового телевидения, в любительской и профессиональной съемке, и многих других ситуациях.

Наиболее простой и наглядный пример — цветовая субдискретизация. Так называют способ кодирования видео, при котором намеренно снижается цветовое разрешение кадров и частота выборки цветоразностных сигналов становится меньше частоты выборки яркостного сигнала. Такой метод сжатия видеоданных полностью оправдан как с позиции физиологии человека, так и с точки зрения практического применения в области видеофиксации. Наши глаза хорошо замечают разницу в яркости, однако гораздо менее чувствительны к перепадам цвета, именно поэтому выборкой цветоразностных сигналов можно пожертвовать, ведь большинство людей этого попросту не заметит. В то же время, сложно представить, как в розыск объявляют машину цвета «паука, замышляющего преступление»: в ориентировке будет написано «темно-серый», и это правильно, ведь иначе прочитавший описание авто даже не поймет, о каком оттенке идет речь.

А вот со снижением детализации все оказывается уже совсем не так однозначно. Технически квантование (то есть, разбиение диапазона сигнала на некоторое число уровней с последующим их приведением к заданным значениям) работает великолепно: используя данный метод, размер видео можно многократно уменьшить. Но так мы можем упустить важные детали (например, номер проезжающего вдалеке автомобиля или черты лица злоумышленника): они окажутся смазаны и такая запись будет для нас бесполезной. Как же поступить в этой ситуации? Ответ прост, как и все гениальное: стоит взять за точку отсчета динамические объекты, как все тут же становится на свои места. Этот принцип успешно используется со времен появления кодека H.264 и отлично себя зарекомендовал, открыв ряд дополнительных возможностей для сжатия данных.

Это было предсказуемо: разбираемся, как H.264 сжимает видео

Вернемся к таблице, с которой мы начали. Как видите, помимо таких параметров, как разрешение, фреймрейт и качество картинки решающим фактором, определяющим конечный размер видео, оказывается уровень динамичности снимаемой сцены. Это объясняется особенностями работы современных видеокодеков вообще, и H.264 в частности: используемый в нем механизм предсказания кадров позволяет дополнительно сжимать видео, при этом практически не жертвуя качеством картинки. Давайте посмотрим, как это работает.

Кодек H.264 использует несколько типов кадров:

  • I-кадры (от английского Intra-coded frames, их также принято называть опорными или ключевыми) — содержат информацию о статичных объектах, не меняющихся на протяжении длительного времени.
  • P-кадры (Predicted frames, предсказанные кадры, также именуемые разностными) — несут в себе данные об участках сцены, претерпевших изменения по сравнению с предыдущим кадром, а также ссылки на соответствующие I-кадры.
  • B-кадры (Bi-predicted frames, или двунаправленные предсказанные кадры) — в отличие от P-кадров, могут ссылаться на I-, P- и даже другие B-кадры, причем как на предыдущие, так и на последующие.

[НАЧАЛО СЪЕМКИ] I-P-P-P-P-P-P-P-P-P-P-P-P-P- .

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

Полное изображение формируется путем «наложения» P-кадров на опорный кадр. При этом появляется возможность независимой обработки фона и движущиеся объектов, что позволяет дополнительно сэкономить дисковое пространство без риска упустить важные детали (черты лиц, автомобильные номера и т. д.). В случае же с объектами, совершающими однообразные движения (например, вращающимися колесами машин) можно многократно использовать одни и те же разностные кадры.


Независимая обработка статических и динамических объектов позволяет сэкономить дисковое пространство

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


Кодек формирует кадры, предсказывая, куда будет двигаться объект

В свою очередь, использование двунаправленных предсказанных кадров позволяет в несколько раз сократить время доступа к каждому кадру в потоке, поскольку для его получения будет достаточно распаковать только три кадра: B, содержащий ссылки, а также I и P, на которые он ссылается. В данном случае цепочку кадров можно изобразить следующим образом.

[НАЧАЛО СЪЕМКИ] I-B-P-B-P-B-P-B-P-B-P-B-P-B-P-B-P-…

Такой подход позволяет существенно повысить скорость быстрой перемотки с показом и упростить работу с видеоархивом.

В чем разница между H.264 и H.265?


В H.265 используются все те же принципы сжатия, что и в H.264: фоновое изображение сохраняется единожды, а затем фиксируются лишь изменения, источником которых являются движущиеся объекты, что позволяет значительно снизить требования не только к объему хранилища, но и к пропускной способности сети. Однако в H.265 многие алгоритмы и методы прогнозирования движения претерпели значительные качественные изменения.

Так, обновленная версия кодека стала использовать макроблоки дерева кодирования (Coding Tree Unit, CTU) переменного размера с разрешением до 64×64 пикселей, тогда как ранее максимальный размер такого блока составлял лишь 16×16 пикселей. Это позволило существенно повысить точность выделения динамических блоков, а также эффективность обработки кадров в разрешении 4K и выше.

Кроме того, H.265 обзавелся улучшенным deblocking filter — фильтром, отвечающим за сглаживание границ блоков, необходимым для устранения артефактов по линии их стыковки. Наконец, улучшенный алгоритм прогнозирования вектора движения (Motion Vector Predictor, MVP) помог заметно снизить объем видео за счет радикального повышения точности предсказаний при кодировании движущихся объектов, чего удалось достичь за счет увеличения количества отслеживаемых направлений: если ранее учитывалось лишь 8 векторов, то теперь — 36.

Помимо всего перечисленного выше, в H.265 была улучшена поддержка многопоточных вычислений: квадратные области, на которые разбивается каждый кадр при кодировании, теперь могут обрабатываться независимо одна от другой. Появилась и поддержка волновой параллельной обработки данных (Wavefront Parallelel Processing, WPP), что также способствует повышению производительности сжатия. При активации режима WPP обработка CTU осуществляется построчно, слева направо, однако кодирование каждой последующей строки может начаться еще до завершения предыдущей в том случае, если данных, полученных из ранее обработанных CTU, для этого достаточно. Кодирование различных строк CTU с временной задержкой со сдвигом, наряду с поддержкой расширенного набора инструкций AVX/AVX2 позволяет дополнительно повысить скорость обработки видеопотока в многоядерных и многопроцессорных системах.

Флэш-карты для видеонаблюдения: когда значение имеет не только размер

И вновь вернемся к табличке, с которой мы начали сегодняшний разговор. Давайте подсчитаем, сколько дискового пространства нам понадобится в том случае, если мы хотим хранить видеоархив за последние 30 дней при максимальном качестве видеозаписи:

138×30/1024 = 4

По нынешним меркам 4 терабайта для винчестера индустриального класса — практически ничто: современные жесткие диски для видеонаблюдения имеют емкость до 14 терабайт и могут похвастаться рабочим ресурсом до 360 ТБ в год при MTBF до 1.5 миллионов часов. Что же касается карт памяти, то здесь все оказывается не так однозначно.

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

При бытовом использовании подобное попросту невозможно, поэтому даже самая бюджетная карта памяти способна прослужить вам несколько лет к ряду без единого сбоя. А все благодаря алгоритмам выравнивания износа (wear leveling). Схематично их работу можно описать следующим образом. Пусть в нашем распоряжении есть новенькая флеш-карта, только что из магазина. Мы записали на нее несколько видеороликов, использовав 7 из 16 гигабайт. Через некоторое время мы удалили часть ненужных видео, освободив 3 гигабайта, и записали новые, объем которых составил 2 ГБ. Казалось бы, можно задействовать только что освободившееся место, однако механизм выравнивания износа выделит под новые данные ту часть памяти, которая ранее никогда не использовалась. Хотя современные контроллеры «тасуют» биты и байты куда более изощренно, общий принцип остается неизменным.


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

Нетрудно догадаться, что wear leveling перестает играть хоть сколько-нибудь значимую роль в том случае, если флэш-карта постоянно перезаписывается целиком: здесь на первый план уже выходит выносливость самих чипов. Наиболее объективным критерием оценки последней является максимальное количество циклов программирования/стирания (program/erase cycle), или, сокращенно, циклов P/E, которое способно выдержать флеш-память. Также достаточно точным и в данном случае наглядным (так как мы можем заранее рассчитать объемы перезаписи) показателем является коэффициент TBW (Terabytes Written). Если в технических характеристиках указан лишь один из перечисленных показателей, то вычислить другой не составит особого труда. Достаточно воспользоваться следующей формулой:

TBW = (Емкость × Количество циклов P/E)/1000

Так, например, TBW флеш-карты емкостью 128 гигабайт, ресурс которой составляет 200 P/E, будет равен: (128 × 200)/1000 = 25,6 TBW.

Давайте считать дальше. Выносливость карт памяти потребительского уровня составляет 100–300 P/E, и 300 — это в самом лучшем случае. Опираясь на эти цифры, мы можем с достаточно высокой точностью оценить срок их службы. Воспользуемся формулой и заполним новую таблицу для карты памяти емкостью 128 ГБ. Возьмем за ориентир максимальное качество картинки в Full HD, то есть в сутки камера будет записывать 138 ГБ видео, как мы выяснили ранее.

Читайте также: