suy / holidays_hangover_helper

Helper for chores done to pictures and videos after holydays

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Holidays Hangover Helper

Warning
This is a work in progress. This document doesn’t reflect the current state.

Simple GUI and CLI application to assist in the chores that I tipically do to pictures and videos after holidays:

  • Shift time and date of different sets (coming from different devices) to have them in sync.

  • Rename them according to the same naming conventions. Helps in having them sorted for proper watching when not all applications sort them by metadata fields (most of my videos from past holidays don’t have metadata at all, and some picture applications strip the EXIF date fields).

I started with some single line scripts with everything hardcoded and adjusted before each use. For example:

# Add one hour to the pictures' metadata.
exiv2 -a '+01:00:00' *JPG
# Modify the time stamp of certain files.
find . \( -iname '*.mp4' -or -iname '*.jpg' \) -exec touch -r {} -d '+1 year' {} \;
# Rename the pictures according to the file metadata.
find . -iname '*.jpg' -exec exiv2 -F -t -r %Y-%m-%d_%H-%M-%S {} \;
# Rename the videos according to their time stamp.
for file in *.mp4 ; do
    name=`stat --format %y $file | cut -c 1-19 | tr " :" "_-"`.mp4
    echo $file "-->" $name
    mv -i $file $name
done

Then I wrote a simple Ruby script with thor, that now I’m rewriting to make a "proper" Ruby gem, and learn about everything in the process.

Installation

The usual. Run:

gem install holidays_hangover_helper

Usage

Command line application

hhh

Graphical application

holidays-hangover-helper

Contributing

  1. Fork it (https://github.com/suy/holidays_hangover_helper/fork).

  2. Create your feature branch (git checkout -b my-new-feature).

  3. Commit your changes (git commit -am 'Add some feature').

  4. Push to the branch (git push origin my-new-feature).

  5. Create a new Pull Request.

About

Helper for chores done to pictures and videos after holydays

License:MIT License


Languages

Language:Ruby 100.0%