adamrees89 / HEICConverter

Convert HEIC files to a more transportable format (JPG)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

HEICConverter

GitHub GitHub repo size in bytes GitHub commit activity

GitHub issues GitHub pull requests GitHub closed pull requests

This is a wrapper around PyVips and Vips to enable me to batch convert images from Heic to Jpg for reporting.

Project has been updated to utilise pillow_heif

Speed

Currently the script can process approximately XX photos per second, depending on available cores as it uses the concurrent.futures module.. See the table below for the speed comparison before and after adding multithreading.

More information and quick tutorial on concurrent.futures: https://gist.github.com/mangecoeur/9540178

Number of Photos Elapsed Time Seconds/photo
VIPS No Multithreading 9 21.97 seconds 2.44
VIPS Mulithreading with concurrent.futures 9 8.64 seconds 0.96
Pillow and Pillow_heif Multithreading with concurrent.futures 9 4.38 seconds 0.49

Having changed computer since, I didn't want to rerun the above numbers to get fair results, but starting with the last item, further improvements are shown below:

Number of Photos Elapsed Time Seconds/photo
Pillow and Pillow_heif Multithreading with concurrent.futures 120 26.9 seconds 0.224
Multithreading with chunksize = 10 120 20.1 seconds 0.168
Multithreading with chunksize = 5 120 19.32 seconds 0.161

About

Convert HEIC files to a more transportable format (JPG)

License:MIT License


Languages

Language:Python 100.0%