Руководство OTT по кодекам, форматам контейнеров и транскодированию


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

Что такое кодек? Я знаю, что они нужны вам, чтобы показывать фильм тут и там, но что это, черт возьми, на самом деле? Что меня действительно смутило, так это все термины, о которых я слышал, но никогда толком не понимал: H.264, DivX, MP4, AVI, MPEG-2, AVCHD, AAC, OGG, MKV и т. д. и т. п. Были ли это все кодеки? После долгого чтения и изучения я понял, что мир аудио- и видеокодеков и форматов контейнеров очень запутан. На самом деле, я даже не знал разницы между кодеком и форматом контейнера, пока не начал исследовать.

Я не буду вдаваться в подробности, просто потому, что тема очень быстро становится очень краткой. Вас действительно волнует, если 1 час несжатого видео в формате RAW 1080p 60 кадров в секунду съедает почти 500 ГБ дискового пространства? Наверное, нет.

Что такое кодек?

Так что же такое кодек и что он делает? Проще говоря, кодек — это кодер/декодер или, в его первоначальном виде, компрессор (co) – декомпрессор (dec). Именно это и делает кодек: он берет цифровой файл, сжимает его (или кодирует) для хранения и распаковывает его (или декодирует) для просмотра или перекодирования. Я расскажу вам, что такое транскодирование, чуть позже, давайте не будем путать себя на раннем этапе.

Важно понимать, что кодек — это своего рода спецификация того, как должен выглядеть битовый поток. Что такое битовый поток? Если не вдаваться в технические подробности, то это то, как должна быть организована последовательность байтов для этого конкретного кодека. Каждый кодек имеет определенный набор рекомендаций. Например, он может указать ширину, высоту, соотношение сторон и т. д. Посетите эту страницу, но не читайте слишком много, иначе у вас заболит голова:

http://www.cs.cf.ac.uk/Dave/Multimedia/node262.html

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

Так зачем же нам вообще нужно все это сжатие и распаковка? Как я уже упоминал выше, несжатый файл RAW 1080p занимает почти колоссальные 500 ГБ всего за один час. Вам понадобится собственный центр обработки данных для хранения всех ваших семейных видео, если бы все было записано в этом формате. Вот тут-то и вступает в игру сжатие. Существуют разные типы сжатия, которые используются в разных типах кодеков. Итак, какие популярные кодеки существуют?.

Популярные кодеки

H.264  (MPEG-4 Part 10 AVC) – он также официально известен как MPEG-4 Part 10, но обычно вы слышите именно H.264. . Да, у одного и того же предмета есть несколько названий. H.264 на сегодняшний день является самым популярным форматом для кодирования видео. H.264 предлагает лучшее из всех миров: файлы меньшего размера с более высоким качеством.

Опять же, помните: H.264 — это всего лишь кодек, вы не найдете файлов с расширениями .h264. Вот для чего нужны форматы контейнеров, о чем я объясню в разделе ниже. Этот кодек используется повсюду: от смартфонов до цифровых видеокамер и дисков Blu-ray. Сегодня его также используют для доставки большого количества веб-видео, поскольку он обеспечивает отличное качество изображения с высокой степенью сжатия и низкой скоростью передачи данных, что означает меньшую нагрузку на потоковые серверы.

Он также пользуется широкой поддержкой и, вероятно, еще долгое время будет самым популярным кодеком. Он поддерживается Apple, YouTube, HTML 5 и даже Adobe Flash.

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

Как я уже упоминал выше, для одного кодека существует несколько кодеров. Для кодека H.264 одним из самых популярных кодеров является x264 от VideoLAN, тех же людей, которые создают VLC Media Player. x264 бесплатен и имеет открытый исходный код, но существует также множество коммерческих кодеров H.264. Неважно, как видеопоток преобразуется в этот формат, любой декодер H.264 (например, VLC) сможет просмотреть файл.

MPEG-2 – У вас все еще есть большая коллекция DVD? Все это делается с помощью кодека MPEG-2. Это довольно старое, но очень распространенное явление. Еще одно место, где вы можете обнаружить сжатие MPEG-2, — это просмотр каналов HD, транслируемых по воздуху. Вот и все сжатие MPEG-2. Интересно знать, правда?

Поскольку алгоритм сжатия с использованием MPEG-2 значительно уступает H.264, его преимуществом является гораздо более быстрое кодирование. Однако для веб-стриминга это никогда не работало, потому что при более низком битрейте качество быстро падало, и в итоге вы получали пиксельное видео. Вот почему они придумали MPEG-4 Part 2.

MPEG-4, часть 2 – Вы, наверное, помните времена, когда все говорили о DivX и Xvid, верно? Это были кодеры формата MPEG-4 Part 2, он же H.263. Многие фильмы, которые вы загружали в свое время, были сжаты с использованием этого кодека, поскольку он обеспечивал хороший размер файла и сохранял приемлемое качество. Однако единственная серьезная проблема заключается в том, что контент высокой четкости по-прежнему страдает с точки зрения качества изображения, и именно здесь H.264, о котором я упоминал выше, взял верх..

