I'm building a photosorting tool. Not just any photo sorting too tho, you can enter the days u went on trips, or just give a vague estimate, and using the EXIF readings you can place images into those categories. BUT you must be wondering what about the photos my friends sent me, they dont have that metadata. dont worry its has a local AI agent running on ur computer that will safely cross reference photos with dates, to those photos, allowing you to have a clean and effortless way to sort through all the photos
prototyped the process and the overall goal of the project
built the format converters because apple is a bum and it stores in HEIC and MOV for photos and videos, so i made them lossless PNG and MP4 format so its actually viewable on windows
this is basically cuz the HEVC codec reader costs like a $1 on windows and im lowk to broke for that
this is like step one of the entire thing because to sort the photos, you need to be able to actually make sure its in the right category
the problem
basically every one of the converted photos lost their metadata like the date, and EXIF data
i was like “okay its chill, nothing is gonna happen” but the ENTIRE process depends on it so like i had to figure smth out
saving a PNG in pillow removes the EXIF unless u pass it back, so my “working” converter was basically not working
fixed it by adding a section to carry over the EXIF metadata. for videos i swtiched from re-encoding to an ffmpeg stream copy with map_metadata, which kept the creation date and made conversion near instant instead of minutes per clip (it took a lottttt of time)
how it works (windows only)
Runs on Windows (u need a decent cpu)
you just gotta run the batch file and then everything works on the machine, so nothing gets uploaded to the cloud
yay ur data is save
step zero: plug ur phoen into the USB and copy my entire camera roll to my computer
step one: make sure its all in the Unsorted_Media folder so the script actually reads it
the main like bottleneck ig idk what to call this
the smart part (deciding what each photo actually is, a real memory versus a document or junk, plus things like food or a place) will probably need a local AI vision model, which pretty much needs a GPU to be usable. (its gonna work on my 5080, but without it, it takes like 40 seconds per on an i7 150U)
the sorting also needs EXIF, the timestamp the camera stamps into each photo. If every photo has clean EXIF, sorting into events is easy and accurate.
the issue with EXIF is that forwarded photos, screenshots, downloads dont have EXIF