Формат hevc h 265 – Легенды и мифы современных реализаций x265/HEVC или x264 vs x265 в сравнении скриншотов / Habr

Содержание

H.265 — Википедия

H.265 или HEVC (англ. High Efficiency Video Coding — высокоэффективное кодирование видеоизображений) — формат видеосжатия с применением более эффективных алгоритмов по сравнению с H.264/MPEG-4 AVC[1]. Рекомендация МККТТ H.265, а также стандарт ISO/IEC 23008-2 MPEG-H Часть 2, — совместная разработка экспертной группы по видеокодированию МККТТ (ITU-T Video Coding Experts Group — VCEG) и экспертной группы по движущимся изображениям MPEG[2]. Рекомендация стандарта разработана в связи с растущей потребностью в более высокой степени сжатия движущихся изображений для самых разных приложений, таких как потоковая передача в Интернете, передача данных, видеоконференц-связь, цифровые запоминающие устройства и телевизионное вещание[3].

Поддерживаются форматы кадра до 8K (UHDTV) с разрешением 8192×4320 пикселей[4].

В 2004 году VCEG приступила к исследованию развития технологий, которые позволили бы создать новый стандарт сжатия видео (или добиться существенного улучшения стандарта H.264/MPEG-4 AVC). В октябре 2004 года произведён обзор различных способов возможного усовершенствования H.264/MPEG-4 AVC

[5].

Изначально предусматривалось, что H.265 будет полностью новым стандартом, а не расширением H.264 вроде HVC (High-performance Video Coding). В рамках проекта были присвоены предварительные имена H.265 и H.NGVC (англ. Next-generation Video Coding — следующее поколение видеокодирования), также существовала значительная часть работы VCEG до её эволюции в HEVC, совместный проект с MPEG в 2010 году. В апреле 2009 года проект получил название NGVC; в июле 2009 состоялось совещание MPEG и VCEG, на котором обсуждалась дальнейшая совместная работа по NGVC и HVC.

Предварительные требования к NGVC состоят в уменьшении битрейта на 50 % при схожей субъективной оценке качества изображения и сравнимой с H.264 High profile вычислительной сложностью. В зависимости от настроек предполагается варьирование вычислительной сложности от 1/2 до 3 по сравнению с H.264 High profile, при этом в первом случае NGVC должен обеспечивать на 25 % меньший битрейт

[6].

ISO / IEC Moving Picture Experts Group (MPEG) начала аналогичный проект в 2007 году, предварительно названный Высокопроизводительным видеокодированием (High-performance Video Coding). В июле 2007 года было принято решение в качестве цели проекта достигнуть снижения битрейта на 50 %[7]. К июлю 2009 года результаты эксперимента показали среднее снижение скорости потока примерно на 20 % по сравнению с AVC High Profile, эти результаты побудили MPEG начать стандартизацию в сотрудничестве с VCEG.

Для разработки стандарта MPEG и VCEG создали Объединенную команду по видеокодированию Joint Collaborative Team on Video Coding (JCT-VC) (ITU-T Rec H.264|ISO/IEC 14496-10)[8]. Первое заседание Объединенной команды по видеокодированию (JCT-VC) состоялось в апреле 2010 года. Было представлено 27 полноценных проектов. Оценки показали, что некоторые предложения могут достичь такого же качества изображения, как AVC, лишь с половинным битрейтом во многих испытаниях, при 2—10-кратном увеличении вычислительной сложности, и в некоторых проектах были достигнуты хорошее субъективное качество и хорошие результаты скорости передачи данных с более низкой вычислительной сложностью, чем при референсном кодировании AVC с высоким профилем. На этом совещании было принято название для совместного проекта — высокоэффективное видеокодирование High Efficiency Video Coding (HEVC)

[9].

Комитет Проекта HEVC был утвержден в феврале 2012 года. В июне 2012 года MPEG LA объявила о начале процесса принятия совместных лицензий на патенты HEVC. Проект международного стандарта был утвержден в июле 2012 года на совещании, состоявшемся в Стокгольме. Fröjdh, председатель шведской делегации MPEG, считает, что коммерческие продукты, которые поддерживают HEVC, могут быть выпущены в 2013 году

[10].

29 февраля 2012 года на выставке Mobile World Congress компания Qualcomm показала HEVC-декодер, работающий на планшете под управлением ОС Android с двухъядерным процессором Qualcomm Snapdragon S4 с частотой 1,5 ГГц. Показывались две версии видеозаписи с одинаковым содержанием, закодированными H.264/MPEG-4 AVC и HEVC. На этом показе HEVC показал почти 50%-ное снижение скорости передачи по сравнению с H.264/MPEG-4 AVC[11].

31 августа 2012 Allegro DVT объявила о выпуске двух HEVC-вещательных кодеров: кодера AL1200 HD-SDI и IP-транскодера AL2200[12]. Allegro DVT заявила, что аппаратных декодеров HEVC не следует ожидать до 2014 года, но HEVC сможет применяться и раньше в приложениях с программным декодированием. На выставке IBC 2012 Allegro DVT показала HEVC-системы потокового IP-вещания на основе IP-транскодера AL2200.

Компания Ericsson в сентябре 2012 года на выставке International Broadcasting Convention (IBC) представила первый в мире HEVC-кодер — Ericsson SVP 5500, предназначенный для кодирования видео в реальном времени для трансляции эфирного ТВ в сетях подвижной связи

[13].

В апреле 2013 года проект принят в качестве стандарта МСЭ-T[3].

На начало 2017 на аппаратном уровне реализована частичная поддержка стандарта HEVC всеми крупными производителями процессоров.[источник не указан 808 дней]

В качестве требований к стандарту предложено много новых возможностей:[источник не указан 808 дней]

  • Двумерный неразделимый адаптивный интерполяционный фильтр (AIF)
  • Разделимый AIF
  • Направленный AIF
  • Компенсация движения с точностью до 1/8 пикселя (Qpel)
  • Адаптивное предсказание ошибок кодирования (APEC) в пространственной и частотной областях
  • Адаптивный выбор матрицы квантования (AQMS)
  • Основанная на сравнении схема выбора и кодирования вектора движения
  • Режимозависимое изменение настройки внутрикадрового кодирования

Предполагается, что эти приёмы принесут наибольшую пользу при многопроходном кодировании[14].

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

Вместо применяющихся в H.264 макроблоков в HEVC используются блоки с древовидной структурой кодирования. Выигрыш кодера HEVC — в применении блоков большего размера. Это было показано в тестах PSNR с моделью кодера HM-8.0, где сравнивались результаты кодирования с разными размерами блоков. В результате тестов было показано, что по сравнению с кодированием блоков размером 64×64 пикселя битрейт увеличивается на 2,2 %, когда используются блоки размером 32×32, и увеличивается на 11,0 %, когда используются блоки размером 16×16. В тестах кодирования видео с разрешением 2560×1600 пикселей при использовании блоков размером 32×32 пикселей битрейт увеличивается на 5,7 %, а при использовании блоков размером 16×16 пикселей — на 28,2 % по сравнению с видео, где использованы блоки размером 64×64, при одинаковом пиковом отношении сигнал-шум. Тесты показали, что применение блоков большего размера более эффективно при кодировании видео с высоким разрешением. Тесты также показали, что для декодирования видео, закодированного с блоками размером 16×16, требуется на 60 % больше времени, чем при использовании блоков 64×64. То есть применение блоков бо́льших размеров повышает эффективность кодирования при одновременном сокращении времени декодирования

