Что это за формат H 264?

Цифровой формат для сжатия видео H.264 (MPEG4 AVC). Стандарт видеозаписи VHS

Что это за формат H 264?

Цифровой формат для сжатия видео H.264 (MPEG4 AVC)

Что такое H.264

Почему важно сжатие?

Представьте слона, пытающегося пробраться в мышиную норку. Исходный формат видео HD (высокой четкости), используемый при записи веб-камерой или цифровой камерой, может занимать очень много места на жестком диске — гигабайты, которые могли бы пригодиться для других файлов. Веб-сайты, включая Facebook и YouTube, а также поставщики интернет-услуг, такие как Comcast и ATT, устанавливают ограничения по размеру файлов. Файл видео высокой четкости в исходном формате зачастую может оказаться слишком велик для сайтов и поставщиков интернет-услуг.

Как работает H.264?

Видео — это поток отдельных изображений или кадров. H.264 удаляет из потока избыточную информацию. Каждый кадр делится на маленькие блоки размером в 4×4 пикселя для высокоточного анализа. При обработке кадра средство сжатия (кодировщик) ищет блоки в предыдущем кадре, только что записанном, и в следующем кадре в последовательности. Оно находит, что изменилось, а что осталось прежним. Затем избыточная информация удаляется. Этот процесс повторяется на протяжении всего потока.

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

Как работает H.264 с веб-камерой?

Изображения захватываются датчиком веб-камеры, оцифровываются и сжимаются в формат H.264. Все кодирование видео выполняется в камере, так что вся нагрузка не ляжет на процессор компьютера. Затем видеоданные передаются по USB-кабелю для просмотра на компьютере, для видеообщения в реальном времени, для роликов Facebook и YouTube, для компактного хранения на диске.

Что для пользователя означает поддержка формата H.264 в камере?

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

Вот список функций, не поддерживаемых при разрешении 720p и 1080p:

  • Панорамирование, масштабирование и изменение угла съемки
  • Слежение за лицом

Примечание. Эти функции по-прежнему можно использовать (только для видеозаписей), если выбрать более низкое разрешение видео вместо 720p или 1080p.

Особенности стандарта сжатия видеоданных H.264

Преимущества 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

Поддержка 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:
    • Media Player Classic Home Cinema (MPC-HC);
    • VLC media player.
  • с помощью любого плеера, поддерживающего DirectShow-фильтры (например, Windows Media Player, обычно встроенного в Windows), предварительно установив необходимые декодеры:
    • ffdshow tryouts — универсальный декодер видео и звука с поддержкой H.264, AC3, DTS и других форматов;
    • Haali Media Splitter — для чтения данных из контейнеров MKV и MP4;
    • AC3Filter — специализированный декодер звука во многих форматах, в том числе DTS и AC3, обладающий широкими возможностями.

H.264, чем открыть?

«У меня имеется система видеонаблюдения, и я хочу просмотреть свои прошлые записи. Видеофайлы загружаются в формате .h264, я пробовал открывать их с помощью VLC Player, но проиграть файлы не удалось».

Эти и другие вопросы, связанные с файлами формата .h264, сегодня встречаются достаточно часто. Связано это с тем, что стандарт H.264 завоевал большую популярность, как в любительском, так и в профессиональном цифровом видео.

Что такое файл стандарта H.264?

Говоря простым языком, файл H.264 (MPEG-4 AVC) – это видеофайл, закодированный в лицензируемом стандарте сжатия видео H.264, обеспечивающем высокий уровень компрессии (низкий битрейт) при отличном качестве получаемого изображения.

Справка! Битрейт – количество бит (единиц информации), передающихся за единицу времени. Для фильмов стандарта Full HD (1080 p) битрейт видеофайла составляет около 10 Мбит/сек.

