MP4 / MOV
Форматы, которые твой iPhone действительно открывает, — что делает ещё более странным, когда один из них не открывается.
MP4 и MOV — это контейнеры, вокруг которых Apple построила свои системы, поэтому файл, который не открывается, почти никогда не виноват из-за самой оболочки. Что-то внутри него — поток H.264 с 10-битной глубиной цвета, звук DTS или TrueHD, AV1 на старом чипе — это кодек, который устройство не может декодировать, а вину сваливают на контейнер.
30 июля 2026 г.
Открывается без посторонней помощи в
Нативная поддержка касается и контейнера, и кодеков, для которых Apple поставляет декодеры. Нужно и то и другое. Совершенно корректный MP4 с потоком, о котором железо никогда не слышало, открывается, показывает чёрный кадр или играет беззвучно — и не даёт никакой полезной причины.
Факты
| Полное название | MPEG-4 Part 14, и QuickTime File Format |
|---|---|
| Тип | Контейнеры — одна конструкция, два названия |
| Расширения | .mp4, .m4v, .mov, .m4a (только звук) |
| Опубликован | MOV в 1991 году компанией Apple; MP4 в 2001 году, произведён от него |
| Видео, которое всегда работает | H.264 до профиля High, 8 бит; HEVC на любом устройстве начиная с 2015 года |
| Видео, которое часто не работает | H.264 High 10 (10 бит), MPEG-4 Part 2 (DivX/XviD), AV1 на железе до 2023 года |
| Звук, который всегда работает | AAC, ALAC, MP3, PCM |
| Звук, который часто не работает | DTS, DTS-HD, TrueHD, Vorbis, Opus внутри MP4 |
| Субтитры | Скрытые субтитры и один формат таймированного текста; ничего похожего на разнообразие, которое несёт MKV |
Один формат под двумя именами
Сначала появился MOV: Apple опубликовала QuickTime в 1991 году, и структура его файлов оказалась настолько удачной, что когда группе MPEG понадобился контейнер для MPEG-4, она взяла её и стандартизировала. Именно поэтому MP4 и MOV структурно почти одно и то же — коробки метаданных, описывающие дорожки медиа, — и именно поэтому инструмент обычно может просто переименовать один в другой, и файл продолжит работать.
Практическая разница в том, что каждому из них *разрешено* нести. MOV, будучи собственным форматом Apple, принимает всё, что когда-либо поддерживал QuickTime, включая ProRes и кодеки, которые ни один телефон никогда не декодирует. MP4 — более строгий, более переносимый стандарт. Ни один из них не проектировался, чтобы нести восемь языков субтитров и дублированную аудиодорожку, — и именно этот пробел заполнила Matroska.
Поскольку это форматы, которые открывает любое устройство Apple, они же являются пунктом назначения почти любой конвертации. «Конвертировать в MP4» — это сокращённое «положить это в коробку, которую примет iOS».
Так почему же этот файл не играет?
Потому что для открытия файла нужны две вещи, и только первая касается контейнера. Система читает коробку, находит дорожки, а затем просит свои декодеры превратить эти дорожки в картинку и звук. Если декодера нет, всё, что было до этого момента, всё равно прошло успешно, — именно поэтому сбой выглядит так странно. Файл открывается. Есть длительность. Есть полоса прокрутки. Смотреть нечего.
Симптом подсказывает, какая половина сломалась:
- Звук есть, картинки нет — не поддерживается видеокодек. На железе Apple обычный виновник — 10-битный H.264, часто обозначаемый *Hi10P*, распространённый в аниме-релизах. Аппаратные декодеры H.264 работают только с 8 битами, а программного резерва в системном плеере нет.
- Картинка есть, звука нет — не поддерживается аудиокодек. DTS и TrueHD — то, с чем ты столкнёшься на любом материале, взятом с диска.
- Нет ни того ни другого, и ошибка — обычно повреждённый или обрезанный файл, либо MP4, чей индекс лежит в конце и так и не докачался.
- Есть и то и другое, но заикается — ничего не является неподдерживаемым; просто битрейт или разрешение превышают то, на что способен этот чип.
Плеер с собственными декодерами обходит всё это стороной, потому что вообще не спрашивает систему. Он сам декодирует 10-битный H.264 и DTS программно и передаёт на экран уже готовые кадры.
Что с этим делать
- Выяснить, что реально внутри
Прежде чем что-либо конвертировать, посмотри на потоки файла. Если видео — 10-битный H.264, а звук — DTS, ты точно знаешь, что нужно изменить, и часто оказывается, что только звук, а это работа на две секунды, а не на час.
- Перекодировать только сбойный поток
Конвертировать весь файл из-за того, что его аудиодорожка в DTS, тратит час и теряет качество картинки впустую. Замена только аудиодорожки оставляет видео побитово идентичным.
- Воспроизвести чем-то с программным декодированием
Нечего конвертировать и нечего выяснять: плеер с собственным стеком декодирования открывает 10-битный H.264, DTS и TrueHD напрямую. Именно так делает FoxDL — та же причина, по которой он открывает MKV, покрывает и MP4, который откажется открывать плеер Apple.
Две вещи, которые выглядят как проблемы формата, но не являются ими
Процессор настольного компьютера решает грубой силой то, что телефон ожидает от своего аппаратного декодера. С файлом всё в порядке; тот же файл на меньшем битрейте был бы в порядке и на телефоне.
MP4 хранит индекс того, где что находится. Когда он записан в конце файла, плееру нужен весь файл целиком, прежде чем он сможет куда-либо перепрыгнуть. Перенос этого индекса в начало — иногда называемый *faststart* — это перезапись нескольких килобайт, а не конвертация.
Вопросы об этом формате
Похожие форматы
Твоя библиотека — наконец в одном месте.
Скачать бесплатно. Без аккаунта, без регистрации, без данных, которые нужно кому-то передавать.