[15].

Было проведено сравнение эффективности кодирования основного профиля Н.265 с кодеками H.264/MPEG-4 AVC High Profile (HP), MPEG-4 Advanced Simple Profile (ASP), H.263 High Profile Latency (HLP) и H.262/MPEG-2 Main Profile (MP). Были закодированы видео развлекательных программ и девять тестовых видеопоследовательностей с 12 различными битрейтами с использованием тестовой модели HEVC HM-8.0, пять из них были с HD-разрешением, а четыре — с разрешением WVGA (800×480). Уменьшение битрейта определялось на основе PSNR[15].

Сравнение стандартов видеокодирования при равном PSNR
Стандарт видеокодированияСреднее сокращение битрейта
H.264/MPEG-4 AVC HPMPEG-4 ASPH.263 HLPH.262/MPEG-2 MP
HEVC MP35,4 %63,7 %65,1 %70,8 %
H.264/MPEG-4 AVC HP44,5 %46,6 %55,4 %
MPEG-4 ASP3,9 %19,7 %
H.263 HLP16,2 %
Схема типового кодера HEVC

При кодировании видео в HEVC применяется такой же «гибридный» подход, что и во всех современных кодеках, начиная с H.261. Он заключается в применении внутри- и межкадрового (Intra-/Inter-) предсказания и двумерного кодирования с преобразованием.

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

Разностный сигнал предсказания, который представляет собой разницу между опорным блоком кадра и его предсказанием, подвергается линейному пространственному преобразованию. Затем коэффициенты преобразования масштабируются, квантуются, применяется энтропийное кодирование, и затем передаются вместе с информацией предсказания.

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

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

На октябрь 2012 года проект включал в себя три профиля: Основной (Main), Основной 10 (Main 10) и Основной профиль неподвижных изображений (Main Still Picture)[16].

Профиль это определённый набор средств кодирования и алгоритмов, которые могут быть использованы для создания видеопотока, соответствующего этому профилю[15]. Кодер при формировании видеопотока определяет, какие компоненты можно использовать для профиля, в то время как декодер должен поддерживать все функции для данного профиля.

Main (Основной профиль)[править | править код]

Для основного профиля определены следующие ограничения:

  • Глубина цвета — 8 бит на канал (16,78 млн возможных цветов),
  • Цветовая субдискретизация — 4:2:0,
  • Размер буфера декодера ограничивается 6 кадрами максимального размера яркостной компоненты для этого уровня.

Main 10 (Основной профиль 10)[править | править код]

Main 10 — профиль для кодирования видео с глубиной цвета 10 бит на канал[16].

Сравнение основных элементов кодеров:

AVC (High Profile)HEVC (Main 10)HEVC (Main Profile)
Размер блоковМакроблок 16×16Блоки с древовидной структурой кодирования от 64×64 до 8×8от 64×64 до 16×16
Блоки предсказанияРазбиение до 4×4от 64×64 до 4×4, асимметричное предсказаниеот 64×64 до 8×8, симметричное предсказание
Блоки преобразования8×8 и 4×432×32 16×16 8×8 4×4 + неквадратные преобразования32×32 16×16 8×8 4×4
Внутрикадровое предсказание9 режимов35 режимов35 режимов
Обратное преобразованиеДеблокирующий фильтрДеблокирующий фильтр, SAOДеблокирующий фильтр, SAO
Компенсация движенияПредсказание вектора движенияУсовершенствованное предсказание вектора движения (пространственное и временное)
Глубина цвета на канал8 бит10 бит8 бит
Энтропийное кодированиеCABAC или CAVLCCABAC с применением параллельных операций

Main Still Picture (Основной профиль неподвижных изображений)[править | править код]

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

На октябрь 2012 года проект HEVC определял два слоя — Основной (Main) и Высокий (High), и 13 уровней[16]. Уровень (Level) представляет собой набор ограничений для потока данных, связанных с вычислительными возможностями декодера и загрузкой памяти. Уровень устанавливается исходя из максимальной частоты дискретизации, максимального размера кадра, максимальной скорости потока, минимальной степени сжатия и возможностей кадрового буфера декодера и кодера. Понятие слой (англ. Tier — ярус) было введено для приложений, которые различаются только максимальной скоростью потока и ёмкостью кадрового буфера кодера. Основной слой был разработан для большинства приложений, а Высокий уровень предназначен для приложений с повышенными требованиями. Декодер, соответствующий определенному слою и уровню, должен декодировать все потоки, закодированные с параметрами этого слоя и уровня и всех более низких слоев и уровней. Для уровней ниже четвёртого допускается только Основной слой[1][16].

