Все что нужно знать о видео кодеках и контейнерах, статья. Портал «www.hifinews.ru»
Сегодня, кажется, все стремятся стать кинематографистами. Люди используют для видеосъемки самые различные гаджеты и девайсы, включая мобильные телефоны, цифровые фотокамеры, портативные и профессиональные видеокамеры. А последнее поколение цифровых зеркальных фотокамер позволяет записывать видео с поддержкой высокого разрешения.
Чтобы научиться снимать хорошее видео, потребуется приложить определенные усилия, но все становится еще более сложным, когда вы захотите во всей красе продемонстрировать свой шедевр другим людям. Может быть, вам нужно загрузить его на YouTube, может вы собираетесь записать свой Blu-ray или DVD диск, возможно, захотите загрузить видео на мобильный телефон или планшетный компьютер.
Разобраться в том, какой кодек и контейнер лучше подойдет для создания вашего видеошедевра порой достаточно сложно. Помочь в решении этой проблемы сможет представленный далее материал.
Какая разница между кодеком и контейнером?
Начинающие пользователи часто бывают озадачены, когда пытаются выяснить разницу между кодеками и контейнерами. Сейчас слово Кодек стало чем-то общеупотребительным, а изначально термин являлся сокращением от понятия КОмпрессор-ДЕКомпрессор. Что же делают кодеки?
Они принимают цифровые медиа данные и либо сжимают их (для передачи и хранения), либо распаковывают для просмотра и перекодирования. Каждый кодек использует определенный метод кодирования и декодирования цифровых данных.

Несжатое (англ. raw означает необработанное или часто говорят « сырое») видео и аудио требует для хранения огромного дискового пространства. Несжатое видео высокой четкости формата 1080i, записываемое со скоростью 50 кадров в секунду, съедает до 410 гигабайт в час. Аудио с CD дисков, довольно устаревшее по современным стандартам, звучит около 74 минут при емкости диска 680 мегабайт. Однако, восьмиканальный звук, кодируемый с 24 битным разрешением, потребует уже 16 мегабит в секунду, или несколько гигабайт в час. Даже возможностей широкополосного соединения с интернет порой не хватит, чтобы послушать музыку в полном аудио разрешении. Вот почему цифровые видео и аудио записи должны быть сжаты для передачи и хранения.
После того как медиа данные ужаты в разумные пределы, они должны быть упакованы для транспортировки и последующего отображения. Для этого используются форматы-контейнеры, выполняющие роль «черного ящика», наполняемого различными медиа-форматами. Хорошие форматы контейнеров могут вмещать файлы, сжатые разными кодеками.
Давайте разберемся с типами кодеков.
Общее понятие о кодеках
Если вы пообщаетесь с людьми, которые занимаются видеообработкой или посетите соответствующие веб форумы, то будете, так или иначе, причастны к, порой бурным, дебатам о том, какой кодек лучше. В действительности, эффективность любого кодека во многом зависит от используемого режима сжатия и типа обрабатываемых видеоматериалов. Так что стоит рассматривать различные кодеки и с учетом их конкретного использования и особенностей сжимаемого материала. Далее в основном рассматриваются видео кодеки, но в разделе, посвященном контейнерам форматов, упоминается и об использовании аудиокодеков.

Ввод и архивирование видео
Большинство устройств современной бытовой электроники получает контент в каком-либо уже сжатом формате. Как правило, только профессиональные видеооператоры работают с несжатым HD видео. Конечно в идеале, если это возможно, при наличии очень емкой системы хранения, видеоархивы нужно хранить в оригинальном формате съемки, потому что при этом обеспечивается максимальное качество. Перекодировка видео из одного типа сжатия в другой может привнести едва различимые искажения, которые могут снизить качество изображения. (Подобные погрешности минимизирует хорошее программное транскодирование.) Сегодня предлагается множество кодеков, с определенной специализацией. С большинством из них обычный пользователь может никогда и не столкнуться. Следующий раздел посвящен кодекам, как системам сжатия/декомпрессии, используемым в составе специального программного обеспечения, которое позволяет кодировать или перекодировать видеофайлы.
x.264/ MPEG-4 AVC (Advanced Video Coding). Этот наиболее распространенный кодек используется в современных цифровых видео- и фотокамерах, в которых результаты съемки сохраняются в виде файлов на встроенных жестких дисках, картах памяти, и т.д.
MJPEG (Motion JPEG). Это более старый формат, используемый некоторыми цифровыми камерами и видеотехникой прежнего поколения. Он был разработан теми же специалистами (Joint Picture Experts Group), которые занимались еще ранее разработкой кодека JPEG для сжатия обычных статичных изображений, отсюда и название этого кодека.
DV и HDV. Стандарт DV был разработан консорциумом компаний производителей видеотехники для ленточных систем хранения информации и часто использовался в видеокамерах со слотом для ленточных мини кассет. Некоторые версии DV успешно использовались в профессиональных видеокамерах, была разработана версия HDV для поддержки высокого разрешения с ленточными кассетами.

Дисковые форматы
Перейдем к устаревающим уже DVD или чуть более модным Blu-ray дискам. Несмотря на растущую популярность потокового видео, возможность передачи медиа данных с помощью дисков в обозримом будущем по-прежнему будет востребована. Записанные на диски материалы спокойно можно передавать там, где нет каналов связи и смотреть везде, даже там, где нет возможности подключиться к интернету.
MPEG-2. Необходимо различать кодек MPEG-2, также известный как x.262, от формата контейнера MPEG-2. MPEG-2 используется для сжатия видео на дисках DVD и сигналов телевидения высокой четкости (DVB), передаваемого по эфирным каналам. Первоначально MPEG-2 применяли и для сжатия на Blu-ray дисках, хотя большинство современных Blu-ray фильмов не используют MPEG-2.
x.264/MPEG-4 AVC. x.264 используется при сжатии видео для Blu-ray дисков. По сути это тот же кодек, который применяется для сжатия видео в современных видеокамерах. Данный метод очень масштабируемый и при высоком битрейте сжатое по стандарту x.264видео выглядит просто фантастически.
Microsoft VC-1. Microsoft VC-1 включает три разных по степени сжатия кодека. VC-1 Advanced Profile, также известный как Windows Media Video 9 Advanced Profile или просто WVC1 является одним из трех кодеков, применяемых для кодирования содержимого Blu-ray дисков. VC-1 в качестве альтернативы технологии Adobe Flash используется в интернет-платформе Microsoft Silverlight.