Из-за высокого уровня компрессии и других своих достоинств кодек H.264 заменил собой предыдущий кодек MPEG-4 ASP и широко применяется в видеокамерах AVCHD, на дисках Blu-ray и HD DVD, на ТВ HDTV и т.д.

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

  • аудио в кодеке может быть сжато отдельно и захвачено вместе с видео потоком H.264;
  • обратно совместим со старыми стандартами сжатия, к примеру H.263/H.261 и т.д.;
  • уменьшает размер цифрового видеофайла примерно на 50%;
  • открыт для лицензирования для всех поставщиков;
  • является стандартом взаимодействия между различными устройствами;
  • позволяет передавать видео с камер высокого разрешения (high definition) через Интернет.

Чем открыть файл формата .h264 в ОС Windows?

Существует множество медиаплееров в ОС Windows, проигрывающих файлы формата h.264.

Некоторые лучшие из них:

  • VLC Media Player;
  • KMPlayer;
  • BSPlayer;
  • Light Alloy;
  • GOM Player;
  • Media Player Classic.

Воспроизведение файлов H.264 с помощью медиаплеера VLC

Узнайте о проверенных способах конвертирования видео, из нашей новой статьи — «Как переформатировать видео».

К примеру, у пользователя имеется отснятый материал с камер видеонаблюдения или бытовой видеокамеры в формате .h264 и ему требуется воспроизвести отснятое видео в ОС Windows.

Шаг 1. Открыть интернет-браузер, перейти по ссылке: http://www.videolan.org/vlc/index.html и нажать «Download VLC» («Скачать») для загрузки последней версии VLC плеера.

Примечание! Скачанный файл можно найти в «Настройках» браузера, перейдя в его «Загрузки».

Шаг 2. Запустить скачанный файл.

Шаг 3. Выбрать язык и нажать «OK».

Шаг 4. Трижды нажать «Далее».

Шаг 5. Нажать «Установить».

Шаг 6. После установки программного обеспечения нажать «Готово».

Шаг 7. После запуска программы нажать «Инструменты» и щелкнуть «Настройки».

Шаг 8. Раскрыть слева щелчками мыши пункт «Ввод/кодеки» и выбрать «Демультиплексоры».

Шаг 9. Выбрать справа в выпадающем списке «Модуль демультиплексора» вариант «Демультиплексор H264» и нажать «Сохранить».

Теперь можно открывать и просматривать файлы H.264 в медиаплеере VLC. Для этого необходимо:

Шаг 1. Нажать «Медиа» и щелкнуть «Открыть файл…».

Шаг 2. Выбрать в раскрывающемся списке «все файлы», щелкнуть мышью в окне на нужном файле и нажать «Открыть».

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

Видео откроется в окне видеоплеера.

После просмотра видео можно вернуть автоматический выбор демультиплексора.

Совет! При проблемах воспроизведения видео с кодеками H.264 также можно попробовать переименовать расширение файла .h264 в файл .mpg и попробовать воспроизвести его.

Установка медиа декодера ffdshow

Если файл не проигрывается, в операционную систему можно установить универсальный медиа декодер ffdshow.

Шаг 1. Перейти по адресу: http://ffdshow-tryout.sourceforge.net/download.php и нажать на ссылку с 32- или 64-bit ОС, в зависимости от установленной у пользователя версии Windows.

Шаг 2. Запустить скачанный файл из папки «Загрузки» или из другой папки, в которую сохранили при скачивании.

Шаг 3. Нажать «OK».

Шаг 4. Шесть раз нажать «Далее».

Шаг 5. Нажать «Установить».

Шаг 6. Снять галочки с пунктов настройки декодера и нажать «Завершить».

После установки медиа декодера он сможет проигрывать видеопоток H.264 в любом DirectShow-совместимом медиаплеере автоматически.

Видео — Как открыть формат H.264?

Понравилась статья?
Сохраните, чтобы не потерять!

Магия H.264

H.264 — стандарт сжатия видео. И он вездесущ, его используют для сжатия видео в интернете, на Blu-ray, телефонах, камерах наблюдения, дронах, везде. Все сейчас используют H.264.

