Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HEIF format support (fixes #207) #215

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

ink-splatters
Copy link

@ink-splatters ink-splatters commented Apr 14, 2024

HEIF Support

This is attempt to support HEIF format, ubiquitous on Apple devices, using Pillow-Heif

See below why using libheif directly might be better option.

Licensing

This PR uses pi-heif - the light version of Pillow-Heif which only links against LGPL-licensed libheif, evading harsher GPL restrictions of the full version (see LICENSES_bundled.txt)

libheif is built and packaged for the wide range of platforms and leaves only small amount of platforms to follow LGPL-restrictive path.

However, Pillow-Heif, including pi-heif variant, provides wheels only for:

  • macOS (Intel and Apple Silicon)
  • Windows 64 bit
  • muslinux and manylinux x86_64 and aarch64

which is more narrow platform support than one of libheif.

Therefore, direct usage of libheif is advised, however it's out of scope of this PR.

If the author chooses to merge this PR, I suggest creating LICENSES_bundled.txt following Pillow-Heif approach which seems pretty neat.

This PR fixes #207

* image_utils:
    enable HEIF by ad-hoc calling register_heif_opener()
    add 'HEIF' to IMG_FORMATS

* Bump version to 0.3.3
@ink-splatters ink-splatters changed the title HEIF format support HEIF format support (fixes #207) Apr 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

HEIC support?
1 participant