Что такое профиль? Профиль
A H.264 более или менее определяет то, что “звонит и свистит” кодер может использовать при сжатии вашего видео - и есть много функций H.264, которые кодер может включить. Какие из них разрешено включать, определяется профилем. Профили обеспечивают совместимость между устройствами, которые имеют различные возможности декодирования. С профилями кодер и декодер согласовывают набор функций, с которыми они оба могут справиться.
Что делают различные профили?
Подробный список см. в Профили H.264 на Википедии.
Обычно профиль Baseline ограничивает кодировщик только некоторыми базовыми функциями. Видеофильмы, закодированные с базовым профилем, могут легко воспроизводиться даже на устройствах с меньшей вычислительной мощностью, таких как старые смартфоны. Например, на телефонах Android и iOS officialy проигрывает видео, закодированное только с базовым профилем, но не High или Main. Это немного изменилось за последние годы, когда все больше и больше телефонов могут на самом деле проигрывать основное или высокопрофильное видео, но все же официальные рекомендации не стоит упоминать, что .
В основном для недорогих приложений, этот профиль чаще всего используется в видеоконференциях и мобильных приложениях. Он соответствует подмножеству функций, которые являются общими для Базового, Главного и Высокого профилей
Main и High, просто добавьте к ним функции. Особенно высокий профиль часто используется в вещании:
Основной профиль для широковещательных и дисковых приложений, особенно для телевизионных приложений высокой четкости (например, это профиль, принятый форматом хранения Blu-ray Disc и вещательной службой DVB HDTV). Например,
B ломтики разрешены только в профиле Main и выше. Их можно использовать для экономии пропускной способности, но они сложнее декодировать, поэтому некоторые устройства могут их не поддерживать.
Какое отношение это имеет к качеству?
Профиль только косвенно влияет на качество. Некоторые возможности более высоких профилей могут позволить вам получить такое же качество при меньших размерах файлов по сравнению с более низкими профилями.
Например, CABAC кодирование энтропии (Main и High) более эффективно, чем CAVLC (Baseline). Она также более интенсивна с точки зрения вычислений. Таким образом, если дать кодеру определенную скорость передачи битов, он сможет создавать видео лучшего качества с помощью CABAC, чем с помощью CAVLC, так как достигается гораздо лучшая компрессия.
Это также объясняет, почему вы достигли меньшего размера файла с профилем High - очевидно, вы каким-то образом установили постоянный уровень качества, и кодер мог бы использовать более продвинутые методы сжатия для создания видеофайла, который имеет такое же качество, как и профиль Baseline, но меньшего размера.
Итак… какой из них вы должны использовать?
Некоторые основные правила:
- Baseline профиль, если вы нацелены на старые мобильные устройства
- Main или High профиль, если вы нацелены на веб-потоки, длительное хранение, PC или Mac, Blu-ray авторизацию и т.д.