Нельзя не отметить технологичность H.264. Он появился в результате 30-ти с лишним лет работы с одной единственной целью: уменьшение необходимой пропускной способности канала для передачи качественного видео.

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

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

1080p @ 60 Hz = 1920x1080x60x3 =>

370 Мб/с данных.

Этим практически невозможно было бы пользоваться. Blu-ray диск на 50Гб мог бы вмещать всего около 2 мин. видео. С копированием так же будет не легко. Даже у SSD возникнут проблемы с записью из памяти на диск.

Поэтому да, сжатие необходимо.

Обязательно отвечу на этот вопрос. Но сперва я покажу кое-что. Взгляните на главную страницу Apple:

Я сохранил изображение и приведу в пример 2 файла:

Эмм… что? Размеры файлов кажется перепутали.

Нет, с размерами всё в порядке. Видео H.264 с 300 кадрами весит 175 Кб. Один единственный кадр из видео в PNG — 1015 Кб.

Кажется, мы храним в 300 раз больше данных в видео, но получаем файл весом в 5 раз меньше. Получается H.264 эффективнее PNG в 1500 раз.

Как такое возможно, в чём заключается приём?

А приёмов очень много! H.264 использует все приёмы о которых вы догадываетесь (и уйму о которых нет). Давайте пройдёмся по основным.

Избавляемся от лишнего веса.

Представьте, что вы готовите машину к гонкам и вам нужно её ускорить. Что вы сделаете в первую очередь? Вы избавитесь от лишнего веса. Допустим, машина весит одну тонну. Вы начинаете выбрасывать ненужные детали… Заднее кресло? Пфф… выбрасываем. Сабвуфер? Обойдёмся и без музыки. Кондиционер? Не нужен. Коробка передач? В мусо… стойте, она еще пригодится.

Таким образом вы избавитесь от всего, кроме необходимого.

Этот метод отбрасывания ненужных участков называется сжатием данных с потерями. H.264 кодирует с потерями, отбрасывая менее значимые части и сохраняя при этом важные.

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

Важные части? Как алгоритм может определять их важность в кадре?

Существует несколько очевидных способов урезания изображения. Возможно, верхняя правая четверть картинки бесполезна, тогда можно удалить этот угол и мы уместимся в ¾ исходного веса. Теперь машина весит 750 кг. Либо можно вырезать кромку определенной ширины по всему периметру, важная информацию всегда ведь по середине. Да, возможно, но H.264 всего этого не делает.

Что же на самом деле делает H.264?

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

Видите как на сжатом изображении исчезли отверстия в решётке динамика у MacBook Pro? Если не приближать, то можно и не заметить. Изображение справа весит всего 7% от исходного и это при том, что сжатия в традиционном смысле не было. Представьте машину весом всего лишь 70 кг!

7%, ого! Как возможно так избавиться от детализации?

Для начала немного математики.

Информационная энтропия

Мы подходим к самому интересному! Если вы посещали теорию информатики, то возможно вспомните про понятие информационной энтропии. Информационная энтропия это количество единиц для представления некоторых данных. Заметьте, что это вовсе не размер самих данных. Это минимальное количество единиц, которое нужно использовать, чтобы представить все элементы данных.

Например, если в виде данных взять один бросок монеты, то энтропия получится 1 единица. Если же бросков монетки 2, то понадобятся 2 единицы.

Предположим, что монета весьма странная — её подбросили 10 раз и каждый раз выпадал орёл. Как бы вы кому нибудь рассказали об этом? Вряд ли как-то вроде ОООООООООО, вы бы сказали «10 бросков, все орлы» — бум! Вы только что сжали информацию! Легко. Я вас спас от многочасовой утомительной лекции. Это, конечно же, огромное упрощение, но вы преобразовали данные в некое короткое представление с той же информативностью. То есть уменьшили избыточность. Информационная энтропия данных не пострадала — вы только преобразовали представление. Такой способ называется энтропийным кодированием, который подходит для кодирования любого вида данных.