Потоковое и веб видео
Передача видео через интернет обязательно подразумевает компромиссы, в основном между качеством изображения и скоростью передачи данных, которая сегодня и ограничивает максимально достижимое качество. Скорость передачи или, как еще говорят, ширина канала во многом зависит от возможностей интернет-провайдера и используемой им технологии доставки сигнала в вашу квартиру.
MPEG-1. Это старый боевой конь для доставки видео в сети интернет. Хотя YouTube, Netflix, и другие поставщики относительно качественного потокового видео уже отказались от MPEG-1, масса видео стандартного разрешения на базе MPEG-1 все еще доступна на других сайтах.
WMV (Windows Media Video). Есть Windows Media Video кодек и контейнерный формат файла. Хотя, этот метод сжатия был и не так используем, как MPEG-1, в сети все еще есть много WMV контента. Но при создании своих видеоматериалов, его очевидно также не стоит применять.
x.264/ MPEG-4 AVC. x.264 обеспечивает при относительно низкой скорости передачи, достаточно высокое качество видео. x.264, вероятно, становится наиболее распространенным кодеком. Adobe поддерживает его во Flash, x.264может использоваться с изображениями HTML 5, на x.264ориентируется YouTube и Apple полностью поддерживает этот метод компрессии. Однако при создании видео сжатого в форматах x.264вы не сможете воспроизводить их на старых устройствах, это ставка на будущее.
Правильный контейнер: гибкий и удобный
Далее кратко рассмотрены наиболее распространенные сегодня контейнерные форматы медиафайлов. У каждого из них есть свои достоинства и недостатки. Выбор зависит от предполагаемой задачи. Контейнерные файлы, кроме сжатого видео, вмещают и цифровой звук, сжатый соответствующими аудио кодеками, а также меню и дополнительную информацию.
Контейнеры для архивирования и ввода
Также, как и с кодеками, Вы должны выбрать контейнерный формат для хранения сжатого видео с максимально возможным в ваших условиях качеством. Для большинства пользователей нужен просто способ сохранить свое видео, для того чтобы затем передавать его в потоковом виде по домашней сети или даже через интернет, но при этом никто не хочет видеть впоследствии на экране пиксельную структуру и смазанное изображение. Правильный контейнер поможет сохранить баланс между качеством и потоковыми возможностями.
Advanced Systems Format (ASF) – разработанный Microsoft контейнерный формат. Встречается несколько расширений, включая .asf, .wma и.wmv. Отметьте, что файл с расширением .wmv, вероятно, сжат кодеком WMV (Windows Media Video), но сам файл помещен в контейнерный файл ASF. Файлы ASF, в теории, могут содержать видео и аудио файлы, сжатые любым кодеком. Однако, практически воспроизведение иногда может стать проблемным, особенно с видео, сжатым кодеками x.264. Если вы планируете пользоваться продуктами Microsoft, ASF прекрасный выбор, но могут быть проблемы с медиа файлами на основе иных кодеков.
Audio Video Interleave (AVI) – один из более старых контейнерных форматов Microsoft. Вероятно, его уже не стоит использовать в новых проектах.

QuickTime: компания Apple продвигает собственный контейнерный формат QuickTime, который поддерживает множество кодеков для аудио и видео. Apple — убежденный сторонник x.264, таким образом, файлы QuickTime (.mov, .qt) могут содержать видео, сжатое кодеком x.264.
MP4. Этот контейнерный формат разработан Motion Pictures Expert Group, известен также как MPEG-4, часть 14. Видео внутри файлов MP4 кодируется кодеком x.264, а аудио – кодеком AAC, но могут использоваться и другие стандарты сжатия звука.
VOB и BDAV MPEG-2. Эти контейнерные форматы используются для упаковки данных на DVD и Blu-ray дисках, соответственно. В файлах Blu-ray дисков (.m2ts) могут содержаться видеозаписи сжатые кодеками x.264и VC-1, звук может быть сжат одним из кодеков Dolby или использоваться несжатый многоканальный сигнал в формате PCM.
AVCHD: Этот стандарт контейнера применен во многих видеокамерах. Снимаемое видео предварительно сжимается кодеком x.264. Аудиосигнал для контейнера кодируется кодеком Dolby Digital (AC3) или используется несжатый – PCM.

Flash: Компания Adobe имеет собственный контейнерный формат Flash, который поддерживает множество кодеков. Большая часть недавно созданного Flash видео кодирована с использование видеокодека x.264и аудиокодека AAC, но не стоит ожидать, что на всех сайтах используются только эти кодеки, особенно для ранее созданного видео.
Прочие контейнеры: Среди прочих форматов контейнеров, широко используемых особенно для доставки видео через интернет, можно упомянуть популярный во многом за счет своей универсальности и открытого кода формат Matroska (.mkv, .mk3d, .mka, .mks), а также OGG и DiVX. Файлы с расширением .divx вмещают видео, ужатое одноименным кодеком с пиратской родословной, который позволяет получить достаточно высокое качество видео при эффективной компрессии видеоматериалов. Долгое время Divx официально не признавался и его использование не приветствовалось. Однако сегодня многие известные производители уже встраивают аппаратные кодеки DiVX в свою видеотехнику.
Какой кодек и контейнер выбрать
Если вы будете размещать свое видео на домашнем сервере, с тем чтобы впоследствии смотреть его на экране телевизора, подключаемого непосредственно к сети или через медиаплеер, необходимо выяснить какие форматы распознают телевизор и плеер. Практически всеми устройствами поддерживается сегодня кодирование в соответствии со стандартом MPEG-2, но в этом случае потребуется достаточно большой объем для хранения видео в HD разрешении. Очевидно, наиболее подходящим в ближайшем будущем можно считать различные варианты кодека x.264, в котором реализован алгоритм сжатия, поддерживаемый всеми популярными контейнерами.

