Coder Social home page Coder Social logo

Code implementaiton about exiv2 HOT 7 CLOSED

exiv2 avatar exiv2 commented on May 24, 2024
Code implementaiton

from exiv2.

Comments (7)

clanmills avatar clanmills commented on May 24, 2024

I really want to keep Exiv2 out of the development of applications. Exiv2 is enabling technology. The effort to maintain and develop the library keeps me very busy. Getting involved with a photo library organiser would require lots of UI work for which I don't have time. There is a sample command-line program contrib/organize/organize.cpp to organise photos into different directories.

However, you are very welcome to use Exiv2 in your project. Many projects use Exiv2 including Shotwell, GwenView, darktable and digiKam. So, you're in good company. Be sure to research these other applications before starting to "roll your own". If you have ideas about features you'd like to see in a photo library organiser, please consider contributing to an existing project.

from exiv2.

keybraker avatar keybraker commented on May 24, 2024

Thank you very much !
I will try my best for i want to make just a simple organizer to manage my photos by date.
Not anything fancy :)

from exiv2.

clanmills avatar clanmills commented on May 24, 2024

I started a project like that on Windows in 2003. I'm still working on it!

It's easy to start with something to show photos from a disk folder/directory. Then you think "Ah wouldn't it be cool to generate HTML from those photos.". Or "Oh, wouldn't it be cool to GeoTag the photos using a GPX file.". And you'll be there forever.

I stopped bothering with my photo-organiser when Picasa arrived (about 2006 or so). Google have now terminated Picasa development and I'm wondering what to do. I'm not tempted to start writing my own.

from exiv2.

keybraker avatar keybraker commented on May 24, 2024

I tried all the programs and they are super buggy. And don't do what I want.
I will create a basic program, to just organize your photos, and call it a day.
I wont make more than I can eat ...

from exiv2.

keybraker avatar keybraker commented on May 24, 2024

My family and I have a huge unsorted library and multiple duplicates and I just want a fast project to do it. I really believe in what you say and I will always think about adding something new. I don't find the cloud based options bad, but they are not my cap of tea. I prefer local databases so I will create a program to manage my photos :) Thank you very much, I will probably use exiv2 to do all the actions, so I will call it from within the project.

Thank you again for a great project !

from exiv2.

clanmills avatar clanmills commented on May 24, 2024

Have a look at contrib/organize/organize.cpp. It's probably quite good. I've never used it, although I've dealt with a couple or queries from users about building it on various platforms.

In you're looking for duplicates, think about a script. Exiv2 can read about 1000 images/second on my 4 year old MacBook Pro. Search for the field DateTimeOriginal:

792 rmills@rmillsmbp:~/Pictures/2017 $ cp  cp Yorkshire/DSC_5188.jpg AlisonBirthday/
793 rmills@rmillsmbp:~/Pictures/2017 $ find . -iname "*.jpg" | xargs exiv2 -pa --grep DateTimeOriginal/i | sort -i -k 5,10  --unique        > /tmp/unique.txt
794 rmills@rmillsmbp:~/Pictures/2017 $ find . -iname "*.jpg" | xargs exiv2 -pa --grep DateTimeOriginal/i | sort -i -k 5,10                  > /tmp/all.txt
795 rmills@rmillsmbp:~/Pictures/2017 $ diff /tmp/all.txt /tmp/unique.txt
338d337
< ./HDR/dsc_3996.jpg    Exif.Photo.DateTimeOriginal                  Ascii      20  2017:05:14 11:39:24
1458d1456
< ./Yorkshire/DSC_5176.jpg  Exif.Photo.DateTimeOriginal                  Ascii      20  2017:08:01 12:51:37
1471d1468
< ./Yorkshire/DSC_5188.jpg  Exif.Photo.DateTimeOriginal                  Ascii      20  2017:08:01 13:11:25
803 rmills@rmillsmbp:~/Pictures/2017 $ 

This magic runs on my machine in seconds. Once you know the duplicates, you could convert all but one to a link to save storage.

As always, please back up your library before starting to mess with your valuable images.

from exiv2.

keybraker avatar keybraker commented on May 24, 2024

I managed to cleanup my library by calling a system("cp dir dir") function which doesn't copy already duplicate files :).
The only data I need for my project is basically DateTimeOriginal and this is the implementation I want to do, because now I only support jpeg photos.

from exiv2.

Related Issues (20)

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.