Частотное пространство

Теперь, когда мы разобрались с информационной энтропией, перейдем к преобразованию самих данных. Можно представить данные в фундаментальных системах. Например, если использовать двоичный код, будут 0 и 1. Если же использовать шестнадцатеричную систему, то алфавит будет состоять из 16 символов. Между вышеупомянутыми системами существует взаимно однозначная связь, поэтому можно легко преобразовывать одно в другое. Пока всё понятно? Идём дальше.

А представьте, что можно представить данные, которые изменяются в пространстве или времени, в совершенно иной системе координат. Например, яркость изображения, а вместо системы координат с x и y, возьмём частотную систему. Таким образом, на осях будут частоты freqX и freqY, такое представление называется частотным пространством[Frequency domain representation]. И существует теорема, что любые данные можно без потерь представить в такой системе при достаточно высоких freqX и freqY.

Хорошо, но что такое freqX и freqY?

freqX и freqY всего лишь другой базис в системе координат. Так же как можно перейти из двоичной системы в шестнадцатеричную, можно перейти из X-Y в freqX и freqY. Ниже изображён переход из одной системы в другую.

Мелкая решётка MacBook Pro содержит высокочастотную информацию и находится в области с высокими частотами. Таким образом мелкие детали имеют высокую частоту, а плавные изменения, такие как цвет и яркость низкую. Всё, что между, остаётся между.

В таком представлении, низкочастотные детали находятся ближе к центру изображения, а высокочастотные в углах.

Пока всё понятно, но зачем это нужно?

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

Ниже знакомый нам ноутбук, но теперь уже с, применёнными к ней, круговыми масками.

В процентах указана информационная энтропия относительно исходного изображения. Если не приближать, то разница не заметна и при 2%! — машина теперь весит 20 кг!

Именно таким образом нужно избавляться от веса. Такой процесс сжатия с потерями называется Квантованием.

Это впечатляет, какие еще приёмы существуют?

Цветовая обработка

Человеческий глаз не особо хорошо различает близкие оттенки цвета. Можно легко распознавать наименьшие различия в яркости, но не цвета. Поэтому должен существовать способ избавления от лишней информации о цвете и сэкономить ещё больше места.

В телевизорах, цвета RGB преобразуются в YCbCr, где Y это компонента яркости (по сути яркость черно-белого изображения), а Cb и Cr компоненты цвета. RGB и YCbCr эквиваленты в плане информационной энтропии.

Зачем же тогда усложнять? RGB разве не достаточно?

Во времена чёрно-белых телевизоров, была только компонента Y. А с началом появления цветных телевизоров у инженеров встала задача о передаче цветного RGB изображения вместе с чёрно-белым. Поэтому вместо двух каналов для передачи, было решено кодировать цвет в компоненты Cb и Cr и передавать их вместе с Y, а цветные телевизоры уже сами будут преобразовывать компоненты цвета и яркости в привычный им RGB.

Но вот в чём хитрость: компонента яркости кодируется в полном разрешении, а компоненты цвета лишь в четверть. И этим можно пренебречь, т.к. глаз/мозг плохо различает оттенки. Таким образом можно уменьшить размер изображения в половину и с минимальными отличиями. В 2 раза! Машина будет весить 10 кг!

Данная технология кодирования изображения со снижением цветового разрешения называется цветовой субдискретизацией. Она используется повсеместно уже давно и относится не только к H.264.

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

Да. Обрезание картинки это лишь первый шаг. До этого момента мы разбирали отдельно взятый кадр. Пришло время взглянуть на сжатии во времени, где нам предстоит работать с группой кадров.

Компенсация движения

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

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

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

