Начиная с iOS 11 iPhone сохраняет фотографии в HEIC: контейнер HEIF с данными, сжатыми кодеком HEVC. При одинаковом визуальном качестве файл занимает примерно вдвое меньше места, чем JPG, — именно поэтому Apple перешла на него. Плата за это — совместимость: многие компьютеры с Windows, формы загрузки и старые программы до сих пор его не открывают. Конвертация в JPG меняет компактный файл на формат, который читает всё.
Почему файл не открывается
Для HEIC нужен декодер HEVC. Windows 10 и 11 требуют расширения HEIF Image Extensions из Microsoft Store, причём кодековая часть исторически была платным дополнением. Многие формы загрузки, почтовые клиенты и старые версии Photoshop просто отклоняют файл. У JPG таких проблем нет.
Чего стоит конвертация
HEIC хранит 10-битный цвет и может нести карту усиления HDR; JPG — 8-битный и без HDR. На обычном снимке разницы вы не увидите, но в сценах с сильным контрастом — контровой свет, закат — переходы в светах могут стать заметно жёстче. Данные о глубине и видеодорожка Live Photo тоже не переносятся: остаётся неподвижный кадр.
Метаданные не переносятся
JPG заново отрисовывается в браузере, поэтому EXIF — дата съёмки, модель камеры, геоданные — в него не копируется. Такой файл безопаснее публиковать; если исходные метаданные нужны, сохраните HEIC рядом с JPG.
- Компьютер с Windows, машина на Linux или старый телефон не может открыть фотографии, которые вы только что отправили с iPhone.
- Форма загрузки, типография или почтовый клиент принимает только JPG и отклоняет файл без объяснения причины.
- Чтобы решить проблему в корне: на iPhone откройте Настройки → Камера → Форматы → Наиболее совместимые, и камера будет снимать сразу в JPEG. Фотографии станут занимать примерно вдвое больше места — ровно тот компромисс, на который пошла Apple, сделав HEIC форматом по умолчанию.
- Готовые файлы JPG оказались крупнее, чем вы рассчитывали, — пропустите их через сжатие изображений, чтобы уменьшить размер.
Теряется ли качество при конвертации в JPG?
На выходе фото сжимается в JPG с потерями, но при качестве по умолчанию заметить это очень трудно. Сильнее сказывается структурное различие: HEIC 10-битный, а JPG 8-битный, поэтому у плавных градиентов в очень светлых или очень тёмных участках остаётся меньше ступеней.
Что произойдёт с Live Photo?
Вы получите неподвижный кадр. Live Photo — это изображение HEIC вместе с короткой видеодорожкой, а в JPG видео поместить некуда. Если нужно движение, экспортируйте снимок как видео из приложения «Фото».
Почему JPG весит больше, чем HEIC?
Так и должно быть. HEVC сжимает намного эффективнее JPG, поэтому та же фотография в JPG обычно оказывается в 1,5–2 раза крупнее. Размером файла вы платите за возможность открыть его где угодно.
Загружаются ли мои фотографии на сервер?
Нет. Декодер HEIC работает в вашем браузере, поэтому фотографии не покидают устройство. Здесь это важнее обычного: снимки с iPhone часто содержат геоданные в EXIF.
Большинство файлов HEIC приходит прямо с iPhone или iPad — после AirDrop, копирования по USB или загрузки из облака, которое сохранило исходный формат. Эта страница сделана именно для такого случая: она принимает только файлы .heic и .heif и всегда выдаёт JPG. Ниже — что происходит с фотографией по дороге, какая настройка действительно важна и что проверить, если результат получился не таким, как вы ожидали.
Почему первая конвертация занимает больше времени
Браузеры не умеют читать HEIC сами, поэтому страница загружает libheif — открытый декодер HEIF, скомпилированный в WebAssembly, — и запускает его на вашем устройстве. Декодер скачивается только в этом инструменте и начинает загружаться в фоне, как только страница простаивает, ещё до того, как вы выбрали файл. Когда вы добавите фото, под областью загрузки появится строка с его состоянием: готовится, готов или задерживается.
Когда декодер готов, каждое фото проходит два этапа, которые видно в списке файлов. Декодирование — самая затратная часть: данные HEVC в полном разрешении распаковываются в фоновом потоке. Затем пиксели отрисовываются на canvas и кодируются в JPG. На современном ноутбуке это занимает мгновение на снимок, на старом телефоне декодирование заметно медленнее. Это нормально и не означает, что что-то отправляется в сеть.
Если декодер не удалось загрузить, например из-за обрыва связи, строка состояния становится жёлтой, а страница повторит попытку, когда вы нажмёте «Конвертировать». Перезагружать страницу или заново добавлять файлы не нужно.
Почему качество выше 92 % ничего не даёт
У маршрута HEIC есть шаг, которого нет у других конвертеров на сайте. Декодер сначала отдаёт фото в виде промежуточного JPEG с качеством 92 %, а ползунок качества — от 10 % до 100 %, по умолчанию 85 % — управляет вторым кодированием, результат которого вы и скачиваете. Ползунок по-прежнему определяет итоговый размер файла, но не может вернуть детали, которые уже сгладил шаг с 92 %.
На практике 85 % — разумный выбор для отправки и просмотра на экране, а 90–92 % — полезный потолок, если вы собираетесь печатать или дальше редактировать снимок. Выше 92 % JPG становится тяжелее, но не резче. Если нужна нетронутая эталонная копия, храните исходный HEIC рядом с JPG.
Метаданные: JPG начинается с чистого листа
JPG записывается из пикселей canvas, а canvas не хранит метаданных. Дата и время съёмки, модель камеры и объектива, параметры экспозиции и координаты GPS не переносятся из HEIC в сконвертированный файл. Для снимков, которые вы собираетесь выложить публично, это полезный побочный эффект: записанное телефоном местоположение исчезает.
Есть и обратная сторона. Фотобиблиотеки и многие приложения сортируют снимки по дате съёмки из EXIF, а без неё берут дату файла — то есть момент, когда вы скачали JPG. Если вы конвертируете альбом для архива, сохраните исходные HEIC, чтобы настоящие даты остались доступны.
Поворот решается ещё раньше. libheif при декодировании применяет поворот и зеркалирование, записанные в HEIC, поэтому пиксели сразу выходят в правильной ориентации и не остаётся тега ориентации, который другая программа могла бы прочитать неверно.
Файлы, в которых больше одного изображения
Контейнер HEIF может хранить несколько изображений. Декодер читает список изображений верхнего уровня в файле, но конвертирует только первое, да и JPG в любом случае вмещает одну картинку. В обычном снимке с iPhone это первое изображение и есть сама фотография. Если HEIF объединяет несколько кадров, вы получите один JPG, а остальные не будут экспортированы.
С HDR та же логика. Декодер выдаёт стандартные 8-битные пиксели RGBA, поэтому на экране с поддержкой HDR сконвертированное фото будет выглядеть чуть более плоским в самых светлых участках, чем в приложении «Фото». Это ожидаемо, и никакая настройка на этой странице этого не меняет.
Конвертация большой пачки
Добавить можно сразу много файлов, но конвертируются они по очереди, в порядке списка, а не параллельно, и каждое фото декодируется в полном разрешении, прежде чем начнётся следующее. На телефоне или компьютере с небольшим запасом свободной памяти лучше разбить фотоплёнку на небольшие группы, чем добавлять сотни снимков за один раз.
«Скачать все» сохраняет каждый готовый JPG отдельной загрузкой, а не архивом ZIP, поэтому браузер может один раз спросить, разрешить ли этому сайту скачивать несколько файлов. Каждый файл сохраняет часть имени до первой точки: IMG_1234.HEIC превращается в IMG_1234.jpg, а poezdka.den1.heic — в poezdka.jpg. Так у двух фото может оказаться одинаковое имя, и браузер добавит номер ко второму.
Если один файл падает с ошибкой декодирования, а остальные проходят, причина обычно в самом файле: он повреждён, оборван прерванной передачей или на самом деле это другой формат, переименованный в .heic. Повторный экспорт оригинала с устройства чаще всего решает проблему. Файлы, у которых нет расширения .heic или .heif и которые система не определяет как HEIC или HEIF, отклоняются уже при добавлении, а под областью загрузки появляется сообщение.