Если больше интересует воспроизведение готового видео, и вы планирует нарезать (ripping) фильмы из своей персональной коллекции DVD дисков для передачи по домашней сети, вас может устроить контейнер MP4, как удачный компромисс между степенью сжатия и качеством.
Материал взят с PCWorld (перевод с английского — hifiNews.RU)
Подготовлено по материалам портала «www.hifinews.ru», январь 2012 г. www.hifinews.ru
Поделитесь статьёй:

Кодеки для MP4 для Windows и других ОС
Для того, чтобы смотреть на компьютере или смартфоне видео в формате MP4, нужно иметь установленный кодек для MP4. Кодек – это программа, которая буквально распаковывает мультимедийный контейнер с видеорядом, звуком и другими компонентами, и тем самым дает возможность запустить воспроизведение файла. Кодек MP4 можно устанавливать отдельно – он есть в составе пакетных решений, – или вместе с проигрывателем со встроенными кодеками.
В статье мы рассматриваем несколько наборов кодеков под разные операционные системы, а также предлагаем вариант того, как посмотреть видеофайл в MP4 на любом устройстве без установки кодеков, но с использованием инструмента для конвертации.
X Codec Pack 2.7.4
X Codec Pack (ранее известный как XP Codec Pack) – не новый, но от того не менее функциональный пакет кодеков для Windows до 7 версии включительно. Помимо кодека для MP4, в паке полный набор AVI Splitter, OggSplitter/CoreVorbis, Matroska Splitter, AC3Filter, FFDShow MPEG-4 Video Decoder, H.264 и пр. Также в установщике есть хороший базовый проигрыватель Media Player Classic и The Codec Detective – утилита, дающая возможность просмотра информации об установленных в ОС кодеках.
Combined Community Codec Pack: CCCP
Combined Community Codec Pack – набор мультимедийных кодеков под Windows, созданный изначально командой энтузиастов любителей аниме с субтитрами. Он достаточно популярный среди анимешников, но последняя свежая версия с обновлениями выходила настолько давно, что с совместимостью со свежими версиями операционной системы могут быть проблемы. В пакетный установщик встроен кодек MP4 и другие популярные, например, CoreWavPack, Gabest FLV Splitter, Gabest’s MPV (MPEG-2) Decoder, VSFilter и бессменный Media Player Classic — Home Cinema (custom build) – в качестве нативного проигрывателя. Не поддерживает родные форматы QuickTime .QT и .MOV.
Portable codecs for Windows 10
Паки кодеков STANDARD Codecs и ADVANCED Codecs от Shark007 содержат все кодеки и фильтры для проигрывания на компьютере различных форматов аудио, видео и субтитров. Встроенные инструменты могут декодировать практически все существующие мультимедийные контейнеры без потерь. В нем реализована поддержка MP4 с несколькими звуковыми дорожками и языками субтитров. В составе Win7DSFilterTweaker и Codec Tweak Tool. Версия портативная – полезно, когда приходится пользоваться разными устройствами. Например, если собираетесь проводить презентацию с демонстрацией видео на чужом оборудовании, лучше запаситесь флешкой с Portable кодеками от Shark007 – могут пригодиться, если в системе не окажется предустановленных.
Download K-Lite Codec Pack
К-Лайт Кодек Пак – самый популярный набор кодеков, доступных для скачивания бесплатно и под любую версию ОС. Набор предназначен для проигрыванию видео и аудио без проблем с картинкой, звуковыми дорожками и субтитрами в любых форматах. Что бы ни хранил мультимедийный контейнер, K-Lite в собственном встроенном плеере скорее всего сможет открыть и воспроизвести содержимое. Внутри – необходимый минимальный сет кодировщиков-декодировщиков, распространяемых open-source или freeware. При том, что размер установщика небольшой, для рядового пользователя пака обычно вполне достаточно, даже если есть цель превратить старенький ПК в домашний мультимедийный кинотеатр.
Media Player Codec Pack for Microsoft Windows
Media Player Codec Pack – еще один набор, который который позволит бесплатно кодировать и декодировать видео. Возможность кодировать пригодится, если вы решите заняться монтажом и обработкой. В любом случае, если у вас на компьютере будет припасен предустановленный кодек-пак с поддержкой большинства существующих форматов видео, он вам не помешает. Пак достаточно полный, в нем традиционно есть компактный классический проигрыватель, в котором наверняка откроется 99,9% медиафайлов, не только MP4, а и XCD, VCD, SVCD и DVD. В наборе дополнительно есть фильтры ffdshow, плагины и вспомогательные инструменты для обработки видео и аудио.
StarCodec
StarCodec молодой и перспективный пакет кодеков для домашнего и корпоративного использования. На официальном сайте его можно скачать совершенно бесплатно, причем, он будет идеально совместим с 64-битными Windows самых свежих версий – до одиннадцатой. В плане частоты обновлений он один из лучших в списке, что касается полноты компоновки, то в наборе: DivX, XviD, H.264/AVC, MPEG-4, MPEG-1, MPEG-2, MJPEG, WebM и др. С проигрыванием MP4 и подобных ему популярных мультимедийных контейнеров точно никаких проблем не будет. Как узнать какие кодеки установлены? Все просто, это показывает родная утилита StarCodec. Встроенный проигрыватель, плагины и фильтры также есть, весь список приводить не будем – ищите его в описании на официальной странице проекта.
Выбираем кодек MP4 для Mac
С Windows разобрались – пакетов кодеков много, они бесплатные и некоторые из них обновляются достаточно часто, чтобы не иметь проблем с совместимостью со свежими версиями операционных систем. Но что, если видео в MP4 вдруг не откроется на Mac OS? В этом случае нужно найти, скачать и установить один из следующих наборов кодеков для MP4 под Mac.
Codec Pack DivX, пожалуй, самый популярный, лучший и наиболее полный набор кодеков, фильтров и сплиттеров на Mac. Впрочем, он мультиплатформенный и есть в версиях для других ОС. В пакете заведомо встроенный нативные инструменты для проигрывания и обработки. Но если вы привыкли к родному QuickTime или предпочитаете другие программы и проигрыватели мультимедиа, то не обязательно менять их на DivX, установленные в операционной системе кодеки будут работать во всех их поддерживающих приложениях. История проекта – это больше десяти лет кропотливой командной работы, не прекращающейся до сих пор. Поддержка MP4, например, реализована давно, но именно одно из обновлений 2021 года позволило решить проблему установки пака на обновленную Mac OS без конфликтов и ошибок распаковки.
MPlayerX
MPlayerX – тот самый случай, когда кодеки встроены в легковесный и простой в использовании проигрыватель. Он бесплатный и без торможения открывает мультимедийные контейнеры MP4 и других форматов. Ожидать от него чего-то сверхъестественного в плане функциональности было бы странно, зато с основной задачей – проигрыванием медиафайлов – программа справляется отменно. Подобно небезызвестному мультиплатформенному VLC, этот «ест» все, что предложат, корректно отображая субтитры на любом языке и предлагая пользователю возможность с комфортом погрузиться в мир музыки и видео.
Выбираем кодек MP4 для Андроид
Часто кодеки для MP4 на мобильных телефонах заведомо вшивают в Андроид на этапе установки мобильной операционной системы. Но так делают не все и не всегда, поэтому на некоторых мобильных и планшетах видео или аудио в MP4 может просто не воспроизвестись. Если такое случилось у вас, попробуйте следующие варианты проигрывателей со встроенными паками облегченных кодеков.
AC3 Codec for Android
Кодек-пак для Android с поддержкой MP4 и некоторых других типов контейнеров. Разработчик не стремится раскрывать детальный состав утилиты, зато не скупится на обновления, хоть и не публикует проект в официальном магазине. В приложении есть свой плеер, вполне неплохой и удобный с эквалайзером и рядом полезных функций, вроде ускорения воспроизведения. Приложение не требовательное и стабильно работает практически на любом смартфоне или планшете с Android не ниже 4.1. Беспокоиться по поводу отсутствия его в официальном магазине не стоит – APK безопасен. Но нужно учесть, что кодеки из набора могут считаться не всеми проигрывателями, а только нативным и некоторыми совместимыми.
MX Player Codec (ARMv7)
Хороший, но узкоспециализированный набор кодеков для популярного проигрывателя видео и аудио MX Player. В описании к APK в официальном магазине приложений платформы указано, что для работы кодеков собственно плеер придется устанавливать отдельно. Более того, кодеки целесообразно ставить исключительно в случае, когда не получится что-то открыть и приложение само предложит подгрузить кодек. В мобильной утилите показывает состав пака, версии встроенных кодеков, фильтров и плагинов. На вид вариант стоящий, но стоит обратить внимание, что отзывы не все положительные – пользователи жалуются на вылеты, нестабильность, работу «через раз», но в обновлении все этом могут уже исправить.
DDB2 Codec Pack
Достаточно полный мобильный пак кодеков, с включенными AAC, ALAC, APE, SNDH, SID, VTX, AY, GBS, GYM, HES, KSS, NSF, NSFE, SAP, SFM, SPC, VGM, VGZ. После установки этого набора в одноименном плеере DDB2 Player будет непременно корректно открываться любой MP4 файл с субтитром на любом языке. При этом приложение-утилита весит очень мало, на слабых бюджетных смартфонах и то не займет много места. Что касается стабильности и производительности, каких-то перемен в работе смартфона после установки незаметно: видео показывает, звуковая дорожка не опаздывает, ничего не тормозит.
Как конвертировать MP4
Иногда изменить формат видео проще, чем подбирать кодек. Особенно если для преобразования выбрать программу со встроенными кодировщиками-декодировщиками, как Movavi Конвертер Видео. Конвертер от Movavi буквально в пару кликов мышью способен переделать мультимедиа в большинство существующих форматов без потери качества, даже со сжатием и изменением размеров картинки видеоряда. Удобно, что в программе пользователю доступны и готовые профили для конвертации, и меню для создания собственных. Также тут есть пакетное преобразование и базовый, но очень шустрый и удобный редактор.
Как конвертировать MP4 в Movavi Конвертере Видео
- Скачайте и установите Movavi Конвертер Видео под свою операционную систему – Mac OS или Windows.
- Запустите программу и добавьте в рабочую область файлы в формате в MP4, которые нужно сжать или переделать в другой формат.
- Выберите профиль конвертации во вкладке видео или аудио – если нужно сделать из MP4 аудиофайл в MP3, например.
- Нажмите Конвертировать, чтобы запустить процесс и, если надо, отредактировать какие-то параметры в готовом профиле.
- Дождитесь завершения конвертации, программа сама откроет папку с готовыми файлами для дальнейших действий с ними.
Как видите, ничего сложного. Больше того, по этой инструкции можно не только конвертировать MP4 в другие форматы, но и просто сжимать файлы до более компактных размеров, вырезать звук из видео либо восстанавливать поврежденные мультимедиа – бывает, что конвертация позволяет проиграть то, что до этого не воспроизводилось, даже с кодеками.
Movavi Конвертер Видео
Отличный способ перевести мультимедиа в нужный формат!
Часто задаваемые вопросы
Какой самый лучший кодек для видео?
Самый лучший кодек для видео тот, который справляется с распаковкой воспроизводимого файла без ошибок. Мы можем посоветовать тем, кто часто смотрит на компьютере фильмы, мультфильмы, монтирует ролики или слушает музыку, установить в операционную систему один из топовых паков кодеков:
- StarCodec
- Media Player Codec Pack
- Matroska Pack Full
- CCCP
- DivX Plus Codec Pack
- XP Codec Pack
- K-Lite
Наборы примерно одинаковые по перечню форматов, которые благодаря ним начинают поддерживать устройством, а также полностью бесплатные. Системные требования и дату выпуска актуальной версии уточняйте при загрузке, чем свежее, тем лучше. Желательно также уточнять совместимость с версией операционной системы, куда будете устанавливать, из-за конфликта могут появляться ошибки и случаться сбои в работе мультимедийной подсистемы.
Что лучше – MP4 или H.264?
MP4 – формат, а H.264 – кодек, поэтому их некорректно сравнивать. Но если предположить, что вы имели в виду сравнение кодека для MP4 – MPEG-4, то разберемся в отличиях. Оба кодека отвечают за кодирование и декодирование мультимедийной информации, при этом используемые в H.264 алгоритмы сжатия помогают существенно сэкономить место на накопителе – до 50% в сравнении с MPEG-4. Если же память вам не так важна, как качество звука и картинки, то MPEG-4 зачастую способен выдавать лучшие результаты. Видео в MP4 в высоком разрешении плавнее, четче, ярче, чем кодированные в H.264.
Какой кодек лучше для Windows 10?
Для Windows 10 подойдет практически любой из паков видеокодеков:
- StarCodec
- Media Player Codec Pack
- Matroska Pack Full
- CCCP
- DivX Plus Codec Pack
- XP Codec Pack
- K-Lite
При этом стабильнее всего себя покажут те наборы, которые в 2021 году или хотя бы в 2020 году получали обновления. Дело в том, что старенькие паки, типа XPack и его аналогов, рожденных для XP и толком не развивавшихся, могут удивлять внезапно возникающими ошибками, конфликтами, и даже влиять на работу компьютера в целом не самым лучшим образом.
Какой кодек для сжатия видео лучше?
H.264 – один из лучших кодеков для сжатия видео. Также при помощи универсального конвертера Movavi Конвертер Видео с поддержкой всех популярных на 2021 год кодеков видео и аудио вы сможете преобразовывать и сжимать видеофайлы в 30+ форматах. Пользователям доступны готовые профили конвертации для запуска процесса в пару кликов, а также интерфейс для ручных настроек и сохранения своих шаблонов. Видео в MP4, например, можно за несколько минут ужать до двух раз, сохранив качество звука и высокий bit rate аудиодорожки.
Для чего нужен кодек?
Кодек – это утилита для кодирования и декодирования мультимедийных контейнеров. Обычно мультимедийный файл по структуре напоминает заархивированную папку – внутри одного файла, как в матрешке сидят видеоряд, аудио, субтитры, метаданные и прочее. И вот кодеки на компьютере и смартфоне нужны для того, чтобы при проигрывании каждый блок из контейнера-матрешки воспроизвелся корректно и без рассинхронизации с другими. Также кодеки нужны для конвертации, обработки видео, его монтажа и редактирования. В современных операционных системах иногда есть наборы кодеков, встроенных разработчиками, также кодеки содержатся в проигрывателях и могут использоваться в Portable версии, например, с подключенной к системному блоку флешки.
Уличная магия сравнения кодеков. Раскрываем секреты
В этом году исполняется юбилей — 16 лет, как был запущен сайт compression.ru, на котором автор и сотоварищи организуют сравнения видеокодеков и кодеров изображений. За это время были проведены десятки сравнений с отчетами от 23 до 550+ страниц, количество графиков в последнем сравнении перевалило за 7000, а количество разных феерических случаев за это время окончательно превысило все разумные пределы. Поскольку следующая круглая дата (32 года) наступит еще нескоро, есть желание рассказать в честь юбилея малую толику феерического.
Если говорить про кодеки, то не секрет, что большинство сравнений и графиков, которые видит почтеннейшая публика — это продукт отдела маркетинга. В лучшем случае — графики грамотно делали инженеры, а маркетинг только давал добро на публикацию. В худшем случае инженеры вообще не участвовали в их подготовке. К чему тратить время этих занятых людей!
При этом тема сжатия весьма популярна. В сериале «Кремниевая долина» стартап главного героя разработал гениальный алгоритм, который в последней серии первого сезона показал невероятное сжатие 3D видео и в итоге теперь миллионы стартаперов (и инвесторов) мира знают, что главное — это чтобы коэффициент Вайсмана был побольше и ещё гения надо найти, а остальное — фигня-вопрос. Чудо будет! Это естественным образом увеличивает ожидание чудес и, конечно (КОНЕЧНО!) эти чудеса радостно демонстрируются компаниями! В том числе с использованием последних достижений уличной магии.
DISCLAIMER: Любые совпадения имен и названий компаний ниже с реальными именами и названиями абсолютно случайны.
Усаживайтесь поудобнее! Обещаем, что к концу рассказа вы сможете показывать подобные фокусы сами, как, впрочем, и раскрывать многие из них. Поехали!
Level 1, фокусы для начинающих
Начнем с самого простого, ибо, как ни странно, эти методы вполне в современной (не сериальной, а настоящей!) Кремниевой долине прокатывают.
Итак, почтеннейшая публика, фокусы с демонстрацией сверхсильного сжатия начинаются!

