Видео
Формат MP4: спецификация и направления
Направления в обе стороны: из MP4 и в MP4, с параметрами каждого преобразования.
Спецификация MP4
| Полное имя | MPEG-4 Part 14 |
|---|---|
| Разработчик спецификации | ISO/IEC, рабочая группа MPEG |
| Год публикации | 2001 |
| Расширение | .mp4 |
| MIME-тип | video/mp4 |
| Тип содержимого | Двоичное |
| Модель сжатия | С потерями |
| Тип | Контейнер |
| Видеокодеки | H.264, H.265, AV1, MPEG-4 Part 2 |
| Аудиокодеки | AAC, MP3, AC-3, ALAC |
| Дорожки | Несколько видео, звуковых и субтитровых |
| Потоковая отдача | Да, при индексе в начале файла (faststart) |
| Читающие программы | VLC, MPV, Windows Media Player, QuickTime Player, Браузеры Chrome, Safari, Firefox |
| Документ спецификации | Открыть спецификацию |
MP4 → другие форматы
Изображения
| Направление | Что получится | Точность |
|---|---|---|
| .mp4.gif | Конвертация MP4 в GIF | приблизительная |
Видео
| Направление | Что получится | Точность |
|---|---|---|
| .mp4.avi | Конвертация MP4 в AVI | близкая |
| .mp4.webm | Конвертация MP4 в WebM | близкая |
| .mp4.mkv | Конвертация MP4 в MKV | точная |
| .mp4.mov | Конвертация MP4 в MOV | точная |
| .mp4.3gp | Конвертация MP4 в 3GP | близкая |
Аудио
| Направление | Что получится | Точность |
|---|---|---|
| .mp4.mp3 | Конвертация MP4 в MP3 | близкая |
| .mp4.wav | Конвертация MP4 в WAV | точная |
| .mp4.m4a | Конвертация MP4 в M4A | точная |
| .mp4.aac | Конвертация MP4 в AAC | точная |
Другие форматы → MP4
Изображения
| Направление | Что получится | Точность |
|---|---|---|
| .gif.mp4 | Конвертация GIF в MP4 | близкая |
Видео
| Направление | Что получится | Точность |
|---|---|---|
| .mov.mp4 | Конвертация MOV в MP4 | близкая |
| .mkv.mp4 | Конвертация MKV в MP4 | близкая |
| .avi.mp4 | Конвертация AVI в MP4 | близкая |
| .webm.mp4 | Конвертация WebM в MP4 | близкая |
| .wmv.mp4 | Конвертация WMV в MP4 | близкая |
| .flv.mp4 | Конвертация FLV в MP4 | близкая |
| .mpeg.mp4 | Конвертация MPEG в MP4 | близкая |
| .3gp.mp4 | Конвертация 3GP в MP4 | близкая |
| .mts.mp4 | Конвертация MTS в MP4 | близкая |
| .m2ts.mp4 | Конвертация M2TS в MP4 | близкая |
Спецификация MP4
MP4 (ISO/IEC 14496-14) — контейнер на базе ISO BMFF: дерево блоков, где ftyp объявляет совместимость, moov хранит описание дорожек и таблицы смещений, mdat — сами данные. Контейнер не сжимает ничего; сжатием занимаются кодеки внутри, и расширение файла об их составе не сообщает.
Внутри одного MP4 допустимы видео в H.264, H.265, AV1 или MPEG-4 Part 2 и звук в AAC, MP3, AC-3 или Opus. Плеер читает заголовок, определяет кодеки и ищет декодеры в системе; отсутствие видеодекодера даёт чёрный экран при работающем звуке, отсутствие аудиодекодера — обратную картину. Отсюда самая частая ситуация: файл исправен, но не воспроизводится, потому что внутри HEVC, декодер которого в Windows поставляется платным расширением.
Положение блока moov определяет поведение при потоковой отдаче. Если таблица дорожек записана после данных, плееру нужно скачать файл почти целиком, прежде чем начать воспроизведение, поэтому для веба moov переносят в начало (режим faststart). Ориентация вертикальных роликов хранится не в пикселях, а матрицей поворота в заголовке дорожки: плееры, игнорирующие её, показывают кадр лёжа.
Смена контейнера при совместимом содержимом выполняется копированием потоков без декодирования: MKV с H.264 и AAC переезжает в MP4 за секунды, а данные остаются побитово теми же. Перекодирование включается только при несовместимости — HEVC, требующий приведения к H.264, звук AC-3, который браузеры не декодируют, видео VP9. Отличить режимы можно по времени работы: копирование ограничено скоростью диска, кодирование — производительностью кодировщика.
Форматы того же класса
Остальные записи класса «Видео». Для каждой заведена своя страница с полным перечнем направлений: и от MP4, и к нему.
Вопросы по формату MP4
Какие параметры задают качество и вес при перекодировании?
Основной — CRF, показатель постоянного качества для x264 и x265. Рабочий диапазон для H.264 — 18–23, где 18 практически неотличим от источника, а 23 даёт заметно меньший файл. Шаг в шесть единиц примерно вдвое меняет размер. Дополнительно на вес влияют разрешение кадра и частота кадров; повышать их относительно исходника бессмысленно — деталей от этого не прибавится.
Почему из ролика на 20 секунд получился GIF на 30 мегабайт?
В GIF нет межкадрового сжатия: каждый кадр хранится самостоятельно, а палитра ограничена 256 цветами на кадр. Двадцать секунд при 25 кадрах в секунду — это 500 практически независимых изображений. Единственный способ удержать размер — уменьшить ширину до 480–600 пикселей, снизить частоту до 12–15 кадров в секунду и сократить длительность.
Как извлекается звуковая дорожка?
Видеопоток отбрасывается, звуковой сохраняется. Если целевой формат совпадает с исходным кодеком — например, дорожка AAC переносится в файл M4A, — данные копируются без перекодирования и потерь. Перевод в MP3 требует декодирования и повторного сжатия: для речи достаточно 128–192 кбит/с, для музыки берут 256–320.