Project

General

Profile

Feature #8760

Import pictures to folders by date

Added by Shmuel Levine about 7 years ago.

Status:
Closed: won't fix
Priority:
Low
Assignee:
-
Category:
General
Target version:
-
Start date:
06/06/2012
Due date:
% Done:

0%

Estimated time:
Affected Version:
System:
bitness:
64-bit
hardware architecture:
amd64/x86

Description

I'd like to propose an input option, that would save imported photos in subfolders based on the date (similar to Adobe Lightroom). The folder structure could be one of a couple possibilities (if this could be configurable also, that would be a plus:

(option #1)

Pictures <== This is the selected parent import folder
./2012
./2012/2012-01-05
./2012/2012-01-15
./2012/2012-02-25
./2012/2012-05-09

(option #2)
./2012
./2012/01
./2012/01/05
./2012/01/15
./2012/02
./2012/02/25
./2012/05
./2012/05/09

Thoughts:
- The required folder structure could be determined ahead of import by means of a preliminary pass through the import folder and reading EXIF data.
- I'm not sure why we would necessarily need to know the import folder structure ahead of time. It could just as well be done in a single operation- read EXIF data for date, check if folder exists and create if necessary, copy the file to the given location.
- An alternate approach would be to first import the files to a [temporary] folder. A separate thread would then read the EXIF data, create folders as req'd and move the files. It seems likely that this will have some performance benefits over reading EXIF data while on the camera, in that the latter approach copies all the files at once, without interrupting between files to read data. The former operation is, essentially, a single copy operation over a list of files, with a second thread (or process -- I'm very new to Linux and not sure of the way that things are done here) which will sort by folder.
- The two processes could either be run in parallel with the copying process throwing an event after each file is moved to the temp. folder, and the sorting/moving process registered as a handler.

I might possibly be able to assist with this, but not sure when I can get to it.

Any thoughts/feedback would be greatly appreciated

-Michael

CR2proc (1023 Bytes) CR2proc James C. McPherson, 06/10/2012 12:34 PM

History

#1 Updated by James C. McPherson about 7 years ago

  • Status changed from New to Triaged

This sounds likes to me like a file management issue rather than a darktable issue per se.

As such, I think we should leave this sort of decision to the user to organise, in their filesystem - there are a large number of permutations which are entirely reasonable for any one person, attempting to code support for those would in my opinion provide too little return for the investment.

Here's what I do with my image files.

All files are copies off the camera/removable media into a directory named after the series that the camera has assigned. In my case, I've got 100CANON, 101CANON and now 102CANON.
I have a script which renames those files to use a date/time system, and creates symlinks from the 10xCANON directory into my darktable hierarchy.

The darktable hierarchy directories are

darktable/
darktable/filmrolls
darktable/filmrolls/2006
darktable/filmrolls/2007
...
darktable/filmrolls/2012

Under each of those per-year directories I have a per-month directory too:

2010/2010-01
2010/2010-02
...
2010/2010-11
2010/2010-12

When I want to import new files, I simply navigate to the per-month subdir I'm interested in (which is almost always the current month) and click 'import'.

#2 Updated by James C. McPherson about 7 years ago

If you're interested, I've attached a copy of my script to this ticket.

#3 Updated by Shmuel Levine about 7 years ago

  • % Done changed from 0 to 20

James,
I see your point and in retrospect, agree with your point more than mine.

I think that since my own experience has been with Windows and Adobe Lightroom, that I'm just personally used to the application managing (pictures in) my file system for me. In that case, it was part of the import process, and I didn't have to think about it.

Thanks for the script- it's really fantastic.

#4 Updated by Simon Spannagel about 7 years ago

  • % Done changed from 20 to 0
  • Status changed from Triaged to Closed: won't fix

Seems to be solved.
Set status to "won't fix" since it's not a darktable issue.

Also available in: Atom PDF

Go to top