Войны видеокодеков: выбираем между H.264, HEVC и AV1 для стриминга

26.08.2024

10мин. чтения

Codec

Стоимость стриминга сильно зависит от двух процессов: сжатия и декомпрессии видеоданных. А объединяет их видеокодек.

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

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

Что такое видеокодек?

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

Выбор кодека влияет на качество видео, итоговый размер файла и его совместимость с различными устройствами.

В обычной жизни мы не замечаем, какой именно кодек используется. Но видим формат файла — например, avi. Важно понимать его отличие от кодека:

Кодек — это программное обеспечение, которое сжимает и «разжимает» видеофайлы. Например, H.264 и HEVC (H.265) — это кодеки, которые определяют, как кодировать видеоданные для уменьшения размера файла и декодировать для воспроизведения.

Формат контейнера — это формат файла, который мы видим, например .avi, .mov или .mp4. Контейнеры объединяют видео- и аудиопотоки в один файл, но сами не занимаются сжатием. Они выступают в качестве обертки для сжатого кодеком содержимого.

Например, видеофайл с расширением .mp4 может использовать кодек H.264 для сжатия видео и AAC для сжатия аудио. Контейнер .mp4 просто хранит эти потоки вместе.

Как работает видеокодек?

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

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

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

Войны кодеков: в поисках идеальной технологии

В начале 2000-х годов — период бурного развития видеостриминга — компании, которые занимались разработкой кодеков, вели борьбу за будущее видеотехнологий. Целью «войны кодеков» был не только поиск лучшего решения, но и контроль над рыночными стандартами. Разработчики кодеков и технологические гиганты вкладывали большие деньги в исследования, разработку и лоббирование, чтобы влиять на отрасль, ценообразование и распространение технологий.

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

Давайте внимательнее посмотрим на те кодеки, которые сейчас имеют наибольшую популярность.

H.264 (AVC)

Выпущенный в 2003 году, H.264, или AVC (Advanced Video Coding), быстро стал стандартом сжатия видео. Разработанный ITU-T Video Coding Experts Group (VCEG) совместно с ISO/IEC Moving Picture Experts Group (MPEG), он поддерживал удачный баланс между качеством видео и размером файла. В отличие от его предшественников, H.264 поддерживал различные разрешения и частоты кадров и обеспечил повышение эффективности сжатия.

Изначально YouTube использовал H.264 для своих сервисов потокового видео. Этот выбор позволил пользователям передавать видео на различные устройства с хорошим качеством при небольшом размере файла.

Как работает H.264 (AVC)

  • Компенсация движения с помощью блоков: кодек делит видеокадр на небольшие блоки (обычно 16x16 пикселей) и отслеживает, как от кадра к кадру меняется в них изображение. H.264 сжимает видео, записывая только информацию об изменениях в блоках.

  • Переменный размер блока: вместо того чтобы использовать фиксированный размер блока, H.264 позволяет использовать блоки разных размеров, например, 4x4 или 8x8 пикселей. Это помогает лучше сжимать видео, особенно в сценах с переменным движением.

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

  • Энтропийное кодирование: H.264 использует два метода, CAVLC и CABAC, для дальнейшего сжатия данных. CABAC более эффективен, но требует большей вычислительной мощности.

Почему H.264 был важен:

  • Эффективность: по сравнению со старыми кодеками, например, MPEG-2, эффективность сжатия H.264 значительно выше. Это позволило получать качественное видео при более низком битрейте.

  • Широкое распространение: благодаря эффективность и относительно простому лицензированию, H.264 быстро завоевал популярность и получил поддержку на различных платформах и устройствах.

HEVC (H.265) наносит ответный удар

С появлением HD- и 4K-контента необходимость в более качественном сжатии стала очевидной. Поэтому в 2013 году появился HEVC (H.265), ставший преемником H.264. Разработанный экспертной группой ISO/IEC Moving Picture Experts Group и экспертной группой ITU-T Video Coding Experts Group, HEVC обещал удвоить степень сжатия данных по сравнению с H.264.

Одним из самых известных пользователей HEVC для формата 4K стал Netflix. Он позволил эффективнее использовать пропускную способность сети и предоставлять высококачественное видео, обеспечивая превосходное качество изображения для зрителей.

Как работает HEVC (H.265)

В H.265 реализовано несколько усовершенствований по сравнению с H.264:

  • Блоки дерева кодирования (CTUs): изображения в H.265 представлены деревом, в котором каждый узел может содержать блок яркости и два блока цветности. Кроме того, размер блоков в HEVC может быть до 64x64 пикселей. Для видео высокого разрешения такой размер блоков снижает расходы на сжатие, так как требует меньше вычислительных мощностей.

  • Усовершенствованное предсказание движения: HEVC улучшает отслеживание движения с помощью более точных методов. Он использует более мелкие движения и несколько опорных кадров для лучшего предсказания движения объекта.

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

  • Улучшенное энтропийное кодирование: HEVC использует усовершенствованную версию CABAC, обеспечивая лучшее сжатие, но с повышенной сложностью по сравнению с H.264.

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

H.264/HEVC

Достижения HEVC:

  • Улучшенное сжатие. Кодек обещал удвоить эффективность сжатия по сравнению с H.264, обеспечивая такое же качество видео при вдвое меньшем битрейте или лучшее качество при том же битрейте, что очень важно для работы с контентом высокой четкости и 4K.

  • Лучшее качество для новых технологий. Более эффективная обработка больших видеофайлов отвечала растущему спросу на видео 4K.

