Releases: bigcat88/pillow_heif
Releases · bigcat88/pillow_heif
v0.9.1
Changed
- info["nclx_profile"] changed type from bytes(format of which was not described) to dict.
- Drop support for Python 3.6, PyPy 3.7. Added PyPy 3.9 wheels.
convert_tomethod:RGBatoRGBmode support was removed(last Pillow supports it). #67
Fixed
- Small memory leak when opening image with
nclxcolor profile. #64
v0.9.0
v0.8.0
Added
- Armv7: wheels for Alpine 3.14+ with
musllinux_1_2_armv7ltag.
Changed
libheifupdated to1.14.0version- Ability to pass
enc_paramsfor save asList[Tuple[str, str]]was removed, now it accepts onlyDict. - Deprecated
options().ctx_in_memorywas removed(default behaviour do not change). - Deprecated
options().strictwas removed(default behaviour do not change). - Deprecated
check,open,read,check_heiffunctions was removed. scalemethod marked as deprecated.
Fixed
- Values in
enc_paramsforsavecan now be of typeintorfloatand will be automatically converted tostr. - Armv7: wheels supports Debian 10(was only Debian 11+\Ubuntu 20.04+ previously) with
manylinux_2_28_armv7ltag. - Armv7: wheels sizes decreased significantly(almost in
3x).
v0.7.2
v0.7.1
Added
- Support for images with a
premultiplied alphachannel (Pillow does not fully support these). - (Heif)
premultiplied_alpharead-write property. - (Heif)
to_pillowmethod toHeifFileclass. - (Heif)
RGBA;16->RGBAconversion. - (Heif)
RGBa->RGBconversion.
Changed
libaomupdated from3.4.0to3.5.0version. changeloglibde265updated from1.0.8to1.0.9.- (Heif) The
get_file_mimetypefunction has been reworked and is now written in python. - (Heif) The
is_supportedfunction has been reworked and is now written in python. options().strictoption marked as deprecated and will be removed in0.8.0.- (Heif)
check_heiffunction marked as deprecated.
Fixed
- (Heif)
convert_toshould do nothing if the targetmodeis already the current image mode. - (AvifImagePlugin) do not register or accept
.avifsfiles, libheif does not support them. - Images in
CMYKmode will be converted forRGBAmode during saving instead of throwingKeyErrorexception.
v0.7.0
This release is fully compatible with previous versions.
Changed
libheifupdated to version1.13.0- License for project itself changed to
Apache 2.0
v0.6.1
This release contains security and bug fixes.
Changed
- Speed boost for AVIF encoding(+50%). commit
Fixed
- (Linux, Windows) libde265: CVE-2022-1253, CVE-2021-36408, CVE-2021-36410, CVE-2021-35452, CVE-2021-36411 MSYS2 PR
- libheif: with chroma=
420(which is a default mode) encoded images are closer to the originals with arrived patches. libheif issue - libheif: scaling of images in some cases: commit
- Total
21patches with fixes from official libheif repo has arrived.
v0.6.0
This release is fully compatible with previous versions if you was not using AVIF decoding before.
Added
- (Heif)
savemethod accepts optional parameterformat. Ifformat="AVIF"output file will be encoded inh264format usingAOM. AvifImagePluginintroduced. Usage:register_avif_opener()orimport pillow_heif.AvifImagePlugin- After registering
AvifImagePluginyou can work with.aviffiles the same way you do with.heic
Changed
- (HeifImagePlugin) By default not accepts
.aviffiles, registerAvifImagePluginif you need that. If you usepillow_avifthen do not =) options().hevc_encproperty was removed.options().avifproperty was removed.
Fixed
- Better compatibility with
pillow_avifpackage. - (Linux) Wheels size decreased significantly(almost in
2x). - (Linux) Building from source is a bit simpler, you can build it with your custom libraries from now.
- (Linux) Great speed boost for encoding with new build type(it is as fast now as in Windows builds).
v0.5.1
This release is fully compatible with 0.5.0 version.
Added
chroma=4xxoptional subsampling parameter forsave. Equivalent toenc_params=[("chroma", "4xx")]in old versions.
Changed
enc_paramsforsavechanged type fromList[Tuple[str, str]]toDict. Old code will still work, but marked as deprecated.libheif_infonow returns also bundled versions ofx265andaom.options().avifmarked as deprecated. Starting from0.6.0version to register anAVIFplugin there will be a separate function and it will be disabled by default.options().hevc_encmarked as deprecated and will be removed in0.6.0.
Fixed
- Rare situation when exif orientation is
1and xmp orientation different from1present at same time. - XMP tags orientation that are generated by
exiftoolin some cases. - Updated
libaomon Linux and Windows from3.3.0to3.4.0version. MacOS builds had already that version in0.5.0. - Pillow plugin now does not register
savemethods forHEIFformat if build does not containsHEIFencoder(for custom builds from source). - Slightly speed optimizations for working in a
Pillowplugin mode.
v0.5.0
Thumbnails was reworked, if you was not use them before, then this release is fully compatible with 0.4.0 version.
It is a final API release, no more further changes to existing API are planned, only bugfixes if any and etc.
Added
- (Heif, HeifImagePlugin)
thumbnailfunction,docsfor it. __numpy_array__property toHeifFileconvert_tomethod toHeifFile
Changed
- Wheels now are in ABI3 format for CPython(
cp3x-abi3-xxx.whl),3xless size on PyPi. - (Heif)
to_pillowmethod, now fillsmetadatafrom an original image if was called for thumbnails. - (HeifImagePlugin) During
opencurrent framein multi frame images are set to index ofPrimary Image. - (Heif)
add_thumbnailsmethod moved fromHeifFile/HeifImageto separate file and now can accept aPIL Image.
Fixed
- (HeifImagePlugin) Nice
speed upfor reading images having thumbnails in aPillow pluginmode. - (HeifImagePlugin)
XMPmetadata save fromTIFFandJPEG. - (HeifImagePlugin)
EXIFmetadata save fromTIFF(only for Pillow >= 9.2). - (HeifImagePlugin) - Not to change index of a current frame during saving multi frame images.