видеокодек vp9 что такое
Видеокодек vp9 что такое
Автор: admin от 21-08-2015, 21:59, посмотрело: 4084
Данные кодеки соревнуются за право стать форматом компрессии видео следующего поколения, вдвое превосходя по своей эффективности действующий отраслевой стандарт – H.264. Они будут иметь решающее значение для определения способов доставки 4K/Ultra HD контента на наши телевизоры, персональные компьютеры и планшеты ближайшие несколько лет. Помимо этого, они могут ускорить и облегчить загрузку и потоковую трансляцию HD-видео на медленных соединениях благодаря способности вдвое уменьшать размер файлов с 720p и 1080p видео.
К тому же кодеки H.265 и VP9 являются вполне совместимыми и с 8К-контентом, что делает их, по большому счёту, одной из основ будущего мира телевидения и видео в эпоху отмирания физических носителей. Вот почему они так важны.
Кодек H.265 изначально разрабатывался как HEVC (данную аббревиатуру следует расшифровывать как «High Efficiency Video Coding» – «Высокоэффективное кодирование видео») совместными усилиями двух известных альянсов — Video Coding Experts Group (VCEG) и Moving Picture Experts Group (MPEG). В апреле 2013 года HEVC был официально утверждён в качестве кодека, который должен прийти на смену H.264. Как и в случае с H.264, разработчики программного обеспечения и производители оборудования должны получать за определённую плату лицензии на использование кодека. Более подробно о процессе лицензирования HEVC мы писали в статье «Новые лицензионные сборы делают будущее HEVC туманным».
В то же время, кодек VP9 имеет открытый исходный код и его использование не требует уплаты роялти. Он был разработан компанией Google в качестве преемника кодека VP8 – относительно успешной альтернативы H.264. В процессе разработки кодек VP9 носил рабочее имя «NGOV» (Next Gen Open Video – Открытое видео нового поколения), и компания Google уже включила его поддержку в браузеры Chrome, а также в YouTube.
Совершенно не так, как вы, наверное, себе это представляете. В то время, как принцип формата 4К заключается в увеличении качества картинки за счёт уменьшения размера отдельных пикселей её формирующих, кодек H.265 по сути делает эти пиксели большими, дабы уменьшить битрейт (и, соответственно, размер файла). При воспроизведении же файла данный кодек проделывает с видео целую серию трюков, возвращая назад все необходимые детали.
В частности, H.264 может взять макроблок размером 16х16 пикселей и провести девять «направленных интрапредсказаний» или же обоснованных предположений, которые позволяют перестроить пиксели внутри каждого из блоков. Кодек H.265 может взять суперблок размером 64х64 и провести 35 «направленных интрапредсказаний», дабы перестроить пиксели в нём. Подобно кодеку H.264, кодек H.265 изменяет размер обрабатываемых блоков. К примеру, он может использовать намного меньшие блоки (до 4х4 пикселей), формирующие такие детализированные фрагменты изображения, как черты лица, и блоки большего размера для отображения неба или относительно однородного фона.
Кодек VP9 в целом делает то же самое. Он также может захватывать суперблоки размером 64х64, однако, в отличие от H.265, они не обязательно должны быть квадратными, а, стало быть, кодек для большей эффективности обработки берет блоки размером 64х32 или 4х8. С другой стороны, он имеет лишь 10 вариантов предсказания для их перестройки. Циники утверждают, что достоинство использования VP9 вместо H.265 состоит лишь в возможности избежать нарушения авторских прав.
Само собой разумеется, что для всех этих преобразований обеим стандартам требуются большая мощность процессора в сравнении с H.264 и VP8. Однако, учитывая тот факт, что мощности процессоров всё же значительно выросли с момента запуска данных кодеков в 2003 и 2008 годах соответственно, это не такая уж большая проблема.
Какой же из них лучше?
Для начала скажем, что мы, в общем-то, сейчас сильно упрощаем теорию по данным форматам, однако несмотря на то, что в итоге они позволяют получать файлы примерно одинакового размера, первые отзывы экспертов говорят о том, что кодек H.265 обеспечивает более высокое качество видео, а VP9 больше подходит для потоковой трансляции видео.
Большее количество вариантов предсказания даёт кодеку H.265 преимущества визуально, но, в то же самое время, кодек VP9 устанавливает более строгие правила декодирования, что делает получаемые потоки более последовательными и надёжными. Эти различия дают возможность понять, на что же именно обращали внимание создатели кодеков в первую очередь. Впрочем, официально обе стороны утверждают, что предлагаемые ими стандарты не имеют недостатков.
Кто это поддерживает?
Сравнение H.265 и VP9 подобно сравнению HDMI и DisplayPort в том смысле, что отсутствие необходимости уплачивать роялти за VP9 и DisplayPort должно давать им определённые преимущества, но богатые истории предшественников H.265 и HDMI указывают на то, что они должны иметь более широкую поддержку в отрасли. Ранее это сделало H.264 победителем в борьбе за лидерство с VP8.
На этот раз схватка ожесточённее. Компания Google использовала различные технологические выставки для того, чтобы продемонстрировать тот факт, что кодек VP9 уже получил поддержку компаний LG, Panasonic, Sony, Samsung, Toshiba, Philips, Sharp, ARM, Intel, Nvidia, Qualcomm, Realtek Semiconductor и Mozilla. Как мы упоминали выше, компания Google таже встроила поддержку кодека VP9 в свой браузер Chrome и в платформу YouTube.
Однако обратной стороной медали является то, что упомянутые компании также поддержали кодек H.265, и даже компания Google обеспечит его поддержку в браузере Chrome, а также не исключает поддержки на платформе YouTube.
Соответственно, большая часть компаний склоняется к тому, чтобы поддержать оба формата, а стало быть, в итоге мы получим ситуацию, сходную с аудиоплеерами: сложно найти плеер, который бы не поддерживал как MP3, так и AAC.
Следует ли переживать относительно поддержки форматов?
На фоне упадка физических носителей и усиления 4K/Ultra HD ещё не было большего давления на новые стандарты компрессии видео для доставки контента. К счастью, оба формата хороши, пусть и немного по-своему и, в отличие от форматных войн прошлого, очень похоже на то, что в итоге они оба займут своё место под солнцем, поскольку в отрасли, скорее всего, не готовы ни к тому, чтобы всецело зависеть от уплаты лицензионного сбора, ни к тому, чтобы броситься в объятия к Google. А это значит, что, скорее всего, в большинстве устройств, которые появятся на рынке, будет присутствовать поддержка обеих форматов. Великолепная новость для всех нас!
Свободный кодек VP9 улучшает видеоролики на YouTube
Xakep #273. Log4Hell
Недавно компания Google начала применять свободный видеокодек VP9 для кодирования новых видеороликов, которые закачиваются на YouTube. Пришло время подвести первые итоги этого эксперимента.
Кодек VP9 умеет быстро кодировать видеоматериалы с размером кадра до 4K (2160p), при этом обеспечивает гораздо лучшее качество и более высокий уровень сжатия, чем H.264 и другие кодеки.
Для сравнения, вот один и тот же кадр из видеоролика, сжатого VP9 и H.264 с потоком 600 Кбит/с.
Разница видна невооружённым глазом.
Новый видеокодек гораздо лучше сжимает файлы. В результате, пользователи могут смотреть видео лучшего качества на канале с низкой пропускной способностью.
Google приводит статистику, сколько пользователей на медленном интернете смогли улучшить качество просматриваемого видео с 240p до 360p после апгрейда YouTube на VP9.
Пока что Google не решается начать перекодирование старых материалов в VP9. Возможно, в этом нет особого смысла, но вот свежезалитые видеоролики сплошь кодируются в VP9.
Статьи
Простыми словами о видеокодеках 4K
Если у вас есть опыт трансляции или записи видеосигнала, вы наверняка знаете, что такое видеокодеки. Видеокодек – это устройство или программа, которая позволяет вам сжимать (кодировать) большие видеофайлы для последующего просмотра или редактирования – название образуется одновременно из таких английских слов – « co mpressor/ dec ompressor» ( ко мпрессор/ дек омпрессор) и « co de/ dec ode» ( ко дировать/ дек одировать).
В контексте особенностей профессиональных настроек прямой трансляции или записи кодеки уменьшают размер (или битрейт) потока данных, позволяя осуществлять передачу данных на широкую аудиторию. Например, сжатый сигнал формата 1080p30 обычно занимает около 4–8 Мбит/с, в то время как несжатой версии сигнала потребовалось бы 1.5 Гб/с – а это в 250 раз больше! С учетом современных ограничений пропускной способности сети было бы практически невозможно осуществить трансляцию с таким высоким битрейтом без использования видеокодеков.
Прямая трансляция в 4K?
Трансляция или запись с разрешением 4K, если таковая возможна, определенно имеет свои преимущества. Это, прежде всего, качество и четкость видео, а также широкие возможности для дальнейшей обработки.
С точки зрения форматов и кодеков, разрешение 4К (3840х2160 пикселей) содержит в четыре раза больше пикселей, чем самое популярное современное разрешение Full HD (1920×1080), т.е. в одном кадре вы можете транслировать значительно больше данных для вашей аудитории.
К счастью, уже появились новые кодеки, которые позволяют работать с разрешением 4К и выше.
Кодек H.265 – оптимальный выбор для 4K
Обратите внимание, что старые форматы и кодеки (AVC/H.264) по-прежнему способны обрабатывать видео с разрешением 4K, а разница заключается в том, что новые, типа HEVC, делают это более эффективно. При этом качество видео при увеличенной степени сжатия стало лучше, и это не сказалось на битрейте. HEVC, способный поддерживать разрешения до 8K (8192×4320) – это видео-формат будущего!
При этом нет никаких расходов для конечных пользователей, связанных с HEVC/H.265, в то время как производители оборудования, поставщики платных программ и потоковых сервисов обязаны выплачивать роялти за использование HEVC технологии в своих продуктах и/или услугах. Наглядным примером могут стать современные телевизоры или мониторы 4К, в которые кодек H.265 встраивается при производстве, а пользователи фактически получают его бесплатно при покупке соответствующего устройства.
Бесплатные сервисы видео-трансляций (например, YouTube) традиционно были освобождены от выплаты отчислений – но это не коснулось HEVC. Такое исключение породило ряд интересных совместных разработок известных высокотехнологических компаний в сфере создания новых видео-форматов с открытым источником.
«Alliance for Open Media»
Недовольные правилами лицензирования и патентными отчислениями, связанными с HEVC, такие технологические гиганты, как Microsoft, Google, Mozilla, Cisco, Intel, Netflix и Amazon сформировали новый консорциум: Alliance for Open Media (АОМ). Это некоммерческая организация, нацеленная на разработку нового поколения видеокодеков, форматов кодирования видео и связанных с ними технологий. К 2016-2017 годам AOM планирует внедрить новую технологию, позволяющую более эффективно сжимать видеоданные, что в свою очередь существенно снизит нагрузку на интернет-соединение и заметно повысит возможности современных веб-сетей, передающих видео на персональные компьютеры, смартфоны, игровые консоли, потоковые приставки, телевизоры и т. п. Также при использовании нового формата не будет предусматриваться уплата роялти. Отсюда следует, что любая компания сможет создавать ПО, которое будет способно конвертировать, а также создавать файлы без необходимости в оплате лицензионных сборов.
Многие из членов группы уже внесли свой вклад в разработку нового поколения кодеков 4K; в Cisco создали Thor, Mozilla работает с Daala, а Google с VP9. Недавно к Альянсу присоединились AMD, ARM, Intel и Nvidia.
VP9 – самый популярный из кодеков 4K
Кодек VP9 имеет открытый исходный код и его использование не требует уплаты роялти. Популярностью он обязан использованию в веб-приложениях при постепенном переходе от технологии Flash к HTML5.
VP9 в настоящее время реализуется в следующих браузерах:
Другим крупнейшим пользователем VP9 является популярная видео-платформа от Google, YouTube, которая предлагает VP9 для всех разрешений. Тем не менее, несмотря на популярность VP9 для интернет, у AOM есть большие планы на дальнейшую разработку кодеков 4K.
AV1 – будущее 4K кодеков для интернет
Сейчас члены AOM прилагают совместные усилия для разработки нового видео-формата свободного от уплаты роялти. Он носит название AOM Video (AV) и создается на основе VP9 и технологии на базе кодеков Thor (от Cisco) и Daala (от Mozilla). Первая версия AV1, вероятнее всего, будет выпущена к марту 2017 года.
Цель AV1 – повысить эффективность битрейта по сравнению с HEVC и VP 9 примерно на 50% при поддержке более высоких разрешений (т.е. 4K).
Учитывая, какие именно компании формируют AOM, можно предположить, что AV1 будет поддерживаться крупнейшими браузерами (Mozilla, Microsoft, Google), известными дистрибьютерами контента (Netflix, Amazon, YouTube) и многими производителями оборудования.
Что значат 4K кодеки для прямой трансляции?
Как мы уже упоминали выше, новые кодеки типа H.265 меньше подходят для прямых трансляций, так как процесс кодирования видеосигнала с использованием данных кодеков у стандартного компьютера занимает гораздо больше времени и требует значительной вычислительной мощности. До тех пор, пока новые технологии не станут менее затратными в плане использования компьютерных ресурсов, рекомендуем придерживаться кодеков H.264/AVC для потокового передачи данных в режиме реального времени. Кодеки с открытым исходным кодом, такие как VP9, в настоящее время не входят в программное/аппаратное обеспечение большинства устройств – но это может измениться в ближайшем будущем.
Тем не менее, не важно, какой тип 4K кодека или видео-формата вы предпочли бы, у вас в любом случае есть возможность трансляции или записи в 4K с помощью адаптивной потоковой технологии. Даже если вы кодируете сигнал в одном формате, например, в AVC, большинство потоковых сервисов, таких как YouTube, автоматически перекодируют ваш H.264-поток в VP9 (или AV1 в будущем).
Пользователи наших устройств для захвата, записи и трансляции сигнала могут быть уверены, что продукция Epiphan с поддержкой 4K гарантировано работает с разрешениями 4K, и теперь ваши трансляции будут еще более яркими и динамичными.
HEVC и VP9 какой кодек лучше?

