This Windows Form application is used to sort photos and videos by date or type into a new folder. It recursively searches the source directory for photo or video files and either moves or copies them to a new folder structure by either date or file type. It can also recursively compare two folders to identify photo & video files that may be missing from the target folder.
After building the project, open PhotoOrganizer.exe and select your source and destination directories. Use the buttons to perform different actions with the source files.
-
Make Copy?: when checked, will copy the files to the destination. When unchecked, original files will be moved.
-
Sort By Type: Destination folder will contain subdirectories by filetype.
-
Sort By Date: Destination folder will contain directory structure based on identified file date. Structure is as follows:
- Year
- Month (mm)
- Day (yyyymmdd)
- file
- Day (yyyymmdd)
- Month (mm)
- Videos
- video files
Will attempt to find the original file date using EXIF metadata, preferring Original date, then File date, then date digitized. If none of those fields are found in metadata, it will use the earlier of the file creation date and the last modified date
- Year
-
Rename Vids: Copy video files to directory "Renamed", adding a prefix of the video date (yyyymmdd) to the filename
-
Remove Short Vids: Move video files less than 3 seconds to directory "Short"
-
Compare Pics: Identify photos from source directory not found in destination directory (compare by name), write results to logfile in destination directory
-
Compare Vids: Identify possible duplicate videos based on filesize or duration, write results to CSV in destination folder / "Duplicates"
-
Merge HEIC:
-
Handle HEVC:
MetaDataExtractor.dll must exist in same directory as PhotoOrganizer.exe
After building, PhotoOrganizer.exe may be run from bin/Debug or bin/Release, or if copied to another folder must be accompanied by MetaDataExtractor.dll
- .Net Framework 4.5
- MetaDataExtractor - Extracts metadata (EXIF) from files
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
- Whit Matthews - Initial work
See also the list of contributors who participated in this project.
This project is licensed under the MIT License - see the LICENSE.md file for details
- Thanks to Drew Noakes for creating MetaDataExtractor