Windows Media Video – по сути, это версия кодеков MPEG-4 от Microsoft. WMV 7 был представлен в 1999 году и был копией MPEG-4 Part 2. Позже появились WMV 8 и 9, а затем VC-1, кодек, который в основном копирует MPEG-4 Part 10 и в настоящее время используется в Blu-ray. диски тоже. Единственные другие места, где вы видите WMV и VC-1, — это в основном продукты, связанные с Microsoft, такие как Windows Movie Maker, Silverlight, HD DVD, Microsoft Expression Encoder и т. д.

Это только популярные видеокодеки, у вас также есть аудиокодеки, которые вступают в игру, когда мы говорим о контейнерах ниже. Популярные аудиокодеки включают FLAC, AC3, Dolby Digital Plus, DTS-HD, ALAC и т. д. Как и видео, аудиокодеки имеют собственные форматы контейнеров, такие как AIFF, WAV и т. д.

Это далеко не все существующие кодеки, это лишь список некоторых из самых популярных. Теперь поговорим о форматах контейнеров.

Форматы контейнеров

Форматы файлов

Когда вы воспроизводите файл в проигрывателе Windows Media, VLC, Quicktime или любом другом медиаплеере по вашему выбору, вы обычно открываете формат контейнера. Формат контейнера или оболочка — это, по сути, пакет из одного или нескольких кодеков, видео или аудио, или того и другого. Контейнер используется для добавления аудио вместе с видео и обеспечения идеальной синхронизации аудио и видео. Контейнер также будет содержать другую информацию, необходимую потоковому серверу или медиаплееру. Битовые потоки видео и аудио просто заключены в другой битовый поток.

Форматы контейнеров — это те расширения файлов, которые мы все используем, например MP4, MOV, WMV, AVI и т. д. Давайте рассмотрим некоторые из наиболее распространенных контейнеров:

MP4 . Вероятно, вы загрузили песню с расширением .MP4, которое является оболочкой для многих видео- и аудиокодеков. Чаще всего он используется для упаковки видео H.264 и аудио в формате AAC. Он также поддерживает видеокодеки MPEG-4 Part 2 и MPEG-2. Кроме того, звук можно кодировать с использованием других кодеков, кроме AAC.

AVI – это формат контейнера Microsoft, появившийся в 1992 году. Он был очень популярен в мое время и до сих пор довольно популярен. Если вы выполняете какое-либо кодирование, вам больше никогда не следует использовать формат контейнера AVI. Во-первых, он не поддерживает новые кодеки, такие как H.264. У него также есть несколько других серьезных проблем, поэтому он больше не используется.

ASF – формат Advanced Systems от Microsoft обычно не использует расширение файла .ASF. Вместо этого вы увидите, что большинство контейнеров ASF используют .WMA или .WMV. Вы увидите эти файлы, если используете все продукты Microsoft. Как только вы покинете мир Microsoft, у вас возникнут проблемы с воспроизведением файлов, особенно если вы используете кодек H.264..

AVCHD – AVCHD – это наиболее распространенный формат контейнера для видеокамер HD. Видео обычно имеет формат H.264 со звуком AC3 (Dolby Digital) или Linear PCM.

MKV – Недавно скачивали фильм? Вероятно, это формат контейнера MKV, в котором хранятся видеофайлы H.264. Многие инструменты поддерживают MKV, например Boxee, PS3 Media Server, XMBC, VLC и т. д., но пока он не так широко поддерживается, как другие форматы контейнеров.

FLV – это Adobe Flash, который поддерживает множество различных кодеков, наиболее распространенными из которых являются H.264 и AAC. Flash-видео — один из самых популярных способов потоковой передачи видео через Интернет. Он сдает свои позиции из-за HTML 5 и того факта, что Apple не позволяет использовать Flash ни на одном из своих iDevice, но он по-прежнему очень распространен.

Существуют и другие форматы контейнеров, такие как формат файлов QuickTime, OGG, WebM и т. д., но теперь вы примерно поняли.

Транкодирование

Последнее, что нужно понимать во всем этом, это то, что вам, вероятно, придется конвертировать видео AVCHD, которое вы скачали с видеокамеры, в другой формат, который затем можно будет импортировать в iTunes и воспроизводить на своем iPhone. Поскольку существует очень много кодеков и форматов контейнеров, и каждый формат контейнера может иметь разные комбинации видео- и аудиокодеков, вам понадобится транскодер, чтобы получить тип файла, который вам нужен для вашего конкретного устройства.

Ручной тормоз

Существует множество транскодеров, также известных как видеоконвертеры: HandBrake, FFmpeg, SUPER, VirtualDub и т. д. Некоторые из них платные, а некоторые — бесплатные инструменты с открытым исходным кодом. Некоторые инструменты, такие как HandBrake, предоставляют вам предустановки, поэтому вы можете просто выбрать исходный файл, выбрать выходной формат, например iPod или iPhone, и нажать «Пуск». Он выберет за вас все настройки, контейнер, кодек и т. д. Однако, надеюсь, прочитав этот пост, вы теперь понимаете немного больше и можете приступить к конвертации видео между форматами и немного лучше понять основной процесс. Наслаждайтесь!.

Похожие сообщения:


9.04.2013