Наверняка многие видели подобные динамические сравнения с незаметными котиками на основе JS на страницах. Если сравнивается сжатие, то разумно чтобы качество было максимально одинаково (в идеале совершенно одинаково), а справа было бы сжато в 2 раза лучше, например.
Компания заявляет на 30% лучшее сжатие (все совпадения случайны!). А картинки выглядят совершенно одинаково! Даже профессионально наметанный взгляд не находит различий. Возникает желание посмотреть детальнее. Лезем в код страницы и видим, что слайдер для первой и второй картинки берет данные из одного файла! Получаем преимущества сразу по нескольким параметрам — во-первых, идеально демонстрируется лучший результат, во-вторых, не отвлекали инженера от работы, и, наконец, это место страницы сайта грузится вдвое быстрее. Сплошной profit.
Случай, не поверите, реальный. Теперь вы знаете, куда стоит посмотреть!
В другом месте — тоже слайдер и опять замечательный результат. Заглядываем в код слайдера — грузятся разные файлы. Наученные горьким опытом скачиваем их — они не просто до байта одного размера, они совпадают побитно! В общем — все плюсы предыдущего способа, но фокус раскрывается чуть сложнее, правда за счет замедления загрузки страницы (за все приходится чем-то платить. ). И, главное, не нужно привлекать дорогих специалистов в сжатии.
Впрочем, более продвинутые маркетологи этого уровня идут еще дальше. Выкладывается слайдер — смотришь — картинки отличаются, но качество о-о-очень похоже. Ну ок. Дальше больше! Демонстрируется фантастическая открытость — есть даже линки на видеофайлы. Скачиваешь — очень неплохое преимущество у их метода, даже непонятно, как они это сделали. Выручает то, что мы же тут все поголовно русские хакеры (уже бренд на западе). Смотрим битовый поток и видим чудную картину:

