Чим відрізняються профілі H.264?


56

Я рендерував відео в After Effects CS5, і коли я його форматував, я вибрав кодек H.264, і в такому форматі він мав профіль із базовою, основною та високою.

Тому я зробив невеликий тест - рендеринг обох файлів за допомогою Baseline та High. Єдине, що я помітив, це те, що розмір відео був меншим, високий, надаючи менший розмір файлу.

Мені просто хотілося знати, в чому різниця, у тому, що найкраще за якістю та найкращим розміром файлу.

Відповіді:


78

Що таке профіль?

Профіль H.264 більш-менш визначає, які "дзвіночки" кодер може використовувати для стискання вашого відео - і є безліч функцій H.264, які кодер може включити. Які з них можна вмикати, визначається профілем. Профілі забезпечують сумісність між пристроями, які мають різні можливості декодування. За допомогою профілів кодер і декодер узгоджують набір функцій, з якими вони можуть працювати.

Що роблять різні профілі?

Детальний список див. У розділі Профілі H.264 у Вікіпедії.

Як правило, базовий профіль обмежує кодер лише певними основними ознаками. Відео, закодовані з базовим профілем, можна легко відтворювати навіть на пристроях із меншою обчислювальною потужністю, наприклад, старих смартфонах. Наприклад, телефони Android та iOS офіційно відтворюють лише відео, закодоване з профілем базової лінії, але не High або Main . За останні роки це дещо змінилося, коли все більше телефонів насправді можуть відтворювати основне чи гучне відео, але офіційні рекомендації цього не згадують .

Цей профіль, як правило, для недорогих програм, як правило, використовується у відеоконференціях та мобільних додатках. Він відповідає підмножині функцій, спільних між базовою, основною та високою профілями

Основні та Високі просто додають до цього функції. Особливо високий профіль часто використовується в мовленні:

Основний профіль для програм широкомовного та дискового зберігання, особливо для телевізійних програм високої чіткості (наприклад, це профіль, прийнятий форматом зберігання диска Blu-ray та послугою широкомовної передачі DVB ​​HDTV).

Скибочки B є, наприклад , дозволено тільки в головному профілі і вище. Їх можна використовувати для економії на пропускній здатності, але їх складніше декодувати, тому деякі пристрої можуть не підтримувати їх.

Що це стосується якості?

Профіль лише опосередковано впливає на якість. Деякі функції вищих профілів можуть давати вам таку ж якість з меншими розмірами файлів у порівнянні з нижчими профілями.

Наприклад, CABAC ентропійного кодування ( Основний і високий ) є більш ефективним , ніж CAVLC ( Базовий рівень ). Він також обчислювально інтенсивніший. Таким чином, якщо ви даєте кодеру певну швидкість передачі бітів, він зможе створити відео більш високої якості з CABAC, ніж з CAVLC, оскільки він досягає набагато кращого стиснення.

Це також пояснює, чому ви досягли меншого розміру файлу за допомогою високого профілю - очевидно, ви якось встановили постійний рівень якості, і кодер може використовувати більш досконалі методи стиснення для створення відеофайлу, який має таку ж якість, як і базовий профіль, але з меншим розміром розмір.

Отже ... який саме вам слід використовувати?

Деякі основні правила:

  • Базовий профіль, якщо ви орієнтуєтесь на старі мобільні пристрої
  • Основний або високий профіль, якщо ви орієнтовані на потокове потокове веб-перегляд, тривале зберігання, на ПК або на комп’ютерах Mac, створення Blu-ray тощо.

8
Оскільки це було написано написано, майже всі смартфони, включаючи Android та інші пристрої, зараз відіграють основний профіль, а багато хто грає на високих рівнях. Наприклад, підтримка високого профілю підтримується більшістю пристроїв, які претендують на відтворення вмісту високої чіткості. Ви майже напевно можете розраховувати на головне чи вище. Базова лінія була сильно покаліченою версією H. 264, розробленою для обмежених пристроїв минулих десятиліть.
thomasrutter

Не всі мають останні смартфони. Android все ще рекомендує використовувати базовий профіль . Те саме стосується i iOS . Звичайно, деякі (більшість нових) пристроїв підтримують більш високі профілі, але якщо ви хочете залишатися сумісними з низьким рівнем обладнання, вам доведеться вибрати це. Але я відредагував свою відповідь, щоб відобразити те, що ви говорите.
slhck

Цікаво - вбудований плеєр підтримує головне для мене деякий час, але ваша думка справедлива - ви не можете розраховувати на це. Однак ви можете розраховувати на сторонні програмні плеєри для основного та найвищого профілю, наприклад, гравці, такі як MX Player, мають підтримку програмного забезпечення для більш високих профілів - якщо це на основі ARM та достатньо висока продуктивність процесора.
thomasrutter

Зауважте, що станом на 2016 рік Google Photos, створюючи резервні копії, перетворює завантажені відео, записані на Android Nexus 6 з високим профілем, у профіль Baseline (у режимі резервного копіювання "високої якості", "необмежене зберігання")
nealmcb

Все-таки найкраща інформація, яку я прочитав у ffmpeg у 2017 році. ВЕЛИКИЙ ПОСТ.
typeoneerror
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.