Options¶
- pillow_heif.options.DECODE_THREADS = 4¶
- Maximum number of threads to use for decoding images(when it is possible) - When use pillow_heif as a plugin you can set it with: register_*_opener(decode_threads=8) 
- pillow_heif.options.THUMBNAILS = True¶
- Option to enable/disable thumbnail support - When use pillow_heif as a plugin you can set it with: register_*_opener(thumbnails=False) 
- pillow_heif.options.DEPTH_IMAGES = True¶
- Option to enable/disable depth image support - When use pillow_heif as a plugin you can set it with: register_*_opener(depth_images=False) 
- pillow_heif.options.QUALITY = None¶
- Default encoding quality - Note - Quality specified during calling - savehas higher priority then this.- Possible values: None, -1, range(0-100). Set -1 for lossless quality or from 0 to 100, where 0 is lowest and 100 is highest. - Note - Also for lossless encoding you should specify - chroma=444during save.- When use pillow_heif as a plugin you can set it with: register_*_opener(quality=-1) 
- pillow_heif.options.SAVE_HDR_TO_12_BIT = False¶
- Should 16 bit images be saved to 12 bit instead of 10 bit`` - When use pillow_heif as a plugin you can set it with: register_*_opener(save_to_12bit=True) 
- pillow_heif.options.ALLOW_INCORRECT_HEADERS = False¶
- Can or not the - sizeof image in header differ from decoded one.- Note - If enabled, - Image.sizecan change after loading for images where it is invalid in header.- To learn more read: here - When use pillow_heif as a plugin you can set it with: register_*_opener(allow_incorrect_headers=True) 
- pillow_heif.options.SAVE_NCLX_PROFILE = True¶
- Should be - nclxprofile saved or not.- Default for all previous versions(pillow_heif<0.14.0) was NOT TO save nclx profile, due to an old bug in Apple software refusing to open images with nclx profiles. Apple has already fixed this and there is no longer a need to not save the default profile. - Note - save_nclx_profile specified during calling - savehas higher priority than this.- When use pillow_heif as a plugin you can unset it with: register_*_opener(save_nclx_profile=False) 
- pillow_heif.options.PREFERRED_ENCODER = {'AVIF': '', 'HEIF': ''}¶
- Use the specified encoder for format. - You can get the available encoders IDs using - libheif_info()function.- When use pillow_heif as a plugin you can set this option with - preferred_encoderkey.- Note - If the specified encoder is missing, the option will be ignored. 
- pillow_heif.options.PREFERRED_DECODER = {'AVIF': '', 'HEIF': ''}¶
- Use the specified decoder for format. - You can get the available decoders IDs using - libheif_info()function.- When use pillow_heif as a plugin you can set this option with - preferred_decoderkey.- Note - If the specified decoder is missing, the option will be ignored. 
Example of use¶
import pillow_heif
pillow_heif.options.THUMBNAILS = False
pillow_heif.options.DECODE_THREADS = 1
Overriding multiple options at once¶
When registering a Pillow plugin with pillow_heif.register_heif_opener()
register_heif_opener(thumbnails=False, quality=100, decode_threads=10)