И это именно то, что H.264 делает. H.264 разбивает изображение на макроблоки, обычно 16х16, которые используются для расчёта движения. Один кадр остаётся статичным, обычно его называют I-кадр [Intra frame], и содержит всё. Последующие кадры могут быть либо P-кадры [predicted], либо B-кадры [bi-directionally predicted]. В P-кадрах вектор движения кодируется для каждого макроблока на основе предыдущих кадров, таким образом декодер должен использовать предыдущие кадры, взяв последний из I-кадров видео и постепенно добавляя изменения последующих кадров пока не дойдёт до текущего.

Ещё интереснее обстоят дела с B-кадрами, в которых расчёт производится в обоих направлениях, на основании кадров идущих до и после них. Теперь вы понимаете почему видео в начале статьи весит так мало, это всего лишь 3 I-кадра, в которых мечутся макроблоки.

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

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

Выглядит впечатляюще. Теперь что?

Теперь мы подведём черту, используя традиционное энтропийное кодирование без потерь. Почему нет?

Энтропийное кодирование

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

От такой избыточности можно избавиться энтропийным кодированием. И можно не переживать за сами данные, так как это стандартная технология сжатия без потерь, а значит всё можно восстановить.

Вот теперь всё! В основе H.264 лежат вышеупомянутые технологии. В этом и заключаются приёмы стандарта.

Отлично! Но меня разбирает любопытство узнать, сколько же весит теперь наша машина.

Исходное видео было снято в нестандартном разрешении 1232×1154. Если посчитать, то получится:

5 сек. @ 60 fps = 1232x1154x60x3x5 => 1.2 Гб
Сжатое видео => 175 Кб

Если соотнести результат с оговорённой массой машины в одну тонну, то получится вес равный 0.14 кг. 140 граммов!

Да, это магия!

Конечно же я в очень упрощённом виде изложил результат десятилетних исследований в этой сфере. Если захотите узнать больше, то страница в википедии вполне познавательна.

Разбираемся с форматами и кодеками видео

Содержание

Содержание

Современные медийные платформы позволяют пользователям наслаждаться высокодетализированным видео и потрясающими аудиоэффектами в режиме онлайн.

Однако создание подобного контента было бы невозможно без существования кодеков и контейнеров.

Чем кодеки отличаются от контейнера — их часто путают

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

Смысл понятия «кодек» лежит прямо в его названии:

  • «ко» — компрессор,
  • «дек» — декомпрессор.

Фактически кодек — это цифровой инструмент компрессии и декомпрессии данных. Компрессия (сжатие данных) необходима для экономии занимаемого файлом места. Например, несжатое видео высокой четкости в raw-формате, при 60 кадрах в секунду способно достигать размеров в полтерабайта на каждый час записи.

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

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

Если разобрать стандартное видео со звуком на кодеки и контейнеры, в результате получится три составные части:

  • Видеокодек, отвечающий за степень сжатия и потери качества в процессе.
  • Аудиокодек, отвечает за хранение звуковой дорожки.
  • Контейнер-обертка, хранилище обоих кодеков и дополнительной метаинформации.

В случае если в видео нет звука, аудиокодек не нужен.

Популярные и прогрессивные кодеки

Большинство создаваемого видеоконтента обрабатывается кодеками XviD, MPEG-12, H.264, MPEG-4, DivX, WMV, MJPEG, RealVideo, Bink Video и их вариациями. Для аудиоформатов в основном используют AAC, Opus и MP3-кодеки. Из новинок стоит отметить кодек H.266/VVC, разрабатываемый для потоковой передачи видео в 4K и 8K.

Новый кодек позволяет вдвое сократить объем файла относительно H.265 кодека за счет более сложных алгоритмов. Сложные вычисления потребляют больше ресурсов, до 1000 % от потребления H.265 при кодировании, и до 200% при декодировании.

Какие кодеки в основном поддерживаются современными ТВ и обновляются ли они с прошивкой

Современные системы поддерживают большинство существующих кодеков.