Уровни с максимальными параметрами
УровеньМакс. частота
дискретизации[17]
(Гц)
Макс. размер
кадра[17]
(пикс.)
Макс. скорость потока
для профилей Main и Main 10
(кбит/с)
Пример разрешения кадра@
макс. частота кадров
(Макс. размер
кадрового буфера)
Мин.
степень
сжатия
Основной слойВысокий слой
1552 96036 864128128×[email protected] (6)
176×[email protected] (6)
2
23 686 400122 8801 500176×[email protected] (16)
352×[email protected] (6)
2
2.17 372 800245 7603 000352×[email protected] (12)
640×[email protected] (6)
2
316 588 800552 9606 000640×[email protected] (12)
720×[email protected] (8)
720×[email protected] (8)
960×[email protected] (6)
2
3.133 177 600983,04010 000720×[email protected] (12)
720×[email protected] (12)
960×[email protected] (8)
1280×[email protected] (6)
2
466 846 7202 228 22412 00030 0001280×[email protected] (12)
1920×[email protected] (6)
2048×[email protected] (6)
4
4.1133 693 44020 00050 0001280×[email protected] (12)
1920×[email protected] (6)
2048×[email protected] (6)
4
5267 386 8808 912 89625 000100 0001920×[email protected] (16)
3840×[email protected] (6)
4096×[email protected] (6)
6
5.1534 773 76040 000160 0001920×[email protected] (16)
3840×[email protected] (6)
4096×[email protected] (6)
8
5.21 069 547 52060 000240 0001920×[email protected] (16)
3840×[email protected] (6)
4096×[email protected] (6)
8
61 069 547 52035 651 58460 000240 0003840×[email protected] (16)
4096×[email protected] (16)
4096×[email protected] (12)
7680×[email protected] (6)
8192×[email protected] (6)
8
6.12 139 095 040120 000480 0003840×[email protected] (16)
4096×[email protected] (16)
4096×[email protected] (12)
7680×[email protected] (6)
8192×[email protected] (6)
8
6.24 278 190 080240 000800 0003840×[email protected] (16)
4096×[email protected] (16)
4096×[email protected] (12)
7680×[email protected] (6)
8192×[email protected] (6)
6
  1. 1 2 G.J. Sullivan. Overview of the High Efficiency Video Coding (HEVC) Standard (pdf), IEEE Trans. on Circuits and Systems for Video Technology (25 мая 2012). Дата обращения 14 сентября 2012.
  2. ↑ ISO/IEC FDIS 23008-2, International Organization for Standardization (14 мая 2013). Дата обращения 14 июня 2013.
  3. 1 2 ITU-T Home : Study groups : ITU-T Recommendations : ITU-T H.265 (04/2013), ITU (13 апреля 2013). Дата обращения 16 апреля 2013.
  4. ↑ H.265 : High efficiency video coding, ITU (7 июня 2013). Дата обращения 7 июня 2013.
  5. ↑ Draft meeting report for 31st VCEG Meeting (Marrakech, MA, 15-16 January, 2007)
  6. ↑ Draft requirements for «EPVC» enhanced performance video coding project, ITU-T VCEG (10 июля 2009). Дата обращения 24 августа 2012.
  7. ↑ An Interview With Dr. Thomas Wiegand (неопр.). in-cites (1 июля 2007). Дата обращения 18 августа 2012. Архивировано 24 октября 2012 года.
  8. ITU TSB. Joint Collaborative Team on Video Coding (неопр.). ITU-T (21 мая 2010). Дата обращения 24 августа 2012. Архивировано 24 октября 2012 года.
  9. ↑ Documents of the first meeting of the Joint Collaborative Team on Video Coding (JCT-VC) – Dresden, Germany, 15–23 April 2010 (неопр.). ITU-T (23 апреля 2010). Дата обращения 24 августа 2012. Архивировано 24 октября 2012 года.
  10. ↑ MPEG issues video compression draft, Ericsson (13 августа 2012). Дата обращения 16 августа 2012.
  11. ↑ Qualcomm shows horsepower of next-gen H.265 video, CNET (29 февраля 2012). Дата обращения 12 октября 2012.
  12. ↑ World First Live HEVC Broadcast Encoders: AL1200/AL2200, PRNewswire (31 августа 2012). Дата обращения 31 августа 2012.
  13. ↑ Ericsson представил новый взгляд на зрительский опыт [ 13-09-2012 ] Архивировано 14 марта 2016 года.
  14. ↑ Current Status of H.265 (as at July 2008) | h365.net
  15. 1 2 3 G.J. Sullivan. Comparison of the Coding Efficiency of Video Coding Standards – Including High Efficiency Video Coding (HEVC) (pdf), IEEE Trans. on Circuits and Systems for Video Technology (22 августа 2012). Дата обращения 22 сентября 2012.
  16. 1 2 3 4 5 High Efficiency Video Coding (HEVC) text specification draft 9, JCT-VC (22 октября 2012). Дата обращения 23 октября 2012.
  17. 1 2 Для яркостной компоненты

Что такое кодек HEVC H 265 и для чего он нужен.

Высокоэффективный видео кодек (High Efficiency Video Coding (HEVC)), видео кодек, известный также как кодек H 265, который сжимает сильнее в более чем в два раза, чем лучший видео кодек для Blu-ray.

Я бы назвал его просто — H 265, потому что это звучит круто, но его полное имя — High Efficiency Video Coding (HEVC). Это новый преемник Advanced Video Coding (AVC), кодек, также известный как H.264, который является одной из основных схем сжатия, используемых Blu-ray.

Идея HEVC заключается в том, чтобы предложить тот же уровень качества изображения, что и AVC, но с улучшенным сжатием, поэтому видео файл, сжатый с помощью этого кодека, будет в два раза меньше. Это важно, для вещания в формате 4K / Ultra HD (интернет и спутник), 4K Blu-ray и для других целей.

Но достаточно ли хорошо он в этом отношении, как он работает?

 

Сжатие (хорошее, плохое, с потерями)

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

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

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

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

Таким образом, другой вариант — использовать лучшее сжатие. В этом случае вы можете в основном думать о «лучшем» сжатии как «о более умном» сжатии. Он берет тот же оригинал (видео) и находит лучшие способы уменьшить количество данных, не жертвуя качеством. Каждые несколько лет вычислительная мощность передачи улучшилась настолько, что позволяет использовать более интенсивные алгоритмы сжатия процессора, а также сжимать данные без ухудшения качества.

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

Позвольте мне сказать это так. Скажите, что у вас есть бушель из яблок. Вам нужно поместить 100 яблок внутрь. Вы можете сделать это с большим сжатием (сокращение яблок до пюре) или с лучшим сжатием (поиск лучшего способа сделать их целыми, но при этом, уменьшить объем занимаемого места).

Большее сжатия: яблочное пюре
Лучшее сжатие: больше яблок, в одном и том же пространстве.

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

 

Кодек H.265

Поток данных, в 4K видео, значительно сильнее чем в HD видео. В то время как большинство из нас еще только привыкало к идее преимущества кодека H.264 по сравнению с MPEG-2, Группа Motion Picture Experts Group и International Telecommunication Union’s Telecommunication Standardization Sector (ITU-T), уже начали работу над следующим поколением сжатия видео.

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

Как удалось этого достичь? Во многом благодаря расширению использования AVC (и других методов сжатия).

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

Затем HEVC расширяет размер области, на которую смотрят эти изменения. Большие и меньшие «блоки» существенно, что обеспечивает дополнительную эффективность. Они могут быть больше, меньше и различной формы в HEVC, чем в предыдущих кодеках. Более крупные блоки, например, оказались более эффективными.

Слева — макроблокирование по AVC / H.264. Как вы можете видеть, справа гораздо больше гибкости, не говоря уже о больших размерах, для кодировщика HEVC / H.265.

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

 

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

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

Достаточно ли этого?

Ну, технически да, но с большой оговоркой. Как и AVC (и другие стандарты сжатия), H.265 настраивается в зависимости от требуемой пропускной способности. Хотите 4K на низкоскоростном интернете? Нет проблем; увеличьте степень сжатия (помните яблочный соус?). Хотите лучшее качество изображения? Нет проблем; уменьшите степень сжатия.

Хотя эта схема обеспечивает гибкость, это также означает, что «4K» и «UHD» не обязательно гарантируют лучшее качество изображения, чем сегодня, «1080p» или «HD». Очень сжатый сигнал 4K во многих отношениях выглядел хуже, чем менее сильно сжатый сигнал HD.

Другими словами, потоковая передача 4K может выглядеть хуже, чем текущий 1080p Blu-ray, в зависимости от того, сколько используется сжатие

И хотя скорость обработки на всех устройствах соответствует закону Мура, пропускная способность интернета ограничена.

Еще одно преимущество

В то время как большинство потенциальных преимуществ HEVC сосредоточены на 4K, его лучшее сжатие обеспечивает преимущества для HD. Более низкая пропускная способность с HD означает, что больше людей может получить HD. Люди, у которых низкая скорость интернета, с новым кодеком смогут смотреть HD видео. Если у вас тариф с оплатой за мегабайты, то более низкие скорости передачи данных также означают более дешевый просмотр HD.

Чем смотреть HEVC.