Проблемы HEVC:

  • Сложность: используются более совершенные методы сжатия, что повышает сложность кодирования и декодирования.

  • Затраты на лицензирование: HEVC обременен множеством патентных пулов, что приводит к значительным лицензионным отчислениям и препятствует широкому распространению.

AV1: новая надежда

По мере развития отрасли возникла потребность в кодеке, который обеспечит лучшую производительность без высоких затрат. В 2018 году Альянс открытых медиа (AOMedia) завершил разработку AV1 как безвозмездной альтернативы HEVC, направленной на повышение эффективности сжатия и снижение затрат на лицензирование.

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

Как работает AV1

AV1 призван обеспечить более высокую производительность по сравнению с HEVC:

  • Блочное и плиточное кодирование: AV1 использует сочетание блочного и плиточного кодирования. Он может обрабатывать блоки размером от 4x4 до 128x128 пикселей, что позволяет ему адаптироваться к различному видеоконтенту и эффективно сжимать его.

  • Адаптивная квантизация: AV1 регулирует уровень детализации в зависимости от сложности видео. Эта динамическая настройка помогает сжимать видео более эффективно, не тратя данные на более простые сцены.

  • Усовершенствованные методы прогнозирования: AV1 включает новые и улучшенные методы предсказания движения, что позволяет сократить объем данных, необходимых для сложных сцен.

  • Поддержка HDR: AV1 лучше обрабатывает контент с высоким динамическим диапазоном (HDR), повышая точность и качество цветопередачи для современных дисплеев.

Достижения AV1

  • Превосходное сжатие. Разработан, чтобы превзойти HEVC по эффективности сжатия, предлагая примерно на 30% лучшее сжатие и более высокое качество видео при более низком битрейте.

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

  • Возможности для развития. Включает в себя функциональность для обработки 4K, 8K видео и больше.

Проблемы AV1

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

  • Ограниченное использование. Популярность AV1 растет, но его поддержка все еще ограничена по сравнению с H.264 и HEVC, из-за более медленного обновления оборудования и программного обеспечения.

Сравнительный анализ

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

Файл H.264 (AVC) HEVC (H.265) AV1
Год выпуска 2003 2013 2018
Эффективность сжатия Хорошо Лучше, на ~50% эффективнее, чем H.264 Превосходно, на ~30% эффективнее, чем HEVC
Размер блока 16x16 пикселей До 64x64 пикселей От 4x4 до 128x128 пикселей
Компенсация движения На основе блоков, переменный размер Большие блоки, продвинутые методы На основе блоков и плиток, адаптивная
Энтропийное кодирование CAVLC, CABAC CABAC, более продвинутое Усовершенствованное энтропийное кодирование, многослойное
Параллельная обработка Ограниченная поддержка Улучшенная поддержка Расширенная поддержка
Поддержка HDR Базовая Улучшенная Расширенная
Поддержка аппаратного обеспечения Обширная, почти повсеместная Хорошая, но не повсеместная Развивающаяся, но ограниченная
Затраты на лицензирование Умеренные Высокие, многочисленные патентные пулы Без роялти

H.264 против HEVC

Если сравнивать H.264 и HEVC, то HEVC предлагает значительно лучшее сжатие. Например, потоковая передача 4K-фильма с HEVC требует меньшей пропускной способности, чем H.264: вы можете передавать видео более высокого качества с меньшей нагрузкой на сеть и буферизацией. Однако недостатком HEVC может быть более высокая сложность кодирования и лицензионные сборы.

HEVC против AV1

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

Стриминг 2-часового фильма в формате 4K

Посмотрим, как эти кодеки работают в реальных сценариях, например при потоковой передаче фильма:

Аспект H.264 (AVC) HEVC (H.265) AV1
Размер файла ~20 ГБ для 2-часового 4K-фильма ~10 ГБ для 2-часового 4K-фильма ~7 ГБ для 2-часового 4K-фильма
Качество Хорошее качество; некоторые артефакты в сценах с высокой интенсивностью движения Лучшее качество; меньше артефактов в сценах с высокой интенсивностью движения Превосходное качество; минимальные артефакты в сценах с высокой интенсивностью движения
Использование полосы пропускания ~25 Мбит/с ~12 Мбит/с ~8 Мбит/с
Производительность Менее требовательна; хорошо подходит для старых устройств Более сложное декодирование; рекомендуются новые устройства Высокие вычислительные требования; требуется современное оборудование/программное обеспечение
Поддержка Smart TV Универсальная поддержка почти всеми Smart TV Поддерживается многими новыми Smart TV; старые модели могут не поддерживать Развивающаяся поддержка; новые модели могут поддерживать, но многие текущие модели не поддерживают

Влияние на стриминг 4K видео

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

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

Выбор кодека для IPTV/OTT

На выбор оптимального кодека влияют несколько факторов:

  • качество видео,
  • ограничения пропускной способности,
  • стоимость,
  • совместимость с устройствами.

На сегодня H.264 остается надежным выбором для массового использования, HEVC отлично подходит для сценариев с высоким разрешением, а AV1 обеспечивает задел на будущее благодаря передовым технологиям сжатия.

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

Битва продолжается

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

Flussonic Media Server обеспечивает доставку видео на любое устройство благодаря захвату и транскодированию видео на лету. Попробуйте нашу пробную версию и оцените преимущества для вашего проекта.

Ключевые слова:
Codecs Media Server

Бесплатный триал Flussonic Media Server

Отправляя заявку, вы соглашаетесь с правилами и условиями

Пожалуйста, заполните форму для получения бесплатного тестового ключа.

Если вы не получите от нас письмо в течение 30 мин, проверьте в спаме и добавьте наш адрес в избранные контакты.

Email: support@flussonic.com Phone: +7 (495) 481-37-63