Giter Club home page Giter Club logo

photo-woylie's Introduction

PhotoWoylie

PhotoWoylie (short woylie) is a script for organizing your photos. Woylie will be able to keep track of already imported files and sorts them by date (year / month), location and camera.

It works best on CoW File Systems like btrfs, xfs, ocfs2 and Apples apfs. Woylie will try to use reflinks (or file clones) for importing photos and movies. It has been tested with apfs on macOS and btrfs on Ubuntu.

Rationale:

Most users have already stored Photos on the disk in several locations. Often unable to identify which files have already been imported, copied, sorted. This also happens with photos from backups e.g. your smartphone. Woylie will import all files into hash-lib where files are stored by their hash digest. With this duplicate files will not be imported, even if they are from different locations (as long as the content hasn't been changed. Woylie will use reflinks for importing the files (where possible -> this will not work on Windows). Leveraging reflinks it will allow for more space efficient storage of all files since spaece is only used once.

Exposing the Files again as via various folders makes it possible for any program to find and leverage the power of metadata

Name Origin:

The woylie or brush-tailed bettong (Bettongia penicillata) is an extremely rare, small marsupial, belonging to the genus Bettongia, that is endemic to Australia.

โ€” Woylie Article on Wikipedia

The name was chosen from the Endangered Species List to remind us of the fragile diversity of this planet.

Dependencies

Woylie uses exiftool for retrieving the exif information. I found it to be most reliable and it works even with .heic files from Apples iPhones and iPads.

Install it on macOS via homebrew

brew install exiftool

or on your linux distribution via your preferred package manager.

Folder Structure

woylie will maintain several folders in its base path passed by the --base-path argument and expose imported files in the directories. With a directory structure it is possible for all kinds of different software to use the contents.

Folders

  • hash-lib -- Folder for all files ordered after sha256 hash
  • by-time -- Photos linked after the Year and time
  • by-location -- Photos linked after Location
  • by-camera -- Photos sorted after the camera model.
  • by-import -- Photos by import run - contains the original file names
  • log -- Output for logfiles and the like
  • data -- general data needed by woylie

Examples

python3 PhotoWoylie.py -b ~/my-photos -i /path/to/photos /other/path/to/photos

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.