кодеки что это в видео

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

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

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

Содержание

Содержание

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

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

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

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

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

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

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

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

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

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

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

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

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

Большинство создаваемого видеоконтента обрабатывается кодеками XviD, MPEG-1\2, 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.

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

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

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

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

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

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

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

Источник

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

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

кодеки что это в видео. chto takoe videokodeki i audiokodeki 06. кодеки что это в видео фото. кодеки что это в видео-chto takoe videokodeki i audiokodeki 06. картинка кодеки что это в видео. картинка chto takoe videokodeki i audiokodeki 06. Современные медийные платформы позволяют пользователям наслаждаться высокодетализированным видео и потрясающими аудиоэффектами в режиме онлайн.

Вы можете сами подготовить видео к просмотру в вашем проигрывателе!

Содержание:

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

Название «Кодек» образовалось от английских «coder/decoder», означающих «кодировщик/декодировщик». Если составить первые буквы этих двух слов, получится Ко-Дек. Он представляют собой особый тип программы, который преобразует данные для более удобной передачи и хранения, а потом осуществляет обратный процесс – раскодирование – для воспроизведения и просмотра. Различают кодеки для видеопотоков и аудио:

Зачем нужны кодеки

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

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

кодеки что это в видео. chto takoe videokodeki i audiokodeki 07. кодеки что это в видео фото. кодеки что это в видео-chto takoe videokodeki i audiokodeki 07. картинка кодеки что это в видео. картинка chto takoe videokodeki i audiokodeki 07. Современные медийные платформы позволяют пользователям наслаждаться высокодетализированным видео и потрясающими аудиоэффектами в режиме онлайн.

Статичные эпизоды можно легко сжать

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

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

Какие кодеки бывают и как выбрать подходящий

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

Обычно, если возникает проблема с воспроизведением, какой-то отдельный кодек не ищут. Проще и удобнее сразу скачать пакет. Например, набор K-Lite или XP для Windows можно загружать и устанавливать бесплатно. Инсталляция выполняется очень просто: достаточно запустить установщик, и всё будет сделано автоматически. Останется лишь перезагрузить компьютер.

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

Как самостоятельно сжать видео

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

Для начала скачайте редактор «ВидеоМОНТАЖ» с нашего сайта. Установите его, дважды кликнув по загруженному дистрибутиву и следуя подсказкам. Запустите софт и начните новый проект.

кодеки что это в видео. chto takoe videokodeki i audiokodeki 01. кодеки что это в видео фото. кодеки что это в видео-chto takoe videokodeki i audiokodeki 01. картинка кодеки что это в видео. картинка chto takoe videokodeki i audiokodeki 01. Современные медийные платформы позволяют пользователям наслаждаться высокодетализированным видео и потрясающими аудиоэффектами в режиме онлайн.

Начните новый проект

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

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

кодеки что это в видео. chto takoe videokodeki i audiokodeki 02. кодеки что это в видео фото. кодеки что это в видео-chto takoe videokodeki i audiokodeki 02. картинка кодеки что это в видео. картинка chto takoe videokodeki i audiokodeki 02. Современные медийные платформы позволяют пользователям наслаждаться высокодетализированным видео и потрясающими аудиоэффектами в режиме онлайн.

Добавьте нужный видеофайл

Прежде, чем переходить непосредственно к выбору формата кодирования, можно улучшить видеоряд. Особенно это актуально для тех случаев, когда вы загрузили собственную видеосъёмку. Программа «ВидеоМОНТАЖ» предлагает следующие интересные возможности:

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

кодеки что это в видео. chto takoe videokodeki i audiokodeki 03. кодеки что это в видео фото. кодеки что это в видео-chto takoe videokodeki i audiokodeki 03. картинка кодеки что это в видео. картинка chto takoe videokodeki i audiokodeki 03. Современные медийные платформы позволяют пользователям наслаждаться высокодетализированным видео и потрясающими аудиоэффектами в режиме онлайн.

