--- id: pillow-heif version: "1.5.0" license: BSD-3-Clause license_treatment: copyleft maintenance: active --- # pillow-heif — Python interface for libheif library License: copyleft · Maintenance: active · Downloads: 13.2M/mo ## What it is and what it does pillow-heif is a Python binding to libheif that brings HEIF/HEIC image format support to the Pillow image library. It handles decoding and encoding of 8, 10, and 12-bit HEIC files, preserves EXIF, XMP, and IPTC metadata, and supports advanced features like depth images, thumbnail manipulation, and grid-tiled encoding. The package works as a Pillow plugin—register it once and Pillow's standard Image.open() and save() calls transparently handle HEIC files—or use its standalone API to work directly with HEIF data. The package is actively maintained and distributed as precompiled wheels for modern Python versions (3.10–3.14) across macOS, Windows, and Linux. Its single runtime dependency is pillow, making it straightforward to integrate into image processing pipelines. The medium install friction reflects the compiled nature of the bindings, but prebuilt wheels eliminate the need to compile libheif locally on most platforms. Use it for: - Add HEIC file support to a Pillow-based image processing pipeline with one-line plugin registration. - Convert HEIC images to other formats while preserving or manipulating embedded metadata. - Process high bit-depth (10 or 12-bit) HEIC files from modern cameras or Apple devices. - Extract and work with depth maps embedded in HEIC files from iPhone depth-capture photos. - Encode images as HEIC with grid tiling to match Apple device output formats. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. pillow-heif adds HEIF/HEIC image format support to Python, enabling decoding and encoding of 8, 10, and 12-bit HEIC files with metadata and depth image handling. Yes, if you need HEIF/HEIC support in Python. The package is actively maintained, has no known vulnerabilities, and offers precompiled wheels for all major platforms and Python versions. The copyleft license classification warrants verification for proprietary use, but the library itself is straightforward to integrate via Pillow's plugin system or direct API calls. ## Install pip install pillow-heif uv add pillow-heif poetry add pillow-heif ## Installing pillow-heif Before you install: Medium install friction due to compiled wheels; prebuilt binaries are available for CPython 3.10–3.14 and PyPy 3.11 across macOS (Intel and ARM), Windows, manylinux, and musllinux. Active maintenance with a release 23 days ago. License in practice: Licensed under BSD-3-Clause (raw) but marked as copyleft in treatment; verify the implications for your use case, particularly if distributing proprietary software. Quickstart: from pillow_heif import register_heif_opener register_heif_opener() # Then use pillow's Image.open() and save() on .heic files Requires pillow as a runtime dependency; libheif C library bindings are compiled into the wheel. Verify before relying: - Whether BSD-3-Clause license classification as 'copyleft' in the fact sheet aligns with standard copyleft definitions. - Performance characteristics for large-scale batch HEIC encoding/decoding operations. - Compatibility with non-standard HEIC variants or proprietary extensions. ## Package facts - License: BSD-3-Clause (copyleft) - Python support: supports_current - Install friction: medium - Maintenance: active - Downloads: 13.2M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags heif heic image support python, heic decoder encoder, heif image format python, heic to png conversion, 10-bit 12-bit heic processing, heif depth image support, heic metadata exif xmp, heif-heic-codec, image-format-conversion, metadata-preservation [View on SkillFed](https://skillfed.io/packages/pillow-heif) · [View on PyPI](https://pypi.org/project/pillow-heif/)