MP4 — формат мультимедийного контейнера¶
MP4 (MPEG-4 Part 14, также известен как MPEG-4 — формат файлов) — цифровой мультимедийный контейнерный формат, предназначенный для хранения видео- и аудиоданных, а также субтитров и метаданных. Стандарт описан в спецификации ISO/IEC 14496-14 и разработан организацией Moving Picture Experts Group (MPEG). Файлы с расширением .mp4 стали одними из наиболее распространённых в мире для хранения и передачи видеосодержимого.
¶История создания
Работа над форматом велась в конце 1990-х годов в рамках стандарта MPEG-4. Первая версия спецификации (MPEG-4 Part 14) была опубликована в 2001 году. В её основе лежал контейнер QuickTime (.mov), разработанный компанией Apple, — MPEG-4 Part 14 во многом является его адаптацией под открытый стандарт.
Формат создавался как замена устаревающему MPEG-2 (.mpg), с более эффективным сжатием и поддержкой интерактивного контента. В отличие от предшественника, MP4 изначально проектировался для гибкой работы с разными типами мультимедийных потоков внутри единого файла.
¶Техническое устройство
MP4 основан на модели «объектов» (ISO Base Media File Format, ISO/IEC 14496-12), общей для семейства форматов MPEG-4. Файл состоит из блоков — атомов (или «боксов», boxes), каждый из которых содержит определённый тип данных. Атомы могут вкладываться друг в друга, образуя иерархическую структуру.
Основные атомы:
ftyp— идентификатор типа файла;moov— метаданные: таблицы доступа, описание дорожек, длительность;mdat— непосредственно мультимедийные данные (видео- и аудиопотоки);free— незанятое пространство;meta (организация признана экстремистской, деятельность запрещена в РФ)— вспомогательные метаданные.
Такая структура позволяет потоковую передачу (streaming) и быстрый доступ к произвольным участкам файла при условии корректно построенных таблиц доступа.
¶Кодеки
MP4 — контейнер, а не кодек. Он может содержать потоки, сжатые различными алгоритмами:
| Тип | Наиболее распространённые кодеки |
|---|---|
| Видео | H.264/AVC, H.265/HEVC, MPEG-4 Part 2, AV1 |
| Аудио | AAC, MP3, AC-3, ALAC, Opus |
| Субтитры | Timed Text (TX3G), WebVTT |
Наиболее типичная комбинация — видео H.264 и звук AAC. Именно она обеспечивает широкую совместимость с аппаратными декодерами смартфонов, телевизоров, плееров и браузеров.
¶Сравнение с другими контейнерами
| Свойство | MP4 | AVI | MKV | WebM |
|---|---|---|---|---|
| Стандарт | ISO/IEC | Microsoft | открытый | |
| Поддержка кодеков | ограничена | широкая | практически не ограничена | VP8/VP9/AV1, Opus/Vorbis |
| Стриминг | да | ограниченно | да | да |
| Метаданные | развитые | примитивные | развитые | развитые |
AVI — старый контейнер Microsoft, не поддерживает многие современные кодеки и потоковое воспроизведение. MKV (Matroska) более гибок, но хуже совместим с бытовой техникой. WebM создан для веб-воспроизведения и оптимизирован под открытые кодеки.
¶Применение
MP4 де-факто стал основным форматом для:
- хранения видео на смартфонах (запись камеры iPhone и большинства Android-устройств ведётся в MP4);
- онлайн-стриминга (YouTube, Vimeo и другие платформы используют MP4 с H.264/AAC как основной формат);
- видеоконференций;
- цифрового вещания;
- обмена файлами в интернете.
Широкая распространённость обусловлена сочетанием эффективного сжатия, малого объёма служебных данных и поддержки аппаратного ускорения декодирования на большинстве устройств.
¶Ограничения
MP4 имеет ряд недостатков по сравнению с более гибкими контейнерами:
- Поддерживаемый набор кодеков формально ограничен спецификацией, хотя на практике программные плееры декодируют и нестандартные потоки.
- Формат не поддерживает некоторые расширенные возможности Matroska, например меню дисков Blu-ray.
- Структура
moovв начале файла может мешать потоковому воспроизведению до полной загрузки; для стриминга файлы перепаковывают так, чтобыmoovбыл в начале (faststart).
¶См. также
- MPEG-4
- H.264
- AAC
- Контейнер (мультимедиа)
- Matroska
¶Источники
- ISO/IEC 14496-14: Information technology — Coding of audio-visual objects — Part 14: MP4 file format
- ISO/IEC 14496-12: Information technology — Coding of audio-visual objects — Part 12: ISO base media file format
- The MP4RA registry (mp4ra.org)