Выберите формат сохранения

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

кодеки что это в видео. chto takoe videokodeki i audiokodeki 04. кодеки что это в видео фото. кодеки что это в видео-chto takoe videokodeki i audiokodeki 04. картинка кодеки что это в видео. картинка chto takoe videokodeki i audiokodeki 04. Современные медийные платформы позволяют пользователям наслаждаться высокодетализированным видео и потрясающими аудиоэффектами в режиме онлайн.

Выберите подходящий кодек

Укажите желаемый video codec и оцените прогнозируемый размер ролика после кодировки. Сомневаетесь, какой предпочесть? Давайте рассмотрим особенности каждого:

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

кодеки что это в видео. chto takoe videokodeki i audiokodeki 05. кодеки что это в видео фото. кодеки что это в видео-chto takoe videokodeki i audiokodeki 05. картинка кодеки что это в видео. картинка chto takoe videokodeki i audiokodeki 05. Современные медийные платформы позволяют пользователям наслаждаться высокодетализированным видео и потрясающими аудиоэффектами в режиме онлайн.

Теперь можно наслаждаться просмотром!

Надеемся, что данная статья помогла вам разобраться, что такое кодеки для Windows, зачем они нужны и как самостоятельно кодировать видео. Если вы ещё не оценили удобный многофункциональный видеоредактор «ВидеоМОНТАЖ» – скачивайте его и работайте с видеоматериалом, как профи!

Источник

Как работает видеокодек. Часть 2. Что, для чего, как

Первая часть: Основы работы с видео и изображениями

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

Что? Видеокодек — это часть программного/аппаратного обеспечения, сжимающая и/или распаковывающая цифровое видео.

Для чего? Невзирая на определённые ограничения как по пропускной способности так
и по количеству места для хранения данных, рынок требует всё более качественного видео. Припоминаете, как в прошлом посте мы подсчитали необходимый минимум для 30 кадров в секунду, 24 бита на пиксель, с разрешение 480×240? Получили 82,944 Мбит/с без сжатия. Сжатие — это пока единственный способ вообще передавать HD/FullHD/4K на телевизионные экраны и в Интернет. Как это достигается? Сейчас кратко рассмотрим основные методы.

кодеки что это в видео. image loader. кодеки что это в видео фото. кодеки что это в видео-image loader. картинка кодеки что это в видео. картинка image loader. Современные медийные платформы позволяют пользователям наслаждаться высокодетализированным видео и потрясающими аудиоэффектами в режиме онлайн.
Перевод сделан при поддержке компании EDISON Software.

Кодек vs Контейнер

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

Обычно расширение видеофайла указывает на разновидность контейнера. Например, файл video.mp4, вероятно всего, является контейнером MPEG-4 Part 14, а файл с именем video.mkv — это, скорее всего, матрёшка. Чтобы быть полностью уверенным в кодеке и формате контейнера, можно воспользоваться FFmpeg или MediaInfo.

Немного истории

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

Видеокодек H.261 появился в 1990 году (технически — в 1988) и был создан для работы со скоростью передачи данных 64 Кбит/с. В нём уже использовались такие идеи, как цветовая субдискретизация, макроблоки и т.п. В 1995 году был опубликован стандарт видеокодека H.263, который развивался до 2001 года.

В 2003 году была завершена первая версия H.264/AVC. В том же году компания «TrueMotion» выпустила свой бесплатный видеокодек, сжимающий видео с потерями под названием VP3. В 2008 году Google купил эту компанию, выпустив VP8 в том же году. В декабре 2012 года Google выпустил VP9, ​​и он поддерживается примерно на ¾ рынка браузеров (включая мобильные устройства).