Поддержка кодеков MPEG от первого до четвертого, вариации H.264 для воспроизведения Blu-Ray, а также XviD и DivX, входят в базовый пакет любого современного телевизора.

Ведущие производители всегда следят за ошибками и актуальностью своего программного обеспечения.

Обновление кодеков в процессе прошивки регулируется разработчиками индивидуально под каждую модель SmartTV.

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

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

Какие кодеки используются при проигрывании онлайн-видео (современные кодеки youtube)

В настоящее время стандартом большинства видеосервисов стали кодеки H.264 и MPEG-4, значительно реже встречаются кодеки FFDshow, XviD и DivX.

Одним из самых перспективных кодеков является бесплатный AV1-кодек. Разработан сообществом AOMedia, включающим в себя таких гигантов как AMD, Google, Netflix, Mozilla, Nvidia, Intel, ARM и Cisco. Исходный код кодека открыт и свободно распространяется без каких-либо лицензионных отчислений.

Что даст конечному пользователю переход ютуба на современный AV1

Кодек AV1 разрабатывался для воспроизведения видео онлайн, в браузерах Safari, Firefox, Edge и Chrome. Степень сжатия видео кодеком AV1 превосходит кодеки VP8 и H.264 от 30% до 50%, а кодек HEVC до 30–43 % на высоких битрейтах.

Полный переход видео платформы YouTube на AV1-кодек не только ускорит загрузку всех видеороликов от 20% до 50%, но и позволит стримить в разрешении 4K.

Для минимизации потерь качества, при сохранении и конвертации файла рекомендуется использовать кодеки AV1 для видео и Opus для аудио, обернутые в MP4-контейнер.

Что такое H.264, H.264+, H.265, H.265+ ?

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

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

Стандарты кодирования H.264 и H.264+

Этот стандарт способен обеспечить запись потока из камеры видеонаблюдения в формате HD со скоростью порядка 7-8 мегабайт за секунду. Буквально через несколько лет на смену Н.264 пришел Н.264+ стандарт, который способен проводить запись и съемку в том же формате, но скорость потока значительно выше – от 12 до 20 мегабайт за секунду.

Именно благодаря созданию этих форматов, удалось достигнуть развития цифровых камер, которые сегодня просто поражают своим уровнем качества. Когда появились камеры видеонаблюдения на 2, 3, 4 мегапикселя и т.д., появилась необходимость увеличить уровень производительности сжатия, чтобы гарантировать передачу сигнала в высоком качестве без увеличения пропускной способности канала. В связи с этим технология была снабжена рядом интеллектуальных алгоритмов, которые дали возможность значительно снизить размер – до 75%.

Новый формат, несмотря на похожее название, только с приставкой «+», получил некоторые изменения, которые еще больше повысили эффективность работу оборудования:

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

Но, несмотря на столь прекрасные возможности, появился новый кодек — H.265 и H.265+.

Стандарты кодирования H.265 и H.265+

Именно с момента появления H.265 и H.265+ начался новый этап развития кодека для сжатия видео, который стал на 50% более эффективным, чем формат Н.264. Новая технология смогла получить название HEVC, что в переводе и демонстрирует все основные возможности – сжатие видео с высокой эффективностью.

Благодаря использованию формата H.265, удалось значительно снизить уровень нагрузки на каналы связи, этим самым дает возможность установить более современную камеру в существующей архитектуре наблюдения. Чтобы добиться идеальных результатов, был разработан обновленный H.265+, который вобрал в себя доработанный алгоритм от инженеров компании Hikvision, что увеличило уровень производительности на 67%. Это передовой видеокодек, а специалисты его считают первооткрывателем эры 4К в камерах видеонаблюдения. Теперь высококачественное видео «весит» столько же, сколько раньше стандартное видео HD. Стандарт H.265+ гарантирует следующие преимущества:

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

