How to synchronize metadata and file names between darktable and other photo/metadata editors?

I do step #1&#4 at the same time(first). I use Rapid Photo Downloader to do that. It has flexible rules and will probably support whatever you need. You can use it to add metadata(tags/keywords/etc) or you can do that in a later step.

I then import into darktable and do my culling there. Darktable is not great for culling so many people cull before they import into darktable using something like geeqie, digikam or similiar.

I use darktable to assign tags and other metadata and have not found it to be restrictive, it just has a learning curve. That being said, you could certainly do it in another program if you wish.

#7 is where you are going to have issues. This is true of pretty much any of the database oriented solutions though. The idea is that the source filename shouldn’t matter. It is sort of a fundamental concept and if you don’t agree with it you might be looking at the wrong kind of solution for your needs.

Once again, this is how these types of programs are intended to work. It sounds like you are looking for more of a traditional file-based workflow, that is not really what darktable is about.

That being said, if you don’t have a specific workflow you are accustomed to, it might be worth giving it a shot. Many people find there are a lot of benefits to an integrated, non-destructive workflow. It isn’t for everyone though.

I think both @dalto and I keep poking at the file renaming part of this because it isn’t clear what is gained by renaming the file so far into the workflow. I’d personally think you gain nothing by renaming any time after initial import and before “final” export. But I’d be happy to learn why it is important.

Perhaps you want to look at a more fully featured DAM, such as digiKam.

The jabs at darktable are not appreciated and will not make anyone more likely to answer your questions nor add features; in fact, it is likely the opposite.

Further, open source does not mean support every possible option. In the same vein, it doesn’t do exactly what I want it to does not equate to my way or the highway.

2 Likes
  1. Import the folder again using the tools at your top left of lighttable view.

  2. Yes its very annoying and not helpful for a multi tool workflow. I believe its because dt store tool settings etc in the xmp files not just regular metadata. These tool settings might then conflict with various file structures.

Exiftool is your best bet at managing these issues.

It’s really less about “my way or the highway” and more about not spending time focusing on this particular feature as the dev team might not see it as a priority.

On that note, let’s look at solving your problem. I think we’re roughly looking at how to rename files based on exif data and some other provided information.

Exiftool is a very capable program for doing this, but that capability does come with the caveat that you’ll likely need to read the manual. On the plus side, we might be able to work out an answer for you together, so you’re not really alone! :slight_smile:

@Elle has also written a bit more detailed information about using it on her website here:

Maybe some stuff there can be helpful for you?

If you had a more concrete example of what you might want to rename files as, we could start figuring out a good exiftool command to accomplish what you need. Do you have something that might work as a good example for us to work with?

Oh, also, what OS are you using? I ask because there are some awesome tools on linux for renaming files quickly and easily with advanced replace options (regular expressions using the perl rename command). On windows it might still be usable, but might require the use of something like cygwin or WSL (Windows subsystem for Linux). I’d have to look around for a good windows option as I normally just use cygwin when I’m on windows to maintain my sanity. :wink:

I use a freeware app called Bulk Rename Utility. It has a CLI counterpart.

1 Like

For exiftool on windows, you can make your command name the file name of the .exe file, then drag and drop files on to the exe.

I tag my images within darktable with the support of some lua scripts from here:

1 Like

I have done quite a bit of testing on how darktable and digikam play together. Like mentioned before, they use the same naming convention for xmp files and digikam can be configured to write metadata to xmp sidecars only. There are some subtle differences to how certain kinds of metadata is handled, e.g. color flags.

Yes, see https://redmine.darktable.org/issues/12304 for example. The only workaround I could find was to use darktable with a :memory: library (i.e. darktable --library :memory: . or change the config file). That way, starting darktable takes a bit longer, but when working with not-too-large folders it is acceptable for me.

For the other way around, changing metadata in darktable and having digikam reload it automatically, there are also some bugs (c.f. 397340 – Update image file timestamps if metadata is written to sidecar file [patch] 39833 – Kmail crashed after notification of new mail), which should be fixed in the upcoming digikam 6.0.0. :slight_smile:

In my opinion, the situation is still far from ideal, but when being careful it should be quite possible to use digikam for culling, organizing and managing descriptions/tags and darktable for editing.

1 Like

I do the first four steps in digikam since its version 6.0.0(which is still in beta). I used to use RPD for import, rename and initial sorting and Geeqie for initial culling but now since digiKam improved a lot and got way faster I do everything in there. I do prefer darktable over digikam for RAW processing though.