AV1 — это новый бесплатный видеокодек с открытым исходным кодом, разработанный Альянсом за открытые медиа (AOMedia), в состав которого входят известнейшие компании, как-то: Google, Mozilla, Microsoft, Amazon, Netflix, AMD, ARM, NVidia, Intel и Cisco. Первая версия кодека 0.1.0 была опубликована 7 апреля 2016 года.

Рождение AV1

В начале 2015 года Google работал над VP10, Xiph (который принадлежит Mozilla) работал над Daala, а Cisco сделала свой бесплатный видеокодек под названием Thor.

Затем MPEG LA сначала объявила годовые лимиты для HEVC (H.265) и плату, в 8 раз выше, чем за H.264, но вскоре они снова изменили правила:

без годового лимита,
плата за контент (0,5% от выручки) и
плата за единицу продукции примерно в 10 раз выше, чем за H.264.

Альянс за открытые медиа был создан компаниями из разных сфер: производителями оборудования (Intel, AMD, ARM, Nvidia, Cisco), поставщиками контента (Google, Netflix, Amazon), создателями браузеров (Google, Mozilla) и другими.

У компаний была общая цель — видеокодек без лицензионных отчислений. Затем появляется AV1 с гораздо более простой патентной лицензией. Тимоти Б. Терриберри сделал сногсшибательную презентацию, ставшей источником текущей концепции AV1 и её модели лицензии.

Вы будете удивлены, узнав, что можно анализировать кодек AV1 через браузер (заинтересовавшиеся могут перейти по адресу aomanalyzer.org).

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

Универсальный кодек

Разберём основные механизмы, лежащие в основе универсального видеокодека. Большинство из этих концепций полезны и используются в современных кодеках, таких как VP9, AV1 и HEVC. Предупреждаю, что многие объясняемые вещи будут упрощены. Иногда будут использоваться реальные примеры (как в случае с H.264) для демонстрации технологий.

1-й шаг — разбиение изображения

Первым шагом является разделение кадра на несколько разделов, подразделов и далее.

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

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

Обычно кодеки организуют эти разделы в секции (или фрагменты), макроблоки (или блоки дерева кодирования) и множество подразделов. Максимальный размер этих разделов варьируется, HEVC устанавливает 64×64, в то время как AVC использует 16×16, а подразделы могут дробиться до размеров 4×4.

Припоминаете разновидности кадров из прошлой статьи?! Это же можно применить и к блокам, так что, у нас могут быть I-фрагмент, B-блок, P-макроблок и т.п.

Для желающих попрактиковаться — посмотрите как изображение разобъётся на разделы и подразделы. Для этого можно воспользоваться уже упоминаемой в прошлой статье Intel Video Pro Analyzer (тот, что платный, но с бесплатный пробной версией, имеющей ограничение на первые 10 кадров). Здесь проанализированы разделы VP9:

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

2-й шаг — прогнозирование

Как только у нас появились разделы, мы можем составлять астрологические прогнозы по ним. Для INTER-прогнозирования необходимо передать векторы движения и остаток, а для INTRA-прогнозирования передаётся направление прогноза и остаток.

3-й шаг — преобразование

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

Хотя есть и другие методы, рассмотрим более подробно дискретное косинусное преобразование (DCT — от discrete cosine transform). Основные функции DCT:

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

Давайте возьмем такой блок пикселей 8×8:

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

Этот блок рендерится в следующее изображение 8 на 8 пискелей:

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

Применим DCT к этому блоку пикселей и получаем блок коэффициентов размером 8×8:

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

И если отрендерим этот блок коэффициентов, получим такое изображение:

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

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

У этого блока коэффициентов есть интересное свойство: он отделяет высокочастотные компоненты от низкочастотных.

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

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

Частота означает, насколько быстро меняется сигнал.

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

Сначала конвертируем его в частотную область.

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

Далее отбрасываем часть (67%) коэффициентов, в основном нижнюю правую часть.

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

Наконец, восстанавливаем изображение из этого отброшенного блока коэффициентов (помните, оно должно быть обратимым) и сравниваем с оригиналом.

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

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

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

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

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

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

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