VP9 против HEVC
Основной целью разработки нового алгоритма сжатия (именно нового, а не модернизации широко использующегося h.264) было получить при том же качестве картинки битрейт, вполовину меньший, чем этого требовал предшествующий кодек.
Само собой разумеется, это не должно было вылиться в существенное усложнение процессора, производящего обработку видеосигнала. Задача была выполнена, и в 2012 году появились первые программные декодеры. Помимо сниженного битрейта, кодек имеет ещё несколько существенных особенностей:
1. Увеличенный в 16 раз допустимый размер блока дал возможность эффективно обрабатывать изображения высокого разрешения, вплоть до 8К (8192х4120 пикселей).
2. Инновационное распараллеливание декодирования может оценить каждый, имеющий компьютер с многоядерным процессором (процессорами).
3. Граничный профиль Main 10 кодека поддерживает глубину цвета 10 бит.
4. Произвольный доступ к кадру не так важен для редактирования или просмотра видео, но критичен, например, для систем видеобезопасности, поскольку воспроизведение в этом случае может начаться с любого кадра изображения. Необходимости декодировать для этого какие-то предшествующие фрагменты нет.
В принципе глобальные особенности перечислены. Упомянем ещё одну проблему-проблемку, наверняка решаемую. Она связана с отсутствием качественных одночиповых кодеров HEVC. Качественных – значит, способных обеспечить продолжительную стабильную работу с потоками максимального разрешения.
Это, можно сказать, одна из основных причин далеко не революционного перехода на новый кодек h.265. И отбросив в сторону рассуждения о маркетологических трюках, скажем по правде, ещё и у h.264 ресурс не исчерпан, а тут уже вроде как задача поставлена о промышленном внедрении нового стандарта…
Но несмотря ни на что, на любое действие всегда находится противодействие – таков закон. Поэтому столь же усиленно продвигается и новый, патентно не обременённый, а значит, бесплатный кодек VP9.
Теперь компания Google хочет ускорить внедрение собственного конкурирующего с HEVC формата VP9. Ведь широкомасштабное принятие H.265 застопорилось до недавнего времени из-за проблем с лицензированием, и многие из производителей оборудования и контента довольствовались временным прибежищем на H.264 и его конкуренте с открытым исходным кодом MP4.
VP9 точно так же имел перед собой целью сократить битрейт в 2 раза по сравнению с VP8, своим предшественником. Сверхзадача – обогнать ХЕВК в эффективности сжатия. В связи с этим посмотрим на кодек с точки зрения особенностей h.265:
1. Размер блоков также увеличен по отношению к VP8. Но эффективность кодировки обеспечивается возможностью рассмотрения неквадратных блоков. Хорошо? Прекрасно! Только вот вариантов предсказания перераспределения пикселей в блоке всего 10. Ну куда тут против 35 у HEVC… Т.о. главное преимущество разработки практически сводится на нет у VP9 в отношении как бы конкурента.
2. Как современный кодек, VP9 просто обязан поддерживать параллельную обработку.
3. Поддержка стандартизированного HDR пока только на стадии рассмотрения.
Итоги сравнений
Что можно сказать после беглого взгляда на оба кодека? Вопрос, какой кодек лучше, HEVC или VP9, пока неактуален. Пока что разные задачи решают компании, создающие эти стандарты. Для h.265 главная задача стать отраслевым эталоном, внедрённым практически во все виды оборудования. В этом плане есть определённая уверенность, что всё больше и больше устройств будут снабжаться аппаратной поддержкой hevc декодирования.
VP9 очень скоро был определён компанией Google как нишевый, можно сказать, стандарт для потокового вещания, в т.ч. и для видеоконференций. Благодаря «агрессивной» политике Гугл, кодек будет использоваться для просмотра видео скорее всего во всех браузерах, а иначе Ютуба не видать!
Что тут комментировать, когда уже Netflix ведёт трансляции с использованием этого кодека. Единственная загвоздка – слабое обеспечение DRM. В итоге имеем два разных кодека, дающих в принципе, одинаковые результаты в части качества картинки, но идущие к этому качеству своими собственными путями.
Видеокодек vp9 что такое
Если ваша задача — получить лучшее качество при наименьшем битрейте, то тут кодек VP9 и приходит на помощь. С помощью него можно кодировать, например, 1080p видео с битрейтом 2500k (2,5 мегабита) и иметь вполне приличное качество. Если видео очень динамичное, битрейт следует поднять до 3000-4000k. Если же с таким битрейтом мы будем кодировать в кодек h264 — получим пиксельную кашу, примерно как на Ютубе. Ютуб далеко не всё видео кодирует в VP9 (webm), многие видео хранятся в кодеке h264/avc — смотреть на них больно.
Однако, кодек VP9 не идеален и есть у него небольшой изъян, связанный с цветовым пространством. Условно, два основных цветовых пространства — это TV (bt601) и PC (bt709). Чем они отличаются? Уровнями черного и белого. Цветовое пространство TV имеет более узкий диапазон цветов 16-235, где 16 — белый, а 235 — черный. Если просматривать такое видео на мониторе ПК, то оно будет блеклое, тусклое, с низким контрастом. Потому что правильное цветовое пространство для PC — 00-255, где 00 — абсолютный белый, а 255 — абсолютный черный. Простыми словами, телевизионное цветовое пространство имеет ограниченный диапазон RGB. А компьютерное — полный.
Проблема кодека VP9 состоит в том, что он умеет работать только с TV пространством, обозначаемое так же, как yuv420. Для многих современных фото и видеокамер — это не проблема, они снимают точно в таком же цветовом поле с поправкой на контраст, картинка с них вполне хорошо смотрится. Но есть старые модели фото-видео камер, которые снимают в цветовом пространстве yuvj420 (pc, bt709) и с них необработанное видео смотрится отлично, сочно, контрастно. Но вот при кодировании в VP9 подобных видео со старых камер, кодек обрезает диапазон цвета с 00-255 до 16-235 и мы получаем тусклую, неконтрастную картинку. Абсолютно черный 255 превращается в тёмно-серый 235. 
Как решать эту проблему?
Облазив огромное количество интернет-сайтов, как российских, так и зарубежных, я не нашел практически никакой полезной информации. И вывод напрашивается сам собой: раз кодек не поддерживает yuvj420 (pc, bt709), то и бороться с потерей цвета никак нельзя. Тем не менее, я нашел небольшую уловку, которая работает в актуальных версиях ffmpeg (4.2) и позволяет с помощью фильтра подкрутить контраст на 10%. Вероятно, Ютуб пользуется подобными методами, так как конвертировать PC-стандарт (yuvj420) в TV (yuv420) и не потерять часть цвета — невозможно. Делюсь командой для ffmpeg под Linux, чтобы закодировать видео yuvj420 и не лишиться контраста. Конечно, это лишь уловка, но закодированное видео в yuv420 практически не будет визуально отличаться от исходника и большинство вообще не заметит никакой разницы.
Решение:
-i — входной файл
MVI_9360.MOV — название входного файла, включая расширение
-c:v vp9 — кодек видео VP9
-vf «eq=contrast=1.1:brightness=0:saturation=1» — видеофильтр, контраст, яркость, насыщенность. Единица — это 100%.
-b:v 2000k — примерный битрейт видео установлен в 2000 килобит/c
-c:a libopus — кодек аудиодорожки, кроме libopus может использоваться libvorbis
-b:a 256k — битрейт аудиодорожки установлен в 256 килобит/c
-y — означает yes, полезно в случае перезаписи существующего в каталоге файла с тем же названием.
По поводу кодирования различных видеофайлов с помощью ffmpeg я как-нибудь напишу отдельный пост. А пока, на этом всё. Спасибо за внимание 🙂
На правах автора хочу напомнить, что у нас есть группа вк и телеграм-чат, где можно пообщаться на компьютерную и сетевую тематику.








