H.264

Краткое описание
Особенности стандарта сжатия видео­данных H.264 (MPEG4 AVC) и сопут­ствующая информация: кодеки, контейнеры, воспроиз­ведение и др.

H.264 — стандарт сжатия видеоданных, принятый Международной организацией по стандартизации (ISO). Также известен как MPEG-4 part 10 и AVC (Advanced Video Coding).

Преимущества H.264

По сравнению с MPEG2 (DVD-Video) и MPEG4 ASP (DivX, XviD), сжатие H.264 работает существенно более эффективно, обеспечивая лучшее качество изображения (вплоть до недостижимого для MPEG2 и MPEG4 ASP уровня) и меньший объём файла.

Недостатки H.264

Главным недостатком H.264 являются заметно более высокие требования к оборудованию для кодирования и воспроизведения видеофайлов.

Например, на компьютере на основе процессора Intel Pentium 4 с частотой 3,2 ГГц комфортно (плавно, без рывков) при использовании декодера ffdshow tryouts под Windows Vista воспроизводится лишь видео в «среднем» HD-разрешении — 1280×720. Так называемое Full-HD-видео (1920×1080) в зависимости от сложности сцен может уже заметно «притормаживать». Следует заметить, впрочем, что в Windows предыдущего поколения — XP — Full-HD-видео на том же оборудовании во многих случаях воспроизводится вполне плавно.

Эффективность использования ресурсов компьютера при воспроизведении в некоторой степени зависит от используемого декодера.

Декодеры H.264

ffdshow tryouts
Популярный бесплатный декодер множества форматов сжатия видео и звука, в том числе H.264.
CoreAVC
Платный кодек, считается наименее ресурсоёмким из существующих в настоящее время кодеков. Начиная с версии 1.9.5 поддерживает декодирование с использованием аппаратных возможностей видеокарт nVidia посредством интерфейса CUDA. Современные версии поддерживают также использование аппаратных мощностей видеокарт ATI (AMD) и Intel с помощью интерфейса DXVA.

Поддержка H.264

H.264 принят в качестве стандарта для сжатия видео высокой чёткости (HD, HDTV), распространяемого на оптических носителях нового поколения — Blu-ray и HD DVD, используется в мобильных устройствах, поддерживается в Apple QuickTime, получает распространение в системах цифрового телевещания, видеоконференцсвязи, видеонаблюдения и проч. Adobe Flash Player, являющийся стандартом де-факто для мультимедийных web-приложений и онлайн-видеохостингов вроде YouTube, поддерживает прямое воспроизведение H.264-видео начиная с версии 9.0.115, вышедшей в конце 2007 г.

Стандарты, форматы, кодеки, контейнеры

Кодек и стандарт — не одно и то же. Стандарт — это спецификация (описание) алгоритма сжатия (например, H.264), кодек — конкретная его программная реализация (например, x264).

Не следует также путать формат данных и формат контейнера, в котором эти данные могут храниться. Одни и те же данные (например, сжатые по алгоритму H.264 кодером x264) могут быть упакованы в разные контейнеры (например, Matroska, MP4 или AVI). И наоборот, в контейнере одного и того же формата (например, MKV) не обязаны находиться видеоданные в формате H.264 — можно легко столкнуться с MKV-файлом, внутри которого будет обычное DivX-видео.

Форматы контейнеров данных

Существует несколько распространённых форматов контейнеров, основные из них — MP4, Matroska (MKV) и AVI.

MP4
Официальный стандарт контейнера для видео H.264. Главный недостаток MP4 состоит в том, что, по спецификации, такой файл может содержать звук только в формате AAC. Это приводит к вынужденным потерям качества звука, например, при создании резервных копий DVD-фильмов из-за необходимости перекодирования из одного формата сжатия с потерями (AC3, Dolby Digital) в другой (AAC). Чисто технически в контейнер MP4 можно поместить поток любого формата, но возможность воспроизведения такого файла в любом плеере не будет гарантированной.
Matroska (Матрёшка, MKV)
Открытый формат контейнера, официально не принят какой-либо организацией по стандартизации, но является чрезвычайно гибким, а потому широко используется и поддерживается как программными, так и аппаратными плеерами известных производителей: как выполненными в виде самостоятельных устройств — например, WD TV Live, так и встроенными в современные телевизоры. В отличие от MP4, контейнер Matroska может содержать звук в любом формате — например, AC3, являющемся стандартным для DVD-Video. Это даёт возможность, создавая, например, резервную копию DVD-фильма, закодировать видео в H.264, но звук при этом оставить в исходном формате AC3, исключив потери качества звука, связанные с перекодированием.
AVI
В контейнере AVI обычно представлено видео в популярных форматах DivX и XviD (MPEG4 ASP). Для хранения данных, закодированных по стандарту H.264, контейнер AVI формально не предназначен и потому для этих целей обычно не используется, а в редких случаях такого, некорректного, его применения возможность воспроизведения соответствующих файлов не гарантируется.

Воспроизведение H.264-видеофайлов

Для воспроизведения видеофайлов формата H.264 есть несколько возможностей.

  • В современных телевизорах (выпущенных в 2011—2012 годах и позднее) можно использовать аппаратный плеер, встроенный непосредственно в телевизор. К сожалению, обычно такие плееры не поддерживают воспроизведение звуковых дорожек в формате DTS, а поддерживают только форматы AC3 и AAC, но в остальном обычно без проблем воспроизводят большинство видеофайлов.
  • Современный автономный аппаратный плеер, подключаемый к телевизору по интерфейсу HDMI — например, WD TV Live. Важно, чтобы модель была современной — старые модели плееров — например, iconBIT HD375W — при формально привлекательных характеристиках были способны воспроизвести лишь некоторые видеофайлы, при воспроизведении остальных страдая от рассинхронизации видео и звука, артефактов изображения и зависаний. Как и в случае встроенных в телевизоры плееров, поддержка формата DTS тоже характерна не для всех автономных плееров.
  • Воспроизведение видео программными средствами на компьютере — наиболее гибкий и универсальный способ, обеспечивающий максимальную совместимость с подавляющим большинством видеофайлов. Именно этот способ применяется в так называемых HTPC — компьютерах, используемых в качестве основы для организации домашнего кинотеатра. В качестве HTPC могут использоваться, в частности, маломощные компактные компьютеры, называемые неттопами и снабжённые HDMI-выходом для подключения к телевизору — например, построенные на платформе nVidia ION / ION 2, графическое ядро которой позволяет плавно воспроизводить H.264-видео высокой чёткости (Full HD, 1080p) при использовании плееров или декодеров, поддерживающих программные интерфейсы (API) CUDA или DXVA.

Воспроизведение видео на компьютере возможно следующими способами (все указанные программные продукты бесплатны):

  • с помощью одного из плееров со встроенными декодерами множества популярных форматов, в том числе H.264:
  • с помощью любого плеера, поддерживающего DirectShow-фильтры (например, Windows Media Player, обычно встроенного в Windows), предварительно установив необходимые декодеры:
    • ffdshow tryouts — универсальный декодер видео и звука с поддержкой H.264, AC3, DTS и других форматов;
    • Haali Media Splitter — для чтения данных из контейнеров MKV и MP4;
    • AC3Filter — специализированный декодер звука во многих форматах, в том числе DTS и AC3, обладающий широкими возможностями.