Как видите, стандарт H.265 и H.265+ — это просто настоящая находка для разработчиков цифровых технологий. Остановимся подробней на возможностях H.265+.

Уникальные возможности стандарта кодирования H.265+

Интеллектуальное кодирование

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

Подавляется цифровой шум

Интегрированная интеллектуальная система анализа способствует тому, что кодек H.265+ научился различать движущиеся объекты и фоновые изображения таким образом, что каждый из них может быть закодирован под разной стратегией кодирования. Если фон сжимается под высоким уровнем сжатия для подавления шума, то модуль кодируется также визуальный шум в сцене. Это привело к тому, что удается достигать высокого уровня качества, несмотря на небольшой вес видеопотока.

Битрейт под долгосрочным контролем

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

Немного реальных цифр

Чтобы обычному пользователю было понятно, почему H.265+ находится на пике популярности среди пользователей и других производителей, проведем тестирование форматов на основе камер с разрешением Full HD при записи 25 кадров в секунду. Если сравнить стандарты H.264 и H.265+, то средний битрейт уменьшили на 83%, а разница между стандартами H.265 и H.265+ — 67%.

Что касается размеров файла, то после суточного наблюдения, вес видеозаписи при стандарте сжатия H.264 составлял 22,7 гигабайт, при H.265 – 11,8 гигабайт, а при использовании инновационного H.265+ — всего 3,9 гигабайт, что показывает реальную экономию пространства.

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

Опорный кадр в H.264. Маленький параметр с большими последствиями

Кодек H.264 де-факто стал стандартом в IP-видеонаблюдении. Преимущества межкадрового сжатия очевидны — меньше поток, меньше нагрузка на ЛВС, меньше объем архива. Вычислительные мощности серверного оборудования растут, и обрабатывать потоки в H.264 уже не проблема. Но всё ли мы знаем об H.264? Какие параметры кодека и на что влияют? Что такое опорный кадр H.264 и какое его значение оптимально? Давайте разбираться.

Структура кодека H.264

Прежде чем говорить об опорном кадре, нужно понимать структуру потока и принципы работы кодека H.264. Для начала немного теории.

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

IP-камера передает полные кадры (JPEG)а, между ними передаются только кодированные изменения изображения относительно опорного кадра. В этом и заключается суть межкадрового сжатия. Полные кадры получили название I-кадры. Далее следуют P и B-кадры. P-кадры содержат информацию об изменениях относительно I-кадра. B-кадры связаны как с I-кадрами, так и с P-кадрами. Все это нацелено на более эффективное сжатие и низкий поток с высоким качеством, но за это приходится расплачиваться высокими затратами на вычислительные мощности и оперативную память сервера при декодировании.

Из схемы структуры потока можно также заметить, что при декодировании невозможно восстановить изображение из B-кадра пока не будет получен P-кадр. В связи с этим мы и видим задержку в отображении потока с IP-камеры в H.264.

Существуют различные профили H.264, которые отличаются возможностями по кодированию. Чтобы не углубляться в теорию стоит отметить, что чем выше спецификация профиля, тем выше степень сжатия с сохранением высокого качества, но тем больше нагрузка на процессор камеры для кодирования и на ресурсы сервера по декодированию потоков. Так же, у старших профайлов больше упомянутая задержка в отображении потока с IP-устройства. Современные камеры в большинстве своем поддерживают Baseline Profile и Main Profile. Профессиональным IP-камерам доступен High Profile.

Некоторые производители IP-камер предоставляют возможность переключаться между профилями H.264. В этом случае доступен выбор — разгрузить ресурсы сервера и уменьшить задержку с Baseline Profile, но увеличить поток и дисковое пространство для архива, либо переключиться на High Profile и эффективно сжимать видеопоток с сохранением высокого качества изображения.

Что такое «опорный кадр»?

