Кто-то присылает вам фото с iPhone. Вы открываете его в стандартном просмотрщике и видите пустое окно или ошибку о неподдерживаемом формате. С файлом всё в порядке. Просто в вашей Linux-системе нет декодера HEIC по умолчанию.
Решение обычно сводится к одному пакету. Вот три способа просмотра HEIC на Linux: от командной строки до разовой конвертации в браузере.
Почему Linux не может просмотреть HEIC
HEIC это контейнерный формат с HEVC-сжатыми изображениями внутри. Большинство дистрибутивов Linux не включают декодер HEVC по той же причине, что и Windows: патентное лицензирование. Кодек существует, но по умолчанию не активен.
Хорошая новость в том, что инструменты зрелые. libheif предоставляет и библиотеку, и инструменты командной строки, и большинство дистрибутивов аккуратно его упаковывают.
Способ 1: heif-convert из libheif (командная строка)
Самый быстрый путь это инструмент heif-convert, который идёт с libheif. Установите его, затем конвертируйте файл.
На Ubuntu и Debian:
sudo apt install libheif-examples
heif-convert photo.heic photo.jpg
На Fedora:
sudo dnf install libheif-tools
heif-convert photo.heic photo.jpg
На Arch:
sudo pacman -S libheif
heif-convert photo.heic photo.jpg
Это положит JPG рядом с вашим HEIC. Для целой папки пройдитесь по файлам:
for f in *.heic; do heif-convert "$f" "${f%.heic}.jpg"; done
Способ 2: использовать просмотрщик с поддержкой HEIC
Если вам удобнее графический интерфейс, выберите просмотрщик, который читает HEIC напрямую.
- gThumb это лёгкий просмотрщик изображений, поддерживающий HEIC из коробки на большинстве дистрибутивов. Установите его через менеджер пакетов и откройте файл.
- На Ubuntu установка
libheif1вместе с современным gThumb покрывает большинство случаев. - ImageMagick с поддержкой libheif тоже умеет показывать и конвертировать, хотя ему привычнее командная строка.
Если после установки libheif ваш стандартный просмотрщик всё равно отказывает файлу, такой просмотрщик как gThumb это надёжный выбор.
Способ 3: конвертировать в браузере (разово)
Когда нужен один файл и не хочется трогать терминал, конвертируйте в браузере. Наш конвертер HEIC в JPG работает полностью на вашем устройстве:
- Перетащите файл. Бросьте HEIC в браузер.
- Конвертируйте локально. WebAssembly-сборка libheif декодирует его на вашей машине. Ничего не загружается.
- Скачайте JPG. Откройте его в любом просмотрщике.
При необходимости можно выводить PNG или WebP.
Какой подход использовать?
| Ситуация | Лучший способ |
|---|---|
| Пользователь командной строки, один файл | Способ 1, heif-convert |
| Целая папка фото | Способ 1, пройтись по файлам |
| Предпочитаете графический интерфейс | Способ 2, gThumb |
| Разово, без установок | Способ 3, браузер |
| Нужен вывод PNG или WebP | Способ 1 или 3, выбрать формат |
Частые вопросы
Открывает ли Ubuntu HEIC нативно?
Не по умолчанию. Установите libheif-examples (или libheif1 плюс просмотрщик с поддержкой HEIC), и файлы будут открываться нормально.
Какой пакет даёт heif-convert?
На Ubuntu и Debian это libheif-examples. Fedora делит его на libheif-tools, а Arch включает в libheif.
Можно ли просмотреть HEIC без конвертации? Да. Установите libheif и используйте поддерживающий просмотрщик, например gThumb. Просмотрщик декодирует файл, не изменяя его.
Теряется ли качество при конвертации HEIC? JPG это формат с потерями, но при высоком качестве разница обычно незаметна. Разрешение сохраняется.
Итог
Установите libheif-examples на Ubuntu и Debian, libheif-tools на Fedora или libheif на Arch, затем используйте heif-convert, чтобы превратить фото в JPG. Предпочитаете графический интерфейс. Возьмите gThumb. Для одного файла без установок конвертируйте в браузере. Каждый путь достаёт фото из контейнера и выводит его на экран.