mov и mp4 — часто один и тот же файл

обновлено · автор

.mov с вашего iPhone или из QuickTime почти всегда содержит видео h.264 или hevc и звук aac — ровно то же, что лежит внутри mp4. контейнер разный, содержимое нет. поэтому осмысленных ходов здесь два, и ни один из них не конвертер: переименовать, что занимает две секунды и помогает удивительно часто, или перепаковать командой, которая в macOS уже есть, — это столько же времени и файл, который действительно mp4.

переименовать mov в mp4: сначала посмотрите кодек

  1. выделите файл в Finder и нажмите ⌘I — откроется окно свойств.
  2. разверните подробные сведения и прочитайте кодеки. h.264 — лёгкий случай.
  3. переименуйте файл, заменив mov после точки на mp4, и подтвердите замену расширения.

ничего не перекодируется, поэтому ничего не теряется, и происходит это мгновенно, какого бы размера ни был файл. Apple пишет об этом сама — полезно знать, если сайт, который вы читали до этого, сразу вёл на конвертер.

коротко, до подробностей: переименовывайте, если внутри h.264 и дальше по пути никто не придирается. если файл где-то отказались принять или файлов больше одного — переходите к настоящей перепаковке, а самая простая настоящая перепаковка — это перетаскивание, а не команда.

тот же вопрос «а что встроенный путь делает на самом деле» проходит и по фотографиям, с похожим сюрпризом в конце: перевести heic в jpg

официальная версия приёма, вместе с тем, где смотреть кодек (страница английская): как перевести файл MOV в MP4 на Mac

что переименование меняет на самом деле

меньше, чем кажется, и вот об этом вслух никто не говорит. контейнер объявляет, что он такое, первыми же байтами — это бренд. файл QuickTime говорит `qt`, настоящий mp4 говорит `mp42`. переименование меняет расширение и то, чем файл считает ваш Mac. до этих байтов оно не дотягивается.

проверено здесь на системных обоях: у оригинала `ftypqt`, а после копирования под именем .mp4 команда `file` по-прежнему отвечает «Apple QuickTime movie». плеерам всё равно — они читают дорожки. строгим разборщикам нет: форме загрузки, телефону на Android, редактору, который проверяет файл перед импортом.

так что если переименование сработало, оставьте как есть. если после него файл где-то не приняли, отказ именно про бренд, и следующий раздел лечит это по-настоящему.

перевести mov в mp4 в «Терминале», без перекодирования

в macOS входит avconvert, и у него есть пресет, который переносит дорожки в новый контейнер вместо того, чтобы их перекодировать. ничего не скачивать, ни Homebrew, ни редактора.

  1. avconvert -s clip.mov -o clip.mp4 -p PresetPassthrough — один файл.
  2. на папку: for f in *.mov; do avconvert -s "$f" -o "${f%.mov}.mp4" -p PresetPassthrough; done
  3. avconvert --help перечисляет остальные пресеты — они как раз перекодируют и нужны тогда, когда вам этого действительно хочется.

цифры объясняют лучше описания. ролик на 82 МБ вышел за две секунды и того же размера — это копирование, а не кодирование, — а результат отвечает `ftypmp42` с совместимыми брендами `isom mp41 mp42`. это mp4 по собственным словам файла, а не по имени.

с hevc работает тоже, и это важно: видео с iPhone часто hevc, и любая страница на эту тему именно здесь отправляет вас в видеоредактор. hevc прекрасно живёт внутри mp4 — перекодировать было нечего с самого начала.

два честных ограничения. ProRes в mp4 не кладётся вовсе, и avconvert об этом говорит, а не выдаёт поломанный файл. и читает он то же, что читает система, — поэтому mkv и webm вне его досягаемости совсем.

man-страница, если хотите увидеть весь список пресетов до запуска (страница английская): man avconvert

почему QuickTime не экспортирует mp4?

потому что Apple так и говорит. экспорт QuickTime Player пишет фильмы QuickTime — в её собственной документации прямо сказано, что mp4 он не экспортирует, — отсюда и вывод, будто система этого не умеет, и поход за приложением. умение всё это время лежало в командной строке.

у Finder есть третий путь, и о нём стоит знать: нажмите на видео правой кнопкой и выберите кодирование выбранных видеофайлов. оно перекодирует в 720p, 1080p или 4K, с галочкой совместимости для h.264, оригинал не трогает и берёт сразу несколько выделенных файлов. это настоящий конвертер, и пишет он .m4v, а не .mp4.

что даёт экспорт QuickTime — словами самой Apple (страница английская): экспорт фильмов из QuickTime Player

как hop переводит mov в mp4

каждый путь выше требует знать что-то заранее: какой кодек внутри, какую команду набрать, какой пресет передать, окажется ли этот файл из тех, кому откажут. вот настоящая цена бесплатного — не деньги и не качество, а то, что знающим приходится быть вам.

hop не просит ничего из этого. перетащите файл в окно конвертера, посмотрите, какого размера он выйдет, нажмите кнопку. под капотом та же перепаковка без потерь там, где она возможна, никакого «Терминала», и ответ на «получится ли» приходит до, а не после.