4-й шаг — квантование

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

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

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

Можем ли обратить этот блок коэффициентов? Да, можем, умножив на то же значение, на которые делили.

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

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

5 шаг — энтропийное кодирование

После того, как мы квантовали данные (блоки изображений, фрагменты, кадры), все еще можем сжимать их без потерь. Существует много алгоритмических способов сжатия данных. Мы собираемся кратко познакомиться с некоторыми из них, для более глубокого понимания вы можете прочитать книгу «Разбираемся со сжатием: сжатие данных для современных разработчиков» («Understanding Compression: Data Compression for Modern Developers»).

Кодирование видео с помощью VLC

Сжимаем поток, предполагая, что в итоге потратим 8 бит на каждый символ. Без сжатия на символ понадобилось бы 24 бита. Если каждый символ заменять на его код, то получается экономия!

Первый шаг заключается в кодировании символа e, который равен 10, а второй символ — это a, который добавляется (не математическим способом): [10] [0], и, наконец, третий символ t, который делает наш финальный сжатый битовый поток равным [10] [0] [1110] или же 1001110, для чего требуется всего 7 бит (в 3,4 раза меньше места, чем в оригинале).

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

И кодер, и декодер должны иметь доступ к таблице символов со своими бинарными кодами. Поэтому также необходимо отправить во входных данных и таблицу.

Арифметическое кодирование

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

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

Теперь давайте закодируем поток из трёх символов: eat.

Сначала выбираем первый символ e, который находится в поддиапазоне от 0,3 до 0,6 (не включая). Берём этот поддиапазон и снова делим его в тех же пропорциях, что и ранее, но уже для этого нового диапазона.

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

Давайте продолжим кодировать наш поток eat. Теперь берём второй символ a, который находится в новом поддиапазоне от 0,3 до 0,39, а затем берём наш последний символ t и, повторяя тот же процесс снова, получаем последний поддиапазон от 0,354 до 0,372.

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

Нам просто нужно выбрать число в последнем поддиапазоне от 0,354 до 0,372. Давайте выберем 0,36 (но можно выбрать и любое другое число в этом поддиапазоне). Только с этим числом сможем восстановить наш оригинальный поток. Это как если бы мы рисовали линию в пределах диапазонов для кодирования нашего потока.

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

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

С первым диапазоном замечаем, что наше число соответствует срезу, следовательно, это наш первый символ. Теперь снова разделяем этот поддиапазон, выполняя тот же процесс, что и раньше. Тут можно заметить, что 0,36 соответствует символу a, и после повторения процесса мы пришли к последнему символу t (формируя наш исходный кодированный поток eat).

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

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

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

6 шаг — формат битового потока

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

Мы поверхностно ознакомимся с битовым потоком H.264. Нашим первым шагом является создание минимального битового потока H.264 (FFmpeg по умолчанию добавляет все параметры кодирования, такие как SEI NAL — чуть дальше узнаем, что это такое). Можем сделать это, используя наш собственный репозиторий и FFmpeg.

Данная команда сгенерирует необработанный битовый поток H.264 с одним кадром, разрешением 64×64, с цветовым пространством YUV420. При этом используется в качестве кадра следующее изображение.

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

Битовый поток H.264

Стандарт AVC (H.264) определяет, что информация будет отправляться в макрокадрах (в понимании сети), называемых NAL (это такой уровень абстракции сети). Основной целью NAL является предоставление «дружественного к сети» представления видео. Этот стандарт должен работать на телевизорах (на основе потоков), в Интернете (на основе пакетов).

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

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

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

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

Идентификатор типа NALОписание
0Неизвестный тип
1Кодированный фрагмент изображения без IDR
2Кодированный раздел данных среза A
3Кодированный раздел данных среза B
4Кодированный раздел данных среза C
5Кодированный IDR-фрагмент IDR-изображения
6Дополнительная информация о расширении SEI
7Набор параметров SPS-последовательности
8Набор параметров PPS-изображения
9Разделитель доступа
10Конец последовательности
11Конец потока
..

