Преобразование HEIF (.heic) в JPEG на сервере?
Apple представила новый формат изображения в iOS 11 под названием HEIF (расширение файла .heic). Я знаю, что вы можете экспортировать изображения в формате JPG с устройств iOS, но я хочу загрузить HEIC файлы на свой сервер и преобразовать их туда в файлы JPEG, которые могут быть показаны на всех других устройствах.
Кто-нибудь может рекомендовать хороший и эффективный способ достичь этого?
Ответ:
Поскольку этот вопрос был закрыт, я отредактирую в своем ответе здесь для всех вас. Теперь мы используем эту библиотеку для преобразования HEIC в JPEG: https://github.com/monostream/tifig
Также существует процесс получения HEIC в JPEG в ImageMagick и for ImageMagick с поддержкой HEIC в JPEG (обрезка не работает должным образом)
Спасибо @monostream и @toshic за ваш большой вклад!
EDIT1: отредактировал формулировку вопроса, чтобы быть более конкретным и соответствовать рекомендациям SO
EDIT2: добавлен ответ, так как этот вопрос теперь закрыт:/
Ответы
Ответ 1
Это осложняется тем, что iOS 11 фактически хранит плитки HEVC-кодированных изображений в контейнере HEIF, но есть демо-версия, использующая nokia lib, чтобы извлечь их все, ffmpeg, чтобы декодировать их, а затем сшивать их в один jpeg с imagemagick в heiftest repo, связанный с поврежденной плитой HEIC при конвертации в JPEG
У нас также есть рабочий, который вы можете использовать, клонировав https://github.com/pushd/heif, а затем:
cmake CMakeLists.txt && make && Bins/heiftojpeg test_001.heic test_001.jpg
Ответ 2
CloudConvert поддерживает преобразование этих файлов HEIC в JPG: https://cloudconvert.com/heic-to-jpg. Они также имеют API с PHP/ node.js/Python SDK.
Ответ 3
Используйте requestImageDataForAsset
, вы получите исходную файловую дату.
Итак, измените использование requestImageForAsset
, вы получите UIImage, это будет формат JPEG
. затем преобразуйте его в Data.
Ответ 4
Сейчас нет такой библиотеки для преобразования изображений на сервере для HEIF в JPEG, у ImageMagick до сих пор нет поддержки.
Единственный способ, которым вы можете это сделать, экспортировать изображения с вашего устройства, которые должны создать изображение в формате JPEG.
Nokia имеет HEIF javascript-реализацию, которую вы можете посмотреть: Nokiatech heif
Alternate: вы можете попробовать этот сайт, если это работает.
Запрос функции для ImageMagick
Ответ 5
Отказ от ответственности: я являюсь одним из разработчиков этого приложения.
Мы сделали простое приложение перетаскивания для macOS и Windows, которое преобразует файлы HEIF/HEIC в JPEG. Он также включает EXIF и цветовой профиль в JPG. Он доступен бесплатно: https://imazing.com/heic