что у вас естьвстроенный путьс hop
один ролик h.264, дальше никто не придираетсяпереименуйте — две секундыне нужен, оставьте переименование
файл, который не приняла форма загрузкиavconvert -p PresetPassthrough в «Терминале»бросьте в окно, контейнер переписывается
папка роликовцикл в командной строке, по одному и без индикатораодно перетаскивание на всю папку
hevc с iPhoneта же команда, работаетто же перетаскивание, работает
и ещё надо уложиться в размерконвертировать, замерить, поправить, повторитьразмер показан до запуска
mkv или webmavconvert их не читает вовсеперекладываются в mp4

первая строка — не вежливость. если переименование решает вашу задачу, оно её решает, и ставить ради этого приложение незачем. остальная таблица — про то, где встроенный путь начинает брать с вас внимание, и вот ради этого hop и сделан.

  • у сжатия есть своя ручка, когда вам действительно нужно меньше, и обещанный до запуска вес — это тот вес, который получится: hop прогоняет пробу, а не гадает.
  • кадр под площадку меняется в том же проходе, если ролик едет именно туда.
  • оригиналы остаются на месте, результаты ложатся рядом копиями.
  • картинки, звук и документы идут через это же окно, так что в Dock не появится ещё одно приложение на одну задачу.

модуль целиком — картинки, звук и документы в том же окне: конвертер файлов на странице возможностей

когда mp4 всё равно не принимают

здесь играет, а там отказывают

снова бренд. переименованный файл проходит любой ваш плеер и не проходит форму загрузки, потому что форма читает заголовок, а не картинку. перепакуйте его командой с пресетом passthrough — и то же содержимое пройдёт.

почему видео с iPhone — .mov, а не .mp4?

дело в истории, а не в технике: QuickTime — собственный контейнер Apple, и он старше mp4, который из него, собственно, и вырос. дорожки внутри современные, h.264 или hevc, — поэтому переименование вообще работает, а перепаковка занимает две секунды.

  • в результате нет звука. звуковая дорожка была такой, какую mp4 не несёт, или её не было и в исходнике — сначала проверьте, что оригинал играет со звуком.
  • на вашем Mac играет, а на машине, куда вы его отправили, нет. дело в разрешении или профиле кодека, а не в контейнере: файл 4K hevc в обёртке mp4 остаётся 4K hevc, и старое железо его не раскодирует.
  • в файле есть альфа-канал — от записи экрана или из рендера. mp4 прозрачность не хранит; ProRes 4444 в mov хранит, поэтому это и был mov.
  • это запись экрана на несколько часов. конвертировать её — неверный ход: сначала вырежьте нужное, потом конвертируйте остаток.
  • нужно не только совместимо, но и меньше. это другая операция: passthrough копирует, а не сжимает.

записи экрана — ещё и самый тихий способ забить диск, и смотрят туда в последнюю очередь: чем на самом деле заняты «Системные данные»

а если файл едет в соцсеть, кадр важнее контейнера: сжать видео для рилсов, TikTok и shorts

frequently asked questions

безопасно ли переименовать mov в mp4?
да — внутри файла ничего не меняется, и переименовать обратно можно в любой момент. чего это не делает, так это не превращает файл в mp4: контейнер по-прежнему объявляет себя QuickTime, и плееры это пропускают мимо ушей, а программы построже нет.
как перевести mov в mp4 без перекодирования?
avconvert -s clip.mov -o clip.mp4 -p PresetPassthrough. команда входит в macOS, копирует дорожки вместо перекодирования и справилась здесь с роликом на 82 МБ за две секунды.
почему QuickTime не экспортирует mp4?
в документации Apple сказано, что QuickTime Player не экспортирует mp4 — его экспорт пишет фильмы QuickTime. умение лежит в командной строке, а ещё в кодировании выбранных видеофайлов из Finder, которое пишет .m4v.
работает ли это для hevc с iPhone?
да. hevc законно живёт внутри mp4, поэтому пресет passthrough перепаковывает его, не трогая картинку. совет открыть редактор ради hevc остался от ограничения, которого нет.
теряется ли качество при переводе mov в mp4?
переименование и перепаковка через passthrough не теряют ничего вообще — ни один пиксель не перекодируется. настоящая конвертация, которой занимается видеоредактор или пресет экспорта, теряет немного.
как быстрее всего перевести целую папку?
цикл в командной строке вокруг той же команды с passthrough, если вы дружите с «Терминалом». конвертер, который берёт папку одним перетаскиванием, делает то же самое и показывает размеры до запуска.
почему Mac не открывает файлы mkv?
в macOS нет поддержки этого контейнера, и avconvert его тоже не читает. это другая задача — переложить mkv в mp4, — и для неё нужно что-то за пределами системы.

the tool behind this

file converterimages, video, audio and documents. offline, with the size shown up front.

done with конвертация и сжатие

other things people do

об авторе

Антон Шакиров, автор hop

создаёт hop

создаёт hop и все страницы этого сайта. девятнадцать инструментов под одной иконкой в menu bar, MIT и открытый код. на issue и письма отвечает сам.

download hopfree · macOS 14+ · Apple silicon and Intel