Обычно первым NAL битового потока является SPS. Этот тип NAL отвечает за информирование об общих переменных кодирования, таких как профиль, уровень, разрешение и прочее.

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

Например, первый байт после маркера синхронизации равен 01100111, где первый бит (0) находится в поле forbidden_zero_bit. Следующие 2 бита (11) сообщает нам поле nal_ref_idc, которое указывает, является ли этот NAL ссылочным полем или нет. И остальные 5 бит (00111) сообщает нам поле nal_unit_type, в данном случае это блок SPS (7) NAL.

Второй байт (binary=01100100, hex=0x64, dec=100) в SPS NAL — это поле profile_idc, которое показывает профиль, который использовал кодер. В данном случае использовался ограниченный высокий профиль (т.е. высокий профиль без поддержки двунаправленного B-сегмента).

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

Если ознакомиться со спецификацией битового потока H.264 для SPS NAL, то обнаружим много значений для имени параметра, категории и описания. Например, давайте посмотрим на поля pic_width_in_mbs_minus_1 и pic_height_in_map_units_minus_1.

Название параметраКатегорияОписание
pic_width_in_mbs_minus_10ue(v)
pic_height_in_map_units_minus_10ue(v)

Если продолжить проверку нашего созданного видео в двоичном виде (например: ), то можно перейти к последнему NAL, который является самим кадром.

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

Здесь видим его первые 6 байтовых значений: 01100101 10001000 10000100 00000000 00100001 11111111. Поскольку известно, что первый байт указывает на тип NAL, в данном случае (00101) это IDR фрагмент (5), и тогда получится дополнительно исследовать его:

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

Используя информацию спецификации, получится декодировать тип фрагмента (slice_type) и номер кадра (frame_num) среди других важных полей.

Чтобы получить значения некоторых полей (ue(v), me(v), se(v) или te(v)), нам нужно декодировать фрагмент, используя специальный декодер, основанный на экспоненциальном коде Голомба. Этот метод очень эффективен для кодирования значений переменных, особенно, когда если есть много значений по умолчанию.

Значения slice_type и frame_num этого видео равны 7 (I-фрагмент) и 0 (первый кадр).

Битовый поток можно рассматривать как протокол. Если желаете узнать больше о битовом потоке, стоит обратиться к спецификации ITU H.264. Вот макросхема, показывающая, где находятся данные изображения (YUV в сжатом виде).

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

Можно исследовать и другие битовые потоки, такие как VP9, H.265 (HEVC) или даже наш новый лучший битовый поток AV1. Все ли они похожи? Нет, но разобравшись хотя бы с одним — гораздо проще понять остальные.

Хотите попрактиковаться? Исследуйте поток битов H.264

Можно сгенерировать однокадровое видео и использовать MediaInfo для исследования потока битов H.264. Фактически, ничто не мешает даже поглядеть исходный код, который анализирует поток битов H.264 (AVC).

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

Для практики можно использовать Intel Video Pro Analyzer (я уже вроде говорил, что программа платная, но есть бесплатная пробная версия, с ограничением на 10 кадров?).

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

Обзор

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

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

Ранее рассчитали, что потребуется 139 Гб дискового пространства для хранения видеофайла длительностью один час при качестве 720p и 30 fps. Если использовать методы, которые разобрали в этой статье (межкадровые и внутренние прогнозы, преобразование, квантование, энтропийное кодирование и т.п.), то можно достичь (исходя из того, что тратим 0,031 бит на пиксель), видео вполне удовлетворительного качества, занимающее всего 367,82 Мб, а не 139 Гб памяти.

Как H.265 достигает лучшей степени сжатия, чем H.264?

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

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

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *