[Перевод] Перспективные форматы видео. Новое направление
В начале сентября корпорация Intel объявила о своем участии в организации Alliance for Open Media. Этим шагом мы подчеркиваем поддержку открытых форматов и направляем наши усилия на создание нового поколения средств кодирования видео. Консорциум Alliance for Open Media, в состав которого входят корпорации Amazon, Cisco, Google, Intel, Microsoft, Mozilla и Netflix, создан с целью совместной разработки нового поколения форматов видео, позволяющих снизить стоимость доставки видео для конечных пользователей путем оптимизации для процессоров нового поколения.
В этом посте мы проанализируем текущее положение дел в области видео форматов и рассмотрим перспективы их развития. Статья написана Марком Бакстоном, директором по развитию медиа продуктов Intel.
Чтобы лучше понять новейшую историю форматов, применяемых для видеовещания, давайте вспомним, что такое видеовещание на самом деле. За последние 20 лет вещание видео прошло путь от фиксированных каналов к мультиплексам каналов и пакетным видеопотокам (которые зачастую передаются по многоуровневым сетям). Все эти модели существуют сейчас одновременно. В двух последних моделях изначально применялось масштабируемое видео, а сейчас на некоторых рынках применяется кодирование в реальном времени близко к периметру сети (например, для адаптации к условиям каналов или возможностям клиентских устройств). Для всех этих моделей кодирования требуются разные уровни качества и разные алгоритмы, позволяющие сбалансировать скорость потока данных и качество видео.
В дополнение к этой «последней миле» вещания кодирование происходит при съемке видео, его передаче и монтаже. Стремление добиться по возможности высокого качества видео не является краткосрочной проблемой: постоянно увеличивается разрешение экранов, их яркость и контрастность. При этом увеличение разрешения и глубины цвета обычно связано с необходимостью сжатия. Переход на новые форматы, такие как HEVC, позволяет обходить узкие места в сетях и системах хранения данных и дает возможность создавать и передавать зрителям высококачественное вещательное видео.
Переходим к закону Мура и циклу создания микропроцессоров. Вычислительная сложность наших форматов видео чудесным образом сохраняется на стабильном уровне при переходе от поколения к поколению. Но это получилось, по сути, случайно: формат HEVC устроен намного сложнее по сравнению с AVC, но в нем дает некоторый эффект оптимизация алгоритмов.
За время, прошедшее между двумя последними ступенями форматов кодирования видео (AVC->HEVC), значительно выросло количество процессорных ядер, доступное при одинаковой цене. В последнем семействе процессоров Intel Xeon E5 содержится до 18 ядер на одно устройство (а при появлении AVC в 2003 году процессоры Intel Xeon были одноядерными). В «плотности» кодирования видео был дополнительный скачок при появлении семейства процессоров Intel Xeon E3 и аппаратных компонентов кодирования видео, способных обеспечить необходимое для вещания качество. Развитием аппаратных ускорителей и программных решений, используемых в клиентских процессорах, стали аппаратные блоки Intel Quick Sync Video, доступные через Intel Media Server Studio. При их использовании скорость перекодирования увеличивается в 3 раза при более высоком качестве, если сравнивать процессоры Intel Core i7-5850, использующие QSV, с такими же процессорами, использующими программную реализацию x264. И наша корпорация, и наши клиенты из отраслей СМИ и вещания используют все больше форматов — от устаревших MPEG-2, которые применяются для традиционных телеприставок, до предыдущего поколения AVC и новейших VP9 и HEVC для последнего поколения ТВ, планшетов, телефонов и развлекательных устройств.
Процессор Intel Core i7-4770: сравнение производительности и качества для двух семейств видеокодеков
Получается, что раньше на кодирование расходовалось больше всего ресурсов в экосистеме. Но существенные улучшения в области кодирования могут способствовать и изменению бизнес-моделей. Наиболее очевидное преимущество состоит в том, что наши клиенты смогут воспользоваться удешевлением кодирования, повысить эффективность и кодировать больше материалов.
Развитие форматов кодирования видео
Наиболее эффективным форматом кодирования видео на сегодняшний день является HEVC. Измерять эффективность кодирования видео можно разными способами. Метод BD-RATE, использованный на вертикальной оси на графике выше, широко используется. Он позволяет свести скорость потока данных и качество видео в одну метрику (поскольку эти две характеристики в определенной степени зависят одна от другой) путем сравнения кривых, образованных показателями качества и скорости данных, с «золотым» форматом (в качестве эталонного кодирования используется WG11 HM14).
Для оценки качества в этом сравнении используется метрика Y-PSNR. Y-PSNR долгое время считалась вполне адекватной для оценки видео, но с появлением последнего поколения форматов кодирования видео она стала менее полезной. Тем не менее это очень удачный формат. Можно добиться очень высокого качества видео, близкого к «объективным» результатам, если решить проблемы с крупными блоками. Он был разработан в рамках открытого процесса, в котором участвовали представители разных стран, в том числе учебных заведений, государственных организаций и частных компаний: сотни великолепных специалистов, среди которых было и несколько юристов.
В WebM существует альтернативная модель. Кодек VP8 (первый среди кодеков WebM) изначально разрабатывался как проприетарная технология. Он был приобретен корпорацией Google, превращен в открытый и быстро приспособлен к поточной передаче видео. Корпорация Google предоставляет отрасли свободные лицензии на использование, свободное ПО с открытым исходным кодом и даже бесплатные аппаратные ресурсы. Кодек VP8 не был и не является конкурентом AVC и HEVC по эффективности кодирования видео для вещания, но он был развернут большим количеством клиентов с незначительными лицензионными ограничениями. Этот формат чаще всего используется для видеоконференций, которым он хорошо подходит.
Формат VP9 был недавно разработан в качестве замены для VP8 с аналогичной (свободной) моделью лицензирования. VP9, как и HEVC, — хороший и современный видеокодек. Сравните неподвижные кадры на рис. 1, 2 и 3 ниже. Мне хотелось продемонстрировать недостатки использования устаревших метрик качества, поэтому я использую один из труднейших видеороликов для HEVC: crowd_run. Это сложная последовательность, поскольку в ней смешано множество типов движения, огромный объем информации и текстуры, которые невозможно уложить в крупные блоки. Обычно в среднем для большого объема материалов HEVC выдает более высокое качество, чем VP9, но в данном случае это не так. В данном случае преимущества VP9 <видны>, что называется, невооруженным глазом.
Как и в HEVC, в VP9 поддерживается увеличенная глубина цвета, расширенная цветовая гамма, высокие разрешения и самые разные области применения. По качеству VP9 гораздо ближе к HEVC, чем VP8 к AVC, и я могу предположить (поскольку формат VP9 еще сравнительно новый), что в дальнейшем это отставание по качеству станет еще меньше.
Кодирование VP9 при скорости потока 8,5 Мбит/с с параметрами –good –cpu-used=0. Увеличенная область изображения crowd-run. Обратите внимание на детализацию деревьев. Очень хорошие результаты для очень сложной последовательности кадров (к сожалению, при данном уровне качества кодек работает на два порядка медленнее остальных)
Кодирование AVC при скорости потока 12 Мбит/с с параметром –veryslow. Увеличенная область стандартной тестовой последовательности изображений crowd-run. Обратите внимание, насколько смазаны деревья. Несмотря на это, метрика PSNR для AVC на 2 дБ выше (!)
Кодирование HEVC при скорости потока 7,6 Мбит/с с параметром –TU4. Увеличенная область изображения crowd-run. Здесь меньше очевидных артефактов кодирования, чем у x264, при гораздо меньшей скорости потока данных, но качество ниже, чем у VP9. (По объективным показателям в данном случае скорость потока данных на 10 % ниже, чем при использовании VP9, с одинаковым Y-PSNR.) Интересно, что программная версия работает вдвое быстрее, чем AVC
Впрочем, корпорация Google действовала на этом поприще не в одиночку. Другие компании, которым требовалось кодировать видео без уплаты лицензионных отчислений, создали новые форматы видео. Наиболее известные из них: Daala компаний Xiph/Mozilla, Thor корпорации Cisco, использующиеся в КНР форматы AVS (v1 и v2).
Обе модели способны создавать форматы кодирования видео равноценного технического качества. Зачем же тогда мы вступили в Alliance for Open Media?
Мы считаем, как и другие основатели этого консорциума, что новый формат, который последует за HEVC и VP9, должен не просто пройти дальше по пути повышения эффективности кодирования видео. Мы стремимся создать технологии, способные удовлетворить растущие потребности Интернета в высококачественном видео, звуке, изображениях и поточной передаче мультимедиа на все типы устройств для всех пользователей во всем мире. В составе Alliance мы получили возможность объединить Thor, Daala и VP10 в едином однородном формате видео нового поколения, создавая возможности для реализации самых разных решений мультимедиа.
Что, где, когда?
Если вы надеетесь получить новый видеокодек уже к концу года, увы, его создание займет больше времени. Мы работаем быстро, но даже текущее поколение видеоформатов значительно превосходит предыдущее, мы вложили немало сил и средств в оборудование, программы и инструменты для создания и распространения HEVC (и VP9). Потребуется значительное время, чтобы разработать новый формат видео, способный качественно обогнать HEVC (поэтому не ждите результатов нашей работы, чтобы перейти на наш кодек с AVC >…).
Мы не сомневаемся, что совместная работа в этом направлении позволит нам создать проект с открытым исходным кодом, в рамках которого будут созданы форматы мультимедиа нового поколения, кодеки и технологии, в которых будет заинтересована широкая публика.
Присоединяйтесь к нам!
Заинтересованные стороны спрашивают у нас, чем они могли бы помочь. Итак, вот то, что мне хотелось бы получить от более широкого сообщества, даже если вы решили не вступать в непосредственные отношения с Alliance for Open Media.
- Корпорации Intel требуются оригинальные, несжатые и бесплатные видеоматериалы вещательного качества (как для решения технических проблем командой, которая занимается алгоритмами сжатия, так и для демонстрации этой технологии).
- Корпорация Intel поддерживает новые решения в области средств анализа качества видео, способных работать со средствами кодирования нового поколения. В частности, средства анализа качества должны обращать особое внимание на вибрацию, мерцание, чувствительные к движению артефакты, которые становятся наиболее заметными при попадании в крупные блоки, на экранах особенно высокой яркости и контрастности. Intel Video Quality Caliper (в составе Intel Video Pro Analyzer) — подключаемый модуль для создания новых решений в этой области.
- И важнее всего то, что корпорации Intel нужна ваша поддержка. Если вы — сторонник открытых видеоформатов, не требующих уплаты лицензионных отчислений, сообщите нам об этом.