Понятно, сразу возникает вопрос, как смотреть HEVC. Есть несколько решений, в зависимости от того, что у вас есть.

HEVC Video Extension

Если у вас ПК, и стоит Windows 10, то вы можете воспользоваться приложением, которое выпустила компания Microsoft. HEVC Video Extension — приложение, позволяющее смотреть видео в формате HEVC на компьютерах. Однако, стоит заметить, что для того, чтобы это приложение работало, у вас должен быть довольно мощный компьютер, с процессорами Intel седьмого поколения. Ну и сама операционная система, должна быть Windows 10.

Если ваш ПК отвечает этим требованиям, то это расширение вы можете получить при обновлении Windows. Но если вы не стали обновлять свою ОС, но хотите смотреть фильмы в формате HEVC, то вы можете скачать приложения с официального сайта Microsoft.

HEVC Video Extension

HEVC Video Extension в магазине приложений Microsoft

Проигрыватель для HEVC.

Если же у вас либо другая ОС, например Windows 7, или просто ваш компьютер не столь мощный, то вы можете скачать плейер, с поддержкой HEVC, например WindowsPlayer. Данный плейер, вы можете скачать с официального сайта программы.

Проигрыватель WindowsPlayer для воспроизведения файлов HEVC

Проигрыватель WindowsPlayer для воспроизведения файлов HEVC

 

Заключение

Начните искать HEVC (или H.265) в качестве позиции на телевизорах, проигрывателях Blu-ray и других медиаплеерах в будущем. Почти все основные модели начиная с моделей 2014 года выпуска включают необходимый аппаратный декодер, хотя лучше сразу убедится, что он действительно есть, чем потом жалеть о покупке.

Было много ворчаний во время перехода на H.264 / AVC при появлении Blu-ray. Теперь тоже самое происходит и появлением HEVC. Но более низкие скорости передачи данных при сохранении качества — это хорошо для всех.

Автор: GEOFFREY MORRISON

Источник: cnet.com

 

Похожие записи:

Что такое видео HEVC H.265 и почему важно для видео 4K

Видео 4K занимает тонну пространства, что затрудняет загрузку и потоковое вещание в лучшем качестве. К счастью, одна технология меняет это, и она известна как High Efficiency Video Coding (HEVC) или H.265.

Потребуется много времени, чтобы эта новая технология стала вездесущей, но это происходит: 4K UHD Blu-ray использует HEVC, VLC 3.0 воспроизводить 4K с помощью надежного HEVC, а iPhone может даже сохранить записанное видео в HEVC для экономии памяти.

Поток видео в формате H.265

Но как это работает, и почему так важно для видео 4K?

Текущий стандарт: AVC/H.264

Когда вы смотрите диск Blu-ray, видео на YouTube или фильм из iTunes, все они имеют идентичный исходный файл, который был получен в студии редактирования. Чтобы разместить этот фильм на диске Blu-ray или сделать его достаточно маленьким, чтобы удобно загружать из интернета, видео должно быть сжато.

Расширенное кодирование видео, также известное как AVC или H.264, является лучшим стандартом для сжатия видео среди широко используемых. Существует несколько различных методов, которые он использует, чтобы попытаться уменьшить размер файла видео.

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

Подготовка к внутрикадровому сжатию видео файла

AVC также использует  межкадровое сжатие, которое рассматривает несколько кадров и отмечает, какие части кадра меняются, а какие нет. Алгоритм сжатия также развивает фрейм на макроблоки и говорит: «Знаешь что? Эти куски не меняются 100 кадров подряд, поэтому давайте просто отображать их снова, вместо того, чтобы хранить все части изображения 100 раз». Это может значительно уменьшить размер файла.

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

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

HEVC/H.265 сжимает видео более эффективно

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

Например, когда AVC просматривает несколько кадров на наличие изменений, макроблоки могут иметь несколько разных форм и размеров, максимум до 16×16 пикселей. С HEVC эти фрагменты могут быть размером до 64×64, что намного больше, чем 16×16, это означает, что алгоритм может запоминать меньшее количество фрагментов, тем самым уменьшая размер общего видео.

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

HEVC медленнее без аппаратного декодирования

HEVC является утвержденным стандартом с 2013 года, так почему его не используют во всех видео?

Алгоритмы сжатия H.265 сложны – для вычисления этого процесса на лету требуется очень много «математики». Существует два основных способа, которыми компьютер может декодировать это видео: программное декодирование, при котором он использует процессор компьютера для выполнения этих расчетов, и аппаратное декодирование, при котором он переносит нагрузку на графическую карту (или интегрированный графический чип на процессоре). Графическая карта намного эффективнее, если у нее есть встроенная поддержка кодека видео, которое вы пытаетесь воспроизвести.

Таким образом, хотя многие ПК и программы могут пытаться воспроизвести видео HEVC, оно может «заикаться» или быть очень медленным без аппаратного декодирования. Таким образом, HEVC не принесёт много пользы, если у вас нет видеокарты и видеопроигрывателя, которые поддерживают аппаратное декодирование HEVC.

Это не проблема для автономных устройств воспроизведения. 4K проигрыватели Blu-ray, в том числе Xbox One, уже сконструированы с учетом HEVC. Но когда дело доходит до воспроизведения видео HEVC на компьютере, всё становится сложнее.

Вашему устройству потребуется одно из следующих аппаратных средств для быстрого декодирования видео HEVC:

  • Intel 6-го поколения «SkyLake» или более новые процессоры
  • AMD 6-го поколения «Carizzo» или более новые APU
  • NVIDIA GeForce GTX 950, 960 или более новые видеокарты
  • AMD Radeon R9 Fury, R9 Fury X, R9 Nano или более новые графические карты

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

С течением времени большее количество компьютеров сможет обрабатывать видео такого типа, и больше плееров будут поддерживать H.265. Для этого может потребоваться некоторое время, чтобы стандарт стал повсеместным, и до этого Вам придётся хранить свои 4K видео в AVC/H.264 при больших размерах файлов (или сжимать их больше и терять качество изображения). Но чем шире будет поддерживаться больше HEVC/H.265, тем лучше будет видео.

что это такое и чем смотреть этот формат

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

Что такое формат HEVC

логотип формата HEVCАббревиатура HEVC расшифровывается как High Efficiency Video Coding, что можно перевести на русский как высокоэффективное кодирование видеоизображений. Это формат, созданный для сжатия видео с разрешением до 8K (UHDTV, 8192×4320 пикселей). Другим названием формата является H.265, поэтому HEVC и H.265 это одно и тоже.

Формат HEVC разрабатывался как замена для устаревающего формата H.264/MPEG-4 AVC. Работа над новым стандартом началась еще в 2004 году, когда экспертная группа VCEG (Video Coding Experts Group) начала поиск новых технологий, которые могли бы лечь в основу нового стандарта. Тогда этому проекту были присвоены временные названия H.265 и H.NGVC (Next-generation Video Coding). Основными требованиями к разрабатываемому стандарту стали: снижение битрейта видео, сохранение текущего качества картинки, а также сохранение текущих требований к вычислительным мощностям.

развитие форматов кодирования видео

Разработка продолжалась с 2012 года, когда этот формат был официально утвержден. Но, после выхода особой популярности формат не получил, он применялся в IP камерах, телевизионном вещании и других специализированных областях. Обычным пользователям формат HEVC стал известен в конце 2017 года, когда вышла iOS 11.

Чем HEVC лучше старых форматов

С выходом операционных систем macOS High Sierra и iOS 11 компания Apple начала активно внедрять новые форматы для видео и фотографий. Так, для фотографий теперь используется формат HEIF, о котором мы уже рассказывали, а для видеороликов формат HEVC.

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

разбивка кадра на блоки в H.264 и HEVC

Разбивка кадра на блоки в H.264 (вверху) и HEVC (снизу).

Для того чтобы добиться такого улучшения уровня сжатия видео было применено несколько новых подходов. Одним из таких подходов является увеличенный размер блока, на который разбивается кодированный файл. При кодировании видео в формате H.264 такой блок имеет размер 16 на 16 пикселей (всего 256), в то время как при использовании HEVC размер такого блока может составлять 64 на 64 пикселей (всего 4096). Такое увеличение блока показывает особо хорошие результаты на видеороликах с большим разрешением, что очень кстати, ведь формат HEVC поддерживает видео с разрешением до 8192×4320 пикселей.

Как вернуться к старым форматам видео

Как уже было сказано, в новых версиях iOS и в новых моделях iPhone, формат HEVC используется по умолчанию. Если настройки не поменять, то камера будет сохранять видео в формате HEVC, а фотографии в формате HEIF. Но, при необходимости пользователь может вернуться к использованию старых форматов. Для этого нужно зайти в настройки Айфона и открыть раздел «Камера».

раздел Камера в настройках iPhone

Дальше нужно перейти в подраздел «Форматы».

подраздел Форматы

И включить опцию «Наиболее совместимые».

опция Наиболее совместимые

После включения данной опции iPhone перестанет использовать HEIF/HEVC и вернется к старым форматам видео. Но, такой возврат приведет не только к увеличенному расходу памяти, но и к ограничению по частоте кадров. Например, с форматом HEVC камера iPhone X может снимать FullHD видео со скоростью 240 кадров в секунду, но после возврата к старым форматам эта функция становится недоступной.

Чем смотреть HEVC

Сталкиваясь с видео файлами в формате HEVC, пользователи задаются вопросом, чем смотреть такой контент. На данный момент, все устройства Apple под управлением iOS 11 и Mac на High Sierra без проблем справляются с воспроизведением HEVC. Например, на iPhone или iPad такие файлы можно воспроизводить с помощью стандартного приложения «Видео» либо с помощью приложения VLC Media Player.

На мобильных устройствах с операционной системой Android вы можете воспроизводить HEVC файлы с помощью MX Player и программного декодирования (в то случае если производительности устройства достаточно).

Что касается настольных компьютеров под управлением Windows, то тут, как всегда, все намного проще. Вы можете использовать такие программы как Media Player Classic, Media Player Classic BE, KMPlayer, VLC или GOM Player.

Легенды и мифы современных реализаций x265/HEVC или x264 vs x265 в сравнении скриншотов / Habr


Удивительно, но факт — стандарту сжатия видео High Efficiency Video Coding (HEVC) уже более трех лет. Существуют не только программные, но и аппаратные решения для кодирования и даже бытовые медиаплееры с поддержкой этого формата. Интернет завален рекламными хвалебными восторженными отзывами и обзорами, причем обозреватели, в зависимости от наглости безграмотности доверчивости, обещают улучшение сжатия на 30-50% по сравнению с h.264 при том же качестве картинки. Теоретически оно наверняка так и есть и я совершенно ничего не имею против самого стандарта, всей этой высшей математики, множественности профайлов и объективной оценки субъективного восприятия психофизиологических параметров с помощью PSNR. Побудительным мотивом для написания этой антинаучной статьи послужила чистая недоверчивость, желание самостоятельно пощупать имеющиеся на данный момент свободные реализации кодировщиков видео в этот формат (x265) и сравнить результаты со старым добрым x264.

Чтобы понять масштаб проблемы и степень моей недоверчивости, отмечу, что я не верю в аппаратное кодирование в h.264/AVC (а точнее уверен, что с той же и скоростью при лучшем качестве может работать и чисто программный x264.exe), не верю в кодирование видео с помощью CUDA и DXVA и считаю все реализации таких «кодировщиков» чистым шарлатанством и не верю в магические двухкнопочные программы, которые могут «закодировать быстро и хорошо». Еще я не верю в демократию, антивирусы и современное высшее образование, но это уже чисто мои проблемы не имеющие отношения в кодированию видео 🙂
А теперь, зарядившись изрядной долей скептицизма возьмем один из скомпилированных вариантов свободного кодировщика x265, а точнее восьмибитовую GCC сборку 1.7+286 и все дальнейшие действия будем производить с ней.
В этом пункте, кстати, моя недоверчивость опять взбрыкнула и пришлось потратить около 6 часов для сравнения 11 разных сборок с разных сайтов чтобы ее успокоить. Оказалось что результаты кодирования с аналогичными параметрами были идентичны до степени смешения, а время кодирования отличалось не больше чем на 5-6 процентов.
Для начала, возьмем в качестве исходника упомянутый выше отрывок из Аватара брызги-дерево-туман и чтобы исключить тормоза декодера, сохраним 100 кадров и из него в виде несжатого YUV4MPEG2 файла, который в дальнейшем и будет кодироваться. В x265 по умолчанию применяется CRF метод сжатия с постоянным качеством, поэтому закодируем и в x264 тоже в режиме CRF с показателем качества 17.2. Цифра взята не с потолка, а опытным путем выяснено что любое увеличение этой цифры ведет к понижению и битрейта и качества картинки на выходе, а уменьшение только повышает битрейт без какого-либо заметного увеличения качества. Конечно же остальные параметры кодирования были тоже на максимуме и в результате получился сжатый файл с битрейтом 17.6 Mb/s (что почти в 2 раза ниже исходных 31 Mb/s на BD диске). Время кодирования 100 кадров — 40 секунд. Качество картинки получилось почти идентичным по сравнению с исходником и даже не стоит выкладывать сравнение. В дальнейшем мы будем сравнивать 12-й В-кадр файла x264-17.2.mkv с разными вариантами кодирования в HEVC.

x265 радует нас множеством готовых пресетов, но нас конечно же будет интересовать самый последний — placebo. На самом деле даже placebo не обеспечивает максимальные установки, но об этом чуть позже. По умолчанию x265 кодирует с показателем качества 28 (возможно в этом и есть глубокий смысл, но я его не уловил). С такими установками битрейт выходного файла получается менее 2 Mb/s (для 1080p) и вместо картинки на выходе такое мыло, что и смотреть невозможно и сравнивать смысла нет. Поэтому на первый раз ужесточим условия совсем немного и воспользуемся максимально короткой командной строкой

"E:\Video\x265\x265_64-8.exe" "E:\Video\avatar\raw.y4m"  --crf 23 --preset placebo --output "E:\Video\avatar\x265-test1.mkv"
В результате у нас получится файл с битрейтом 5.4 Mb/s. Время кодирования чуть менее 7 минут. Качество в принципе не плохое, но пока до x264 далеко. На ссылке сравнение скриншотов общим весом около 6 Мб на сайте screenshotcomparison.com (виноват, но я не знаю другого удобного способа сравнивать скриншоты)

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

Попытка #2, crf 20, битрейт 9050 kb/s — лучше, но все равно не то

А вот тут пора вспомнить что пресет placebo использует далеко не самые максимально возможные параметры. Наиболее важные здесь —me star (при максимальном значении full) и —subme 5 (при максимальном 7). Попробуем ужесточить условия и вручную сказать

"E:\Video\x265\x265_64-8.exe" "E:\Video\avatar\raw.y4m" --preset placebo --me full --subme 7 --psy-rd 0.5 --psy-rdoq 0.5 --output "E:\Video\avatar\x265-test1.mkv"
Сразу же становится понятным почему разработчики не рискнули вставить в «максимальный» профайл максимальные значения параметров. Время кодирования увеличилось более чем в 10 раз

И стоил ли результат этих жертв? не уверен…
Итак попытка #3, crf 20, -me full —subme 7, битрейт 9045 kb/s — 77 минут кодирования

И тут же сравнение результатов пресета placebo с вручную заданными -me full —subme 7

Выкидываем вручную заданные me, subme и ползем дальше.
Попытка #4, crf 18, битрейт 12922 kb/s — почти хорошо, но x264 пока лучше

Теперь посмотрим что будет если закодировать в x265 с тем же битрейтом что и x264 и с максимальными параметрами.
Этого же битрейта удалось достичь при значении crf 16.2. В этот раз кодирование заняло 90 минут.
Ссылка на файл

Результаты очень близки, но все же x264 сохранил чуть больше деталей и добавил чуть меньше мыла.
Вывод: Текущие реализации x265 проигрывают по качеству x264 на высоких битрейтах.

Вот мы и подошли к основному посылу всей статьи. Форматы сжатия видео вместе со всем остальным миром катятся в сторону упрощения и отупления населения. Никому не интересно иметь потребителя, который разглядывает скриншоты сравнений, борется за каждый лишний пиксель искажений, вчитывается в параметры кодирования и т.д. Все затачивается на максимально быстрые и смешные профайлы кодирования с минимальными битрейтами. Наверняка на низких битрейтах x265 будет иметь значительное преимущество над x264. Хотя и там и там будет масса искажений и мыла, но у x264 будет больше. Проверим.
Попытка #5, x265 5371 kb/s, x264 5374 kb/s

А вот и не отгадали 🙂 Даже на родном для x265 битрейте x264 выглядит поприличнее.

Выводы делайте сами, а я с надеждой жду объективной критики 🙂

Что творится с HEVC (h365) / Эрливидео corporate blog / Habr

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

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

Так вот h364 — это сочетание хорошего кодека, хороших энкодеров и массы приличных декодеров. Но что же происходит с h365?

h365 — это стандарт, который приходит на смену h364. Его прибытие стало омрачено сомнительной авантюрой гугла с их VP6, VP9, VP10 и сказками о том, что кодеки серии VP лучше любого h364 и т.п.

Главная суть h365 в том, что он продается как решение для размеров экранов выше чем FullHD. Для чего он реально годится мы поговорим ниже, но мир устроен так, что сначала надо продать. Вот для 4K он и продается.

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

Кодирование


На сегодняшний день h365, он же HEVC уже поддерживается на большом количестве энкодеров: софтверные, обычные аппаратные (Nvidia NVENC, Intel QSV) и железные аппаратные.

Какое-то заметное применение h365 можно встретить на спутниковом телевидении (редкие, но уже встречающиеся каналы с гигантским битрейтом), IP камеры и всякие бесчисленные коробочки для захвата и кодирования HDMI (и немножко SDI).

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

Здесь надо быть очень аккуратными с тем, что именно будет уметь железка или софтина. Так, например, Hisilicon достаточно давно выпустил первый чипсет с поддержкой h365 для IP-камер, а вот софт отстал чуть ли не на полтора года от них. Сегодня до сих пор продается полно камер, у которых написано h365, а они не могут его отдавать в реальном времени — только экспортировать файлы через нерабочий китайский софт. В чём тут выражается поддержка h365, продавцы ответить не могут, но упорно кивают головой: да, да, можем h365.

Аналогичная проблема и с RTMP энкодерами. Один из частейших вопросов: «а что, ваш софт не умеет h365 по RTMP?».

Это не наш софт «не умеет», а RTMP не умеет h365. В RTML используется flv-подобная упаковка кадров и h365 ни в одном, ни в другом стандарте как доступные не отмечены. Есть всякие хитрые хаки, позволяющие запихать h365 в протокол, не рассчитанный на это, но называть это RTMP уже будет перебор — это будет проприетарный, закрытый протокол. Подобные изменения существуют, делаются они китайцами, а это как правило означает просто истеричное отношение к предложениям поделиться спецификацией на протокол.

Т.е. железо может уметь h365, а софт, запущенный на нём, может отставать в развитии и просто не уметь с ним работать и такого пока ещё полно.

Вещание


Сейчас в дикой природе h365 проще всего встретить на IP-камерах: там оно уже есть и уже потихоньку распространяется, спасибо HUAWEI. Так же можно на спутниках найти 30-мегабитные каналы, сжатые в h365.

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

По поводу вещания ситуация такая: h365 в протоколе HLS поддерживается всеми уже очень давно, а эппл очень вовремя очухались и зафиксировали очевидное в стандарте. Но всем пока что плевать, потому что мало какие айфоны могут его проигрывать.

Т.е. важно запомнить: MPEG-TS давно и надежно умеет передавать h365, а значит то, что называют UDP или HTTP с большой вероятностью тоже сможет.

Так же h365 передается по RTSP: есть упаковка и в SDP, и в RTP. Остается старый нюанс с передачей bframes по RTSP, но это отдельная головная боль.

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

Проигрывание


Пока забудьте =)

Из десктопных браузеров показывать h365 сейчас фактически умеет только Microsoft Edge, остальные нет.

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

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

Конкуренция


h365 сравнивают с h364: ведь разницу в битрейте надо ещё увидеть, а поддержка h364 сейчас есть абсолютно везде

h365 сравнивают с VP10, потому что так попросил Гугл. На практике у VP10 проблемы с ещё меньшей поддержкой со стороны железа (а значит для него нужно ещё больше батареек и процессорной мощности) и плохие протоколы проигрывания.

h365 начали сравнивать с AV1, но это пока вообще можно не рассматривать — слишком новая штука. Очень интересно, подождем несколько лет.

Резюме


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

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

HEVC/h.265 кодек и Adobe Premiere

Главная | Информация | Использование h.265 (HEVC) в Premiere.

актуально на 12.2019

 

Формат H.265/HEVC и его применение

H.265 также называемый High Efficiency Video Coding (HEVC) это стандарт компрессии видео, который разработан для более эффективного сжатия видео высокого разрешения. Конечной целью является передача 4К контента высокого качества по существующим каналам связи. Netflix в августе 2016 опубликовал результаты своего сравнения кодеков x264, VP9 и x265* на основе видеоклипов из 500 фильмов и ТВ передач, по результатам которого кодеки VP9 и x265 дают на 40–50% лучшее сжатие 1080p, чем x264 (то есть размер файла может быть в половину от h.264). Используемые алгоритмы сложнее и требуют больших вычислительных ресурсов: для декодирования нужно примерно в 2 раза больше мощности чем для h.264, для кодирования — в несколько раз больше. Формат рассчитан на высокое разрешение, на низких разрешениях превосходство над h.264 не так существенно. Кроме размера файлов у HEVC есть еще одно серьезное преимущество, в нём менее проявляется блочность (бандинг) в пересветах — когда в областях близким к чисто белому становятся видны квадраты.

На видеокамерах h.265 получил популярность в 2018 году, благодаря новым IPhone, GoPro Hero, DJI Phantom 4k. Также часто используется в IP камерах видеонаблюдения. H.265 — это формат для воспроизведения на пользовательских устройствах: фактическим телевизионным стандартом для 4К выбран H.265, модельные ряды телевизоров с 2015 года имеют поддержку hevc, современные приставки выходят с его поддержкой. На Facebook и Youtube можно загрузить h.265. Контейнер для h.265 это файлы mp4 и mov. Аппаратная поддержка кодирования и декодирования h.265 имеется на видеокартах NVidia начиная с Maxwell 9×0-й серия, новых картах AMD, в интеловских процессорах начиная со Skylake.

Стандарт распространён не так широко, как h364, препятствиями являются слишком сложные алгоритмы сжатия и слишком дорогая и сложная система лицензирования (в 7 раз дороже чем MPEG). На настоящее время Netflix и Youtube работают в VP9. На подходе следующий открытый стандарт AOMedia Video 1 (AV1), который при равном качестве будет иметь на 25% меньший битрейт и главное бесплатный, почему на него планирует перейти Youtube. Стандарт НЕVC продолжает развиваться, поэтому устройства и программы, воспроизводящие hevc видео ранних версий, не факт что смогут проиграть все hevc видео. Sony разрабатывает кодек XEVC, базирующимся на H.265 (HEVC) версии 2. В 2020 разработчики hevc собираются принять стандарт на новый кодек, а к середине 20х годов ввести кодек в обращение: это vvc (h.266) на 30% более эффективный чем h.265.

* x.265 и x.264 это наиболее качественная реализации кодеков h.265 и h.264. В программы видеомонтажа как правило встроены коммерческие кодеки которые в той или иной степени уступают x.264|x.265. Аппаратные кодеки в видеочипсетах также уступают в качестве и полноте поддержки стандарта.


HEVC и Premiere

С версии Premiere CC 2015.1 введена поддержка импорта и экспорта в форматы HEVC (h.265). Для работы с форматом в более старых версиях Premiere, для импорта можно установить Drastic MediaReactor, и какой-нибудь плагин экспорта. Начиная с Premiere 2018 импорт сделан с использованием системного кодека, поэтому возможны проблемы: должна быть установлена версия Windows 8 или 10 с «HEVC Video Extension», которое поддерживает аппаратное и программное кодирование и декодирование h.265. Также возможны проблемы с hevc в mov контейнере (например с iPhone 8 и iphone X) — версии Премьера до 2018 обрабатывают файлы mov через Quicktime, но в quicktime нет кодека hevc, поэтому не получается открыть видеодорожку в таких файлах. Как решение проблемы можно попробовать поменять расширение на m4v, mp4.


Штатные средства Premiere

Формат поддержан начиная с версии 2015.1. При первом обращении к файлам hevc/h.265 Премьер устанавливает кодек (установочные файлы входят в дистрибутив, но Премьеру в этот момент понадобится доступ к интернету — для проверки на триал, и если у вас установлена триальная версия или просроченный триал то ничего работать не будет).

Есть особенности: файлы в контейнере mov (актуально для новых iphone) открываются Премьером или его встроенными средствами, или через установленный в системе QuickTime, то есть при импорте файла mov Премьер смотрит что там внутри, если он понимает, то декодирует его сам, иначе вызывает QT. В QuickTime поддержки HEVC нет, в Premiere поддержка HEVC встроенным импортером mov файлов появилась начиная с версии 2018, а 10-битных HEVC c 2018.1. Начиная с 2018.1 квиктайм отключен вообще. Но мы всегда можем поступить просто — изменить расширение на mp4 и не переустанавливать Премьер на 2018+. Если это не поможет, а такое может быть, то придется перекодировать или всё таки решиться на установку последней версии Премьера (hevc кодек старых версий не открывает некоторые файлы, которые открывает более новый, что замечено с материалом с Panasonic S1).

Ещё в 2017.1 появилась особенность в работе со звуком Dolby Digital (AC3) — Adobe отказалась от лицензирования кодеков Dolby и исключила их из дистрибутива (пропали Adobe\Adobe Premiere Pro CC 2017\RuntimeInstallers\1.0\dolbycodec.dat и mc_dec_dd.dat и подставлять их бесполезно). В CC 2018 эта практика закрепилась — Adobe перешла на микрософтовские системные Media Foundation кодеки Dolby и HEVC, наличие в системе DirectShow кодеков значения для Премьера не имеет. В Win7 нет Media Foundation с кодеками Dolby и HEVC. Поэтому, не рекомендуем пользователям Win7 устанавливать CC 2017.1 и новее — вы не сможете открыть звук в файлах mts. Если всё таки решаете ставить новый Премьер, то нужно найти и установить набор кодеков MainConcept Codec Suite для премьера с поддержкой AC3.

Если у вас Win10 и файлы MTS импортируются без звука, то поздравляем, вы установили LTSC-подобную версию windows в лицензию которой кодеки Dolby не входят. Для решения проблемы можно скачать DolbyDecMFT.dll например с www.dll.ru (нужна 64-битная версия), файл перенести в C:\Windows\ SysWOW64, и зарегестрировать её в системе: выполнить в командной строке regsvr32 c:\windows\syswow64\DolbyDecMFT.dll

В 2018.1 для Мас и 2018.2 для Windows возможно аппаратно кодировать в HEVC при наличии процессора с Intel QSV.

Монтаж h365 видео аналогичен тому как Премьер обрабатывает LongGOP AVCHD/XAVC — необходимость декодировать промежуточные кадры. Видео с телефонов имеет небольшой битрейт и обрабатывается сранительно легко. Если битрейт высокий, то могут началься проблемы, поэтому нужно иметь быстрый CPU или включенную поддержку QSV для аппаратного декодирования.

Для экспорта имеются готовые пресеты. Битрейт у них установлен на 30-50% меньше чем для аналогичных пресетов для h.264, что свидетельствуето меньшем размере файлов после экспорта ( 50-70% от штатного MainConcept h.264). Цена этого — в несколько раз большее время кодирования в зависимости от настроек качества.
В 2015.3 добавлен 10 битный профиль с цветом Rec.2020.