1 Like

Thank you all for your replies. I will answer many of them here, in this one post.

I have tried using Bulk Rename Utility. It is my go-to file renaming utility. However, I ran into a wall when it came to sidecar files. I did some research and the BRU author simply discounts this as an issue to be dealt with. So that’s out.

I am on Windows 10. Sorry, I should have mentioned that.

I am most definitely NOT merely interested in renaming files. I can do that with BRU. I am interested in synchronizing metadata and any file name changes, as stated in the subject of this original post.

I don’t rightly care whether you think I should be renaming my files after they have been imported into darktable. I want to be able to do that. If I have to delete all the files from darktable’s database and reimport every single one of them every day, I don’t really care, as long as all that metadata is stored in the files or sidecar files which darktable will read upon re-import.

I will take a look at the Lua scripts. However, I am not really interested in learning yet another scripting language just for one program. In the end, I would almost rather just develop my own Java program to do what I want, using one of the many ExifTool wrapper libraries for Java. There is really only a certain number of things that I want to do, so it would not be like completely rewriting XnView in Java. It would be more like writing a slightly more complicated bash script to run ExifTool with some conditionals thrown in for different file name formats.

I just wanted to know if there was something already available. However, it appears that there is not.

Digikam and exiftool are available on Windows. Both tools can rename files based on EXIF information. Digikam is graphical versus exiftool which is a command line interface only.
I don’t import to darktable at all. All I do is just open a raw I want to develop with darktable (from digikam). All tagging, sorting, etc. done in digikam. Both digikam and darktable set to write to XMP sidecars. Works a charm.

2 Likes

Bingo! You are a winner!

This is the exact kind of answer I was looking for. Plus, Digikam is free and open source.

It’s funny how the only way to get an answer on the internet is to state that the answer doesn’t exist.

So, if Digikam writes to an .XMP file, then I open the associated image file in darktable, does darktable use the exact same .XMP file?

I’m gonna try it out myself. But, if that’s what you are saying, then this will be perfect.

Or you could state your needs clearly and concisely, then answer questions that others may have to clarify the question at hand…

4 Likes

Um… I did. Other people just didn’t like the question I was asking. Stop being a jerk. The internet’s got enough people like you already.

Please stay friendly!

Tell that to the person who was a jerk.

Well, I did that two posts above

2 Likes

darktable and digikam do share XMP files in my case.
digikam 5.9.0 or earlier versions won’t detect any changes in XMP sidecar automatically but starting from the version 6.0.0 it will be detecting changes on startup

1 Like

Sorry. Getting updates via email. Couldn’t see posts not to me.

Sorry to get so pissy but, I’ve been online since before the internet, I’m a technical writer. I’ve been asking and answering very specific questions since before some of these people were born. 999 times out of 1000, no matter how specific of a question I ask, it is not one that most dudes on the internet want to answer. But they want their imaginary internet points for posting something… anything. So they tell me I’m asking the wrong question. They tell me they need to know everything around the question so they can tell me I’m wrong about that. If I act even the slightest bit miffed that everyone wants to waste my time (and the time of everyone else in the world who may end up with the same question) by insisting that I should have a different question, then I inevitably get some jerk insisting that I didn’t ask a clear question. Just because you (they) can’t grasp the concept of someone doing something different from what you (they) always do, does NOT mean the question wasn’t clear.

Why do I keep trying? Because Hope springs frikkin’ eternal. Because I am desperate to find a way to manage and edit my photos without paying Adobe a fortune. So, I sheepishly slog my way into yet another forum, full of devotees of yet another open source program and do my absolute best to write a question that addresses my issue, and only that issue (so that I can avoid explaining and re-explaining irrelevant things to a bunch of karma whores). But… surprise SURPRISE! Karma whore does as karma whore is!

I finally call someone on their bullshit. A war ensues because, “How dare you call out our cherished karma whore queen!” And then I get banned from the forum.

Sometimes… If I am very, very lucky; Someone with no vested interest in proving that the program, supposedly supported by the forum, is the best thing since wheat grains (let alone sliced bread) will explain how they get around the problem by accepting that there are other forms of grain besides wheat and they only use the program for certain strengths, skipping over the problems by using some other program.

So THAT’S why I keep trying.

Have a blessed day!

Perhaps I should just send this to Lewis Black.

Awesome! Thank you!