То есть даже многие эксперты, если не будут глубоко копать и перепроверять, подтвердят, что действительно у людей отличный результат примерно вдвое превосходящий по размеру сегодняшнего лидера при сравнимом качестве. Вы не поверите, подобные методы вполне себе используются и даже в некоторых случаях позволяют получить десятки миллионов долларов инвестиций.
Вспоминается встреча с русским стартапом 6 лет назад. Их директор прямо с порога сказал: «Вы должны нам все сделать на совесть. У нас инвесторы из «Северстали», и, если что, к вам выедут спортивные бритые ребята с паяльниками.» Как вы понимаете, в таких суровых условиях качество исследовательской работы волшебным образом возрастает, а количество фокусов разного уровня — падает… При работе с такими кейсами у нас, на родине слонов, возникает непреодолимое чувство жалости к западным инвесторам. Правда не все наши инвесторы такие чисто конкретные, и свои фокусники и в наших палестинах тоже находятся. Причем регулярно. Но про это в другой раз.
Level 7, резонансный
Эта история не про видеокодек, а про сжатие картинок, но в ней многое было по всем законам жанра «честных фокусов».
Как-то довольно известная компания М решила, что им к своим форматам Windows Media Video (WMV) и Windows Media Audio (WMA) нужно добавить Windows Media Photo (WMP). Чисто для комплекта, как вы понимаете.
Молодой человек на галёрке! Ну не надо так громко кричать, не вас одного осенило! Культурные люди (посмотрите на первый ряд) максимум — понимающе усмехнулись в усы…
Далее внимательно следим за руками: 
Т.е. у WMP больше деталей, чем у JPEG и JPEG 2000 при том же уровне сжатия (мягко уравниваются JPEG и JPEG 2000 и задается уровень 24 раза), а в следующем абзаце: 

Т.е. обычно только в 6 раз сжимают, а было 24. Вау, пахнет тремя разами! И вообще мы лучше в 2 раза точно. СМИ понесли благую весть в массы (некоторые написали, что в 2 раза лучше JPEG 2000), даже на Хабре повторили эту новость.
Чуть позднее появился график из этой презентации:


Преимущество по сравнению с JPEG 2000 было небольшим, при том, что они, очевидно, отобрали лучшую картинку с чудным мальчиком и дельфинами. Мы с большим нетерпением ждали возможности поиграться с этим кодером. Примерно через полгода утилиту для сжатия таки выложили.
У нас к тому моменту как раз было годичной давности сравнение 9 реализаций JPEG 2000
Да-да-да! Как не все йогурты одинаково полезны, так и не все реализации стандарта жмут одинаково хорошо. Стандарт оговаривает только битовый поток, положить в который данные (и, кстати, вынуть!) можно сильно по-разному, это порождает отдельный рынок кодеков со своей жесткой конкуренцией по доброму десятку параметров. Простой пипл этого, как правило, не знает, что позволяет безнаказанно ездить ему по ушам практически на бульдозере («Наш видеорегистратор поддерживает новейший H.265/HEVC, больше его ни у кого нет!»). И никто (никто!) КРАЙНЕ вероятной подставы не замечает.
Мы радостно вставили в предыдущий отчет 3 линии для WMP. Получилось как-то так:


Поскольку сравнение было выложено публично и наделало шуму в узких кругах, то разработчик даже ответил на него в официальном блоге. Заметка была вежливая: похвалили, покритиковали, а дальше, если продраться сквозь текст, человек чистосердечно признался, что они использовали самую худшую реализацию JPEG 2000 нашего сравнения (опубликованного за полгода до того) в своем сравнении, правда «совершенно случайно». Мы, конечно, им поверим. Компания уважаемая и все такое.
Дальше название технологии было изменено с WMP на HD Photo, впрочем в сети остался такой вердикт:
В качестве вишенки на торт. Наши коллеги пошли дальше: взяли больше картинок и показали, что HD Photo проигрывает не только JPEG 2000, но и хорошей реализации JPEG (в 7 случаях из 14). И проигрывает конкретно. Есть основания полагать, что они подбирали картинки, но они откровенно закопали HDPhoto, ибо кому нужен формат, который в половине случаев проигрывает древнему JPEG — непонятно:

- Берем худшую реализацию основного конкурента, сравниваем с ней.
- Создаем рекламную шумиху (в стиле «мы всех сильно обогнали»).
- Когда шумиха отходит на второй план, делаем релиз и надеемся, что никто не проверит, что там было на самом деле.
Level 10, свежий! С нейросетями!
Вообще подобных случаев — очень много. Даже в России я сталкиваюсь с подобными ситуациями примерно пару раз в год (к нам, как к хозяевам compression.ru, информация стекается). На западе разводят лохов инвесторов примерно ежемесячно. А сейчас еще и Китай к этому развлечению подключился. Мощность компьютеров растет, сложность и возможности алгоритмов — тоже. Разбираться в этом все сложнее. Как следствие — бурное веселье продолжается!
В последнее время очень популярны стали нейросети. Абсолютно все, к чему они прикасаются, волшебным образом улучшается. А не применить ли их к сжатию видео?
В ноябре прошлого года очередная благая весть с подачи самого «Уолл Стрит Джорнал» облетела мир. Создан видеокодек на основе машинного обучения, который всех порвал! Вот пруф:

Вообще я лично крайне скептически воспринимаю все новости с упоминанием нейросетей. И вам советую (ОСОБЕННО, если вы инвестор). Нейросети устроены таким образом, что грамотно подбирая обучающую выборку под тестовую можно показать любой (для непонятливых — ЛЮБОЙ!) желаемый результат. Нейросети — идеальный инструмент для постановки на поток маркетинговых чудес. Одно чудеснее другого!
В общем график есть, картинки есть. Согласитесь — убедительно. Специально для скептиков господа привели еще несколько графиков на известных тестовых наборах:
Впрочем, если предыдущий график с картинками лично для меня был еще как-то объясним (заточиться на одно видео да еще с глубокими нейросетями можно всегда), то эти два графика заставили резко насторожиться.
Вас в них ничего не смущает?
Они даже под это подводят базу, типа классические кодеки уперлись в предел и уже особо не развиваются (и тут на сцену выходят они, все в белом). И вы знаете, такая наглая ложь прекрасно работает! Причем ладно «The Wall Street Journal» — они (хотелось бы верить) только в финансах разбираются, ладно «MIT Technology Review» — эти джентльмены джентльменам Кремниевой долины верят на слово, но как некритически воспринял новость такой уважаемый ресурс, как Хабр — ума не приложу! Чего уж говорить про массово перепечатавших новость …
В реальности картина развития кодеков, к счастью, заметно отличается. Во-первых, на графике ниже, построенном нами на том же наборе видео xiph, можно увидеть, что H.265 на 25−31% лучше, чем H.264. Т.е. 10 лет развития кодеков таки не прошли даром! (Уфф, прямо от сердца отлегло. ) Во-вторых, свежий AV1 показывает практически двукратное улучшение по сравнению с H.264, и ступенька его преимущества, прямо скажем, весьма заметна:

Соответственно на глаз видно, что если наложить график AV1 на 45% левее H.264 на графике авторов — он покроет новый кодек как… [вырезано цензурой]. Хорошо покроет, короче. Потому с ним и «забыли» сравниться. Реальный расклад выглядит как-то так (сильно менее кучно, согласитесь):


Заметим, что для некоторых видео стандартные опции не обязательно идут монотонно (в данном случае по качеству). Также иногда «нестандартные» опции могут дать большой выигрыш по размеру, в частности на примере выше потеряв 20% по скорости по сравнению с medium можно наиграть 30% по размеру — практически как при переходе на стандарт следующего уровня, но при прежней невысокой сложности декодера. Но это уже более сложный level, о нем в другой раз.
Как легко заметить выше, господа взяли для сравнения «slower». Хорошо, что не «veryfast», ведь могли бы и его! ) И не важно, что у них у самих кодек феерически медленный. Люди в массе своей, глядя на график, не вспоминают о том, что скорость работы кодека может на пару порядков отличаться в зависимости от параметров. Поэтому такой прием вполне прокатывает. Хотя на нашем графике выше («Bitrate/quality. ») их пачка линий была в районе красной (которая самая плохая). Заодно оправдывая топтание на месте в развитии кодеков. Ага-ага!
Есть и более тонкие подтасовки, например, господа пишут: «To remove B-frames, we use H.264/5 with the bframes=0 option, VP9 with -auto-alt-ref 0 -lag-in-frames 0, and use the HM encoder lowdelay P main.cfg profile.» То есть они не смогли побить обычные кодеки в честном соревновании и выбрали low-latency режим с низкой задержкой, который используется обычно для реального времени, например, для видеоконференций. Результаты кодека в нем хуже, естественно. При этом их декодер (про энкодер промолчим) работает 2 секунды на кадр, то есть ни о каком low-latency даже близко говорить нельзя. Зато еще несколько процентов наиграли.
Это не все трюки, которые были использованы господами стартаперами, но картина уже ясна.
Понятно, что, чтобы фокус выглядел правдоподобно, нужны еще дополнительные штрихи, которые придают реализма. Например, эти господа опубликовали статью на https://arxiv.org/abs/1811.06981. Сегодня развитие алгоритмов идет настолько быстро, что ждать, пока выйдет статья в журнале становится нестерпимо, поэтому многие сильные авторы публикуют результаты сначала на arxiv.org. Для уличных магов этот сайт удобен тем, что там можно разместить абсолютно любой материал — в отличие от рецензируемых журналов и конференций никто не задаст неприятных вопросов и не зарубит публикацию (нет kill reviewing серьезных мест). А про то, что, например, на 1 апреля на arxiv.org принято публиковать разного рода пародии на научные статьи, в том числе высмеивая его как место публикаций, широкая публика не знает, поэтому для широкой публики публикация там выглядит типа даже солидно.
Идем дальше. Статья на хабре про них называлась «Первый видеокодек на машинном обучении кардинально превзошел все существующие кодеки, в том числе H.265 и VP9». Очередной прикол заключается в том, что машинное обучение в сжатии не только активно исследуется, чему уже посвящаются отдельные треки конференций (то есть статей много), но и активно используется, например, в AV1 (специально привожу гугловый запрос). Но, если бы они честно сказали: «Мы выпустили второй кодек с использованием машинного обучения, при этом проиграв первому и по скорости, и по сжатию», то Wall Street Journal мог про них и не написать… И MIT TechReview не написал бы… И даже Хабр… Очевидно, не вынеся последнего, в компании чуть-чуть поправили подачу. При этом особенностью современного интернета является то, что люди не проверяют информацию, что позволяет спокойно провозглашать себя первыми много кому (начиная с известных компаний). Наглость, как известно, города берет! А фактчекинг не моден.
— Загугли!
— Это как это?
[пример запроса дан выше)))]
И еще про ML/DL. В далекие-далекие времена, когда дискеты были большими, а винчестеры маленькими, одним из приемов «уличной магии для архиваторов» было сохранить часть сжимаемого файла куда-нибудь подальше в директорию со временными файлами и таким образом показать рекорд. С тех пор времена изменились. Винчестеры — выросли, дискеты совсем пропали, а данные стало модно прятать вглубь нескольких сотен мегабайт коэффициентов сетки. Можно сохранить «авторский знак» в сетке, можно — пасхалку, а можно фейковый рекорд сжатия поставить. Глубокие нейросети — однозначно сила, короче!
- Игнорируем современного лидера так, будто его вообще нет.
- Аккуратно формулируем все так, чтобы читалось будто мы первые использовали какую-нибудь новую технологию (и даже если первый это сделал лидер — никто проверять не будет).
- У стандартов 5− и 15−летней давности откручиваем ручки так, чтобы они работали хуже нас.
- Побольше наглости — обосновываем то, что они легли кучно позади нас тем, что они уперлись в предел и уже не развиваются.
- Публикуемся в «The Wall Street Journal» и на Хабре…
А теперь мастер-класс!
Как я и обещал выше, к концу этого текста вы сможете легко блистать на подмостках условного pikabu.
Сейчас, о почтеннейшая публика, я покажу вам фокус, позволяющий сравнивать, что угодно с чем угодно с любым заранее заданным результатом. Т.е. если надо, чтобы кодек А был лучше кодека Б — значит покажем это, если нужно, чтобы Б был лучше А, хорошо, можем показать и это. Исполним любой каприз отдела маркетинга за ваши деньги совершенно бесплатно!
Давайте сами проверим, как эти самые кодеки жмут. Как говорится — не верь никому, проверь сам. А то, может, и правда эти стандарты не развиваются и нас просто дурят, заставляя зря платить заработанные непосильным трудом деньги непонятно за что?
Возьмем «Аватар» в формате 480p24 и сожмем его кодеком x264 c настройками «-preset superfast -x264-params «nal-hrd=cbr» -b:v 1M -minrate 1M -maxrate 1M -bufsize 2M» и кодеком xvid с настройками «-preset superfast -b:v 1M -minrate 1M -maxrate 1M -bufsize 2M» (две очень неплохие open-source реализации стандартов H.264 и MPEG-4). Почему взяты эти кодеки и настройки будет объяснено позднее.
У нас получились два файла почти одного размера:
avatar_x264_cbr1M_superfast.mkv — 1402 MB
avatar_xvid_cbr1M_superfast.mkv — 1401 MB
А теперь, дамы и господа! Внимательно следите за руками.
Смотрим, вот новый стандарт и старый: 

Смотрим другой кадр: 
Без комментариев! А если быстрое движение? 

Согласитесь! Прогресс явный и неумолимый! Все развивается и становится все лучше и лучше! А жизнь — краше и веселее!


Боже, что это. Новый стандарт совсем слил…


А-а-а-а! Люди! Знайте! Корпорации вас обманывают. Кодеки уже давно не развиваются, но вам сообщают что все идет хорошо!


Вы видите? Все, чему они научились за 10 лет — это размывать блочность! Причем делают это просто отвратительно! Стало хуже, чем было! Вас водят за нос все эти годы. 11
А теперь разберемся, как это сделано.
На самом деле полный кадр выглядит так:
Когда кодек работает, особенно в режиме постоянного битрейта, качество кадров достаточно сильно колеблется. Вот начало фильма, например — качество по классической метрике PSNR (сомнений кто лучше, кто хуже, кстати, нет, видно что зеленый xvid проигрывает в среднем):
Картинка кликается
Если вычесть один график из другого (на рисунке ниже, другое место в файле) — то видно, что в целом кодек более старого стандарта будет проигрывать, однако местами он может вполне уходить на +5 dB (PSNR удобна тем, что она обратно логарифмически пропорциональна среднеквадратичному отклонению, за счет чего, обычно, работает правило: на диапазоне средних и низких битрейтов на глаз видна разница в 1.5 dB). И тут же виден кадр, где в другую сторону разница 20 dB:
Картинка кликается
Теперь вы понимаете, почему ваш покорный слуга всегда с искренним умилением смотрит на приведенные в маркетинговых материалах компаний отдельные кадры, как на доказательство более высокого качества на видео (особенно когда нет графиков)… И ведь так до сих пор иногда приводят!
Чтобы отбирать кадры было проще, мы больше 10 лет назад сделали режим сравнения в нашей тулзе MSU VQMT, при котором сравнивались сразу 3 файла — оригинал, кодек-1 и кодек-2 и сразу сохранялись, например, 30 лучших пар кадров в одну или в другую сторону. Главное — взять файл подлиннее!
А MPEG-4 с низким битрейтом был взят, чтобы с блочностью было все нагляднее.
- Выбираем режим, при котором колебание качества у кодеков максимально (обычно, однопроходный CBR).
- Уменьшаем разрешение исходника в 2 раза (ибо скорее всего придется увеличивать фрагменты, например выше фрагменты были увеличены в 3 раза)
- Берем какую-нибудь метрику (PSNR, SSIM, модную в этом сезоне VMAF).
- Берем в качестве сравнения старый стандарт с блочностью или отключаем внутренний деблокинг у конкурента опциями.
- И последнее, не забываем взять файл подлиннее: 3 часа фильма — самое оно!
Ну или где-нибудь, где публика не слишком разборчива, можно кого-нибудь с кем-нибудь успешно сравнить. Пипл будет доволен.
Теперь вы знаете, какие вопросы задавать, когда видите сравнение с кадрами в материалах компаний! Может хоть пореже, наконец, они будут встречаться.
Вместо заключения
Выше разбирались относительно простые способы подготовки маркетинговых материалов «в свою пользу» в сравнениях кодеков и кодеров. Естественно, в реальной жизни все сложнее. Увы, если идти глубже, оно будет не так увлекательно и заметно сложнее (желающие могут почитать статью и комментарии тут, например).
А людей, обычно, интересуют простые ответы. Самый популярный ответ в Ответы@Mail.ru на вопрос «Какой самый лучший видеокодек?» — «K-Lite Mega Codec Pack». И это для массового зрителя действительно самый короткий, понятный и точный ответ. А вы говорите — кодеки, стандарты…
Но чем больше будет людей, хотя бы на среднем уровне разбирающихся в предмете, тем реже будут совсем уж нахально лапшу на уши вешать отделы маркетинга или дуть в уши инвесторам нахальные стартаперы. И жизнь станет чуточку лучше.
Спасибо за внимание, дамы и господа! Всем — технической грамотности!