В схеме, расположенной выше, видно, что P и B-кадры, по сути, опираются на I-кадр, т.е. содержат информацию об изменениях относительно I-кадра. Именно поэтому I-кадр и получил название «опорный кадр» . Частоту, а точнее период следования опорных кадров, указывают в виде параметра GOP length (Group of Pictures), либо GOV (Group Of VOPs). Это цифровое значение указывается числом (10, 32, 64, 100, …), которое показывает сколько кадров (P и B) следует между опорными I-кадрами.

Можно встретить название для GOP length в виде термина «частота опорных кадров». Это не совсем корректно и правильнее назвать GOP length — период следования опорных кадров. Когда мы обогатились новой терминологией, можно переходить к настройке этого параметра.

Оптимальная частота следования опорных кадров

Размер опорного кадра — весомая часть потока H.264. Чем чаще следует опорный кадр (меньше значение GOP length) — тем больше битрейт, но тем легче его обрабатывать процессору видеосервера при декодировании (отображения на УРМ или работе видеоаналитики). И наоборот, чем реже опорный кадр (больше значение GOP length) — тем меньше поток, но тем больше возможные артефакты межкадрового сжатия, и тем меньше восстановленный кадр соответствует реальному изображению с IP-камеры. При большом периоде следования опорного кадра требуются большие вычислительные ресурсы ПЭВМ и объем памяти для хранения последовательности кадров для восстановления.

Оптимальное значение периода следования опорных кадров средней сцены и типовых задач видеонаблюдения выбирает производитель IP-камеры и выставляет по умолчанию в настройках кодека. Встречаются IP-камеры со значением GOP length от 32 до 120 и более. В то же время, значение частоты опорного кадра (GOP length) оказывает значительное влияние на работу систем видеоанализа, и об этом мало кто задумывается, а точнее никто и не знает. Вот об этом поговорим подробно.

Значение опорного кадра для видеонаблюдения

Это связано с тем, что для восстановления дополнительных кадров из потока H.264 для работы видеоаналитики пришлось бы задействовать значительные вычислительные ресурсы ПЭВМ.

А вот теперь представьте себе, что для темпа видеоввода 25 к/с и значения GOP=100 мы получаем опорный кадр для работы видеоаналитики каждые 4 секунды. Какая точность и задержка у нас будет, хотя бы в детекции движения? За 4 секунды может произойти многое, а алгоритмы видеоанализа этого могут и не заметить, т.к. опорные кадры до возникновения происшествия и после будут одинаковыми. Для проверки этой теории мы даже сняли видеоролик и разместили его на нашем канале в YOUTUBE:

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

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

Некоторые производители решают эту проблему через изменение настроек IP-устройств при их подключении к VMS. Семейство продуктов ITV|AxxonSoft (Интеллект, AxxonNext) автоматически меняет значение частоты следования опорных кадров в IP-камере и устанавливает GOP=8, но это возможно только в том случае, если камера качественно интегрирована. Если же мы подключаемся по RTSP или Onvif, то этого не происходит, и в детекции возможны проблемы и пропуски. При этом следует помнить, что изменение «опорника» сильно сказывается на потоке с IP-устройства и увеличивает размер видеоархива. Как решить эту проблему мы рассказывали в статье Настройка детектора движения в ПО Интеллект.

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

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

Резюме

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

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

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

Каждый специалист инженерного отдела компании Видеомакс — это гуру в системах видеонаблюдения. По любому вопросу вы можете проконсультироваться у сотрудников отдела продаж или инженерного отдела по телефону +7(495)640-55-46 или отправить вопрос на email: info@videomax-server.ru

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

Борис Аладышкин/ автор статьи

Приветствую! Я являюсь руководителем данного проекта и занимаюсь его наполнением. Здесь я стараюсь собирать и публиковать максимально полный и интересный контент на темы связанные с современными технологиями и программным обеспечением. Уверен вы найдете для себя немало полезной информации. С уважением, Борис Аладышкин.

Понравилась статья? Поделиться с друзьями:
Itsovet61.ru
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: