Що таке файл MP4?
MP4 (скорочення від MPEG-4, частина 14) — це формат файлу на основі ISO/IEC 14496-12:2004, який базується на форматі файлу QuickTime, але формально вказує підтримку початкових дескрипторів об’єктів (IOD) та інших функцій MPEG. Здебільшого він використовується для зберігання відео та аудіо, але також може використовуватися для зберігання субтитрів і нерухомих зображень. Файли MP4 зберігаються з розширенням .mp4. MP4 — це міжнародний стандарт аудіовізуального кодування. Подібно до більшості сучасних форматів контейнерів, MP4 підтримує потокове передавання через Інтернет. Завдяки високому стисненню, яке використовується в MP4, отримані файли мають менший розмір із збереженням майже повної оригінальної якості.
Коротка історія
Специфікація MP4 була розроблена Moving Picture Experts Group (MPEG) і базувалася на форматі QuickTime MOV, опублікованому в 2001 році. Перша версія (ISO/IEC 14496-1:2001) MP4 була редакція MPEG-4 Частина 1: Специфікація систем, опублікована в 1999 році. Формат файлу MP4 було узагальнено до стандарту ISO/IEC 14496-12:2004, який визначав загальну структуру мультимедійних файлів на основі часу. У результаті він використовується як основа для інших форматів файлів.
Структура файлів MP4
MP4 є розширюваним файлом-контейнером, що означає, що він не визначає сувору структуру та допускає спеціальну структуру та ієрархію для кожного типу носія. Дані у файлі MP4 поділено на два розділи: перший містить медіадані, а другий містить метадані. Медіа-дані містять аудіо або відео, а метадані вказують прапорці для довільного доступу, мітки часу тощо. Структури в MP4 зазвичай називаються атомами або ящиками. Мінімальний розмір атома становить 8 байтів (перші 4 байти визначають розмір, а наступні 4 байти — тип). Ось список атомів кореневого рівня, які містяться у файлах MP:
- ftyp: містить тип файлу, опис і загальні використовувані структури даних.
- pdin: містить інформацію про прогресивне завантаження/завантаження відео.
- moov: контейнер для всіх метаданих фільму.
- moof: Контейнер з фрагментами відео.
- mfra: Контейнер з довільним доступом до фрагмента відео
- mdat: контейнер даних для медіа.
- stts: таблиця вибірки до часу.
- stsc: таблиця вибірки до порції.
- stsz: розміри вибірки (фреймування)
- meta: контейнер з інформацією метаданих.
Ось список атомів другого рівня, які використовуються в MP4:
- mvhd: містить інформацію про заголовок відео з повною інформацією про відео.
- trak: контейнер з індивідуальною доріжкою.
- udta: контейнер із інформацією про користувача та трек.
- iods: дескриптор файлу MP4