Rovi Total Code for Premiere
Могут возникнуть проблемы с импортом h.265, если установлен Rovi Total Code for Premiere — если h.265 видео экспортированное из Премьера нормально импортируется при установленном Rovi Total Code, то в видео закодированном в x265/1.5 в Премьер импортируется только звук, так как Rovi перехватывает mp4 на себя, но hevc он не умеет декодировать. Плагин можно не удалять, а просто перенести его папку в другое место, чтобы при необходимости импорта/экспорта какого-либо экзотического формата можно было вернуть.


iPhone 8, X, 11 и Premiere

В новых iphone запись видео делается в формате hevc в файлы с контейнером mov или mp4. В зависимости от версии Премьера и Windows возникают разные ситуации:
* Если у вас установлена Windows 10 и Премьер версии 2018.1 и новее, то такие файлы импортируются без проблем (нужна свежая сборка win10 с HEVC Video Extensions или HEVC Video Extensions from the Device Manufacturer).
* Если у вас стоит Премьер 2018 и новее, но Windows 7, то файлы не импортируются. Проблема в том что в с этой версии премьер открывает hevc при помощи системного декодера MFC, которого в Win7 нет. Как вариант можно попробовать переименовать mov в mp4.
* Если у вас стоит старый Премьер (2017.x — 2015.1) и Win 10, то проще всего установить последнюю версию Премьера, или же можно попробовать переименовать в mp4 ( файлы mov с hevc внутри будут открываться через Quicktime, но QT не умеет работать с hevc, поэтому попробуем открыть их через ImporterMPEG).
* Если у вас стоит старый Премьер (2017.x — 2015.1) и Win 7, то можно попробовать переименовать в mp4 (попробуем открыть через ImporterMPEG).
* Если у вас совсем старый Премьер (2015.0 и старее) и любая версия windows, то придется перекодировать.

** Если видео в СС2019 при перемотке на таймлайне стопится или перепрыгивает на начало, то нужно включить GPU декодирование. Если GPU декодирования нет (нет Intel QSV), то придется перекодировать.
** Если у вас установлен новый Premiere, но в триальной версии, то файлы hevc в любом контейнере не будут открываться. Проверить на триал легко — в полной версии должен быль доступен hevc для экспорта.
** Если переименование файлов не поможет, то нужно перекодировать. Сделать это сразу на айфоне можно в приложении «HEVC & H.264 Video Compressor», на компьютере можно перекодировать в HandBrake или лучше Avidemux.

Также может возникнуть проблема с рассинхронизацией звука и видео на таймлайне. Это связано с тем что при записи некоторые кадры могут пропускаться (так называемый vfr) и Премьер 2015.0, 2017.x, 2018.0 не могут это корректно обрабатывать. Поэтому при перекодировании таких файлов пользуйтесь конверторами которые позволяют выправлять кадровую частоту (обычно то называется constant frame rate).

Для комфортной работы с на таймлайне с таким материалом с высоким битрейтом нужен процессор Intel с аппаратным декодированием QSV
Формат HEIF (HEIC) в котором новые айфоны записывают картинки, поддерживается в Premiere 2019/Windows10 c HEIF Image Extensions.


Плагин Voukoder

Voukoder это бесплатный плагин экспорта на основе ffmpeg. Поддерживается аппаратное ускорение кодирования видеокартами NVidia, AMD и Intel. Достоинством являются хорошая поддержка формата, хорошая совместимость с различными версиями Премьера (от CS6 до СС2020) и разными поколениями видеокарт, последние версии для аппаратного кодирования требуют свежих драйверов. Кроме аппаратных кодеров h364/hevc в нём поддержаны кодеры x264, x265, prores, VP8, VP9, FFV1, HAP, AV1; контейнеры mp4, Matroska, mov, webm. Настройки сравнительно простые и логичные.


Плагин NVENC_export

Этот бесплатный плагин экспорта, позволяет экспортировать видео в формат h.265 при наличии видеокарт NVidia Maxwell и Pascal (GTX 9×0 и новые 7×0, GTX 10×0 серии). Работает быстро, но плохо совместим с современными версиями Премьера и Windows. Подробнее здесь.


Cinegy Daniel2

Прежде всего это коммерческий кодек позиционируемый как альтернатива монтажным кодекам DNxHD/ProRes. Уникальной особенностью заявлена работа на GPU (CUDA), за счет этого он очень быстр, что нужно для монтажа 4К, 8К, 16К материала. Кодек универсальный — при отсутствии gpu работает на процессоре и тоже быстро. Кодек может быть интересен как имеющий плагин ввода/вывода для Премьера, при чём кроме собственно кодека Daniel2 в нём есть экспорт в h.264 и hevc через блок nvenc видеокарт NVidia. Отличается несколько завышенными системными требованиями: Windows 10 64bit и NVidia Pascal.


Другие плагины экспорта

Пакеты Drastic MediaReactor в версиях Workstation и Lite for Adobe имеют плагин импорта h.265. Профессиональный пакет Sorenson Squeeze в версиях 10 и 11 поддерживает программное кодирование h.265 и VP9. В 2018 проект закрыт.
Коммерческий кодировщик Cinemartin CINEC имеет плагин для Премьера, судя по характеристикам и функционалу, основанный на бесплатном ffmpeg, только за неадекватно высокую цену. Сайт не обновляется с 2014 года.


Конвертеры

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


Экспорт из Premiere через Frame Server

Для прямого экспорта из Премьера через внешние конвертеры можно воспользоваться плагином Advanced Frame Server.
1. Устанавливаем Advanced Frame Server, вспоминаем путь куда установили и копируем dfscPremiereOut.prm оттуда в C:\Program Files\Adobe\Common\Plug-ins\7.0\MediaCore
2. Устанавливаем последнюю версию MediaCoder, скачиваем и устанавливаем апдейты.
3. Экспортируем обычным образом (например File > Export > Movie) и выбираем Advanced Frame Server выходным форматом.
4. Вводим имя промежуточного файла для экспорта, например «signpost», Color space — YUY2.
5. Нажимаем «Export» для запуска FrameServing.
6. Запускаем Mediacoder и загружаем «signpost», в закладке Video выбираем Format: H.265, если видеокарта NVidia GTX 950 и выше, то можно включить аппаратное кодирование — выбрать Encoder: NVENC.

7. Нажимаем «Start».
8. После завершения кодирования в MediaCoder остается отменить экспорт в Premiere. К сожалению, из-за этой особенности работы пакетное кодирование через Adobe Media Encoder протекает в ручном режиме.

Можно даже не использовать MediaCoder, StaxRip и подобные фронт-энды. Frameserver позволяет работает с энкодерами из командной строки, использовать TSmuxer, FFMPEG и X265 напрямую. При экспорте этим способом так же возможно задействовать аппаратное кодирование h.265 при наличии видеокарты NVidia от 9×0-й серии или процессора Intel серий от SkyLake.
Из недостатков: может возникнуть проблема с цветовыми пространствами bt.601 vs bt.709.

 

Полезные ссылки

https://helpx.adobe.com/premiere-pro/using/whats-new.html
https://helpx.adobe.com/premiere-pro/kb/fixed-issues.html
https://blogs.gnome.org/rbultje/2016/12/13/overview-of-the-vp9-video-codec/

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

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