Is renaming files in Capture folder safe?
I want to rename files using regexes and external databases as source of new filenames; even the first part is not possible in Capture One, so I wonder - how badly would I break session, if I used an own tool to do the renaming? Would I have to fix .cosessiondb as well?
-
You wouldn't have to do anything to the .cosessiondb, but you would still break things. Each raw file in the Capture Folder has at least one corresponding file the .cos file in the Settings subfolder, which has all your edit information in it. If you have used any layers, there will also be a .comask file with masking information in it. So those would have to be renamed to match. I would avoid this if at all possible.
There are corresponding thumbnail and preview files in the Cache subfolder, though Capture One can rebuild those if required.
Ian
Edited to add: my screenshot is from a Mac, not Windows, but the same thing applies.
1 -
Ian Wilson finding and renaming all files to retain consistency is not a problem, can be easily coded. It's the .cosessiondb that worries me, as I'm not sure if the file is well-enough documented to modify it correctly.
@... how do I tell Capture One, which files out of let's say 20k will be renamed? To avoid manually looking for files listed by "dry run" I could pack/unpack everything, buuuut that could take several hours, I imagine.
I prefer instead an ability to assert that moving files will not cause long-term damage to database - long-term meaning that it might expose itself during uncommon edits a long time after I have performed these operations.
0 -
@...
You don't really need to tell Capture One which files will be renamed. In a session (different from a catalog) if you put an image, let's say called 1234.NEF into your Capture folder using Finder, then look in the Capture folder in Capture One you will see the image there. No need to import it, or anything like that.
So, I just tried this.
- Selected an image called 2023-11-15-0450.NEF (that just happens to be my naming convention)
- Packed it as an EIP so it is now 2023-11-15-0450.EIP
- Changed the name in Finder to 2023-11-15-0450 TEST.EIP (without even closing Capture One)
- Looked back at the Capture folder and it still shows the image, but it is now called 2023-11-15-0450 TEST.EIP
- Checked that all the edits are intact - and they are, including crop, exposure, white balance, a radial gradient, etc.
- Unpack it again back to 2023-11-15-0450 TEST.NEF. All is still well.
NB (Very important): NEVER try to do this with a catalog!
Ian
1 -
@... - I was confident that he was using a session because he asked "Would I have to fix .cosessiondb as well?"
Ian
0 -
@...
The original post here doesn't mention session or catalog
Right, I have made this omission, as I never use catalogs and just forget there is such a duality. It's enough to consider that I start working on a portable drive, move it between computers, then drop photos to a HDD, move to another to manage space better, switch drive letters permanently few times a year... While catalogs have been praised in multiple threads for their ability to infuriate users with losing track on a slightest movement.
Ian Wilson 👍 I would be still worried about efficiency of packing/unpacking all files in a session. At least I feel safer now that sessions are flexible enough - I only wonder why are .cosessiondb still relatively big?
I think that renaming files might affect album selections, but I don't think I would create myself any manual albums before cleaning up names.
0 -
Marcin Mrzygłocki - I'm not sure that the .cosessiondb files are big. I've just checked my current session. It has 545 images in it, and the .cosessiondb is 4.7MB, which compares favourably with my raw files that are about 35 MB each, depending on which camera they are from. Or to put it another way, the whole session comes in at 17.9 GB, of which the db file is only 4.7mb, or about 2.6 per cent of the total.
I think that converting to EIP is fairly quick and efficient in a session. (You can't do it directly in a catalog, only if you export originals and pack as EIP.) A lot of session operations are comparatively quick - for instance batch renaming is fast in a session, but quite slow in a catalog, presumably because of the different way the images and adjustments are stored.
Ian
0 -
My most recent session is 1.6TB in total with 237MB .cosessiondb file, so the more I could script outside Capture One, the more efficient my workflow could be - you can imagine the time it would take on external SSD to rewrite 1.6TB of data in place.
I think I sadly missed how EIP would improve - I can handle individual files as easily as the container, so where is the positive effect of "EIPing images", is Capture One hashing EIPs in a way that does not happen with RAW files, making it possible to correct database with reassigning moved files to albums, for example?
Edit: while my .cosessiondb is negligibly small compared to the data it pertains to, this is still a hefty file to load or edit safely.
0 -
@... this is always a single day of a single, continuous event, that might itself last several days.
Count of files to be renamed? Depends on the scope of fixes necessary for a session (I am still writing the whole process, only some steps are working for now), from several hundred to several thousand, rather randomly mixed with the rest. Easy to be coded and have the renaming done in filesystem, my concern is effect on Capture One - I had hopes that someone can list documented downsides like lost album assignments, broken export history, garbage entries in database file increasing its size dramatically... So that I could either discard as "I don't care" or look for solutions on how to fix the problems I will care about - before they would break the session entirely.
Note: automatic renaming covers the whole folder easily, anything inside with write access goes, so any masks, previews, adjustments... are not a bother, just few more lines of code. If I was able to communicate with Capture One instance, I could try messaging the corrections, but there is no API. My only worry is the session itself, understood as currently opaque database, so can we please move our attention to how much I would need to consider in light of its consistency? I don't want to do anything manually, the whole process is going to be automatic - at worst at cost of some features of Capture One.
It is possible that info about selected edits (like manually chosen lens profiles? for example) is stored only within .cosessiondb unless the RAW is packed, so I would have to either forget about making such edits or indeed consider importing for example as EIP permanently, to have that part explicitly attached, whatever happens.
Or maybe I just "brute force" edit the database file, I saw a mention it is an SQLite inside. But that's something that needs to be planned before I run into something deep.
0 -
I got an idea finally, that I should have stated I'm mainly looking for experiences related to creating automatic processes involving Capture One files/sessions, what are the gotchas when modifying files outside of Capture One's control. How far do I need to go into internal workings?
0 -
@..., I can think of these reasons:
- incorrect or ambiguous information received - I have to update/remove parts of filename, that would be otherwise correct (mistypes, abbreviations, communication hiccups)
- images wrongly assigned in series, that I could indeed move manually within Capture, but that would take more time than leaving an instruction for algorithm
- images sparsely mixed in a series (so I can't select files to be renamed and replace names in bulk, as that would break numbering - Capture One allows only appending in such a case)
Such errors might be discovered only after getting an insight like an official summary of event or actually seeing the images (it's considerably faster to just suffix rather than modify the whole name, so I think about applying manually suffixes and then cleaning up names in bulk on filesystem level). The ideal option would be no corrections necessary ever, but that's not doable without taking control of the event, not just being "a photographer".
One more reason for renaming externally:
- batch renaming is not reversible in Capture One (can't be undone), while an external tool can track changes and create a "recovery" list
0 -
To set record straight - names are only factual, what or who is on the photos; having mistakes there might mean sending wrong images or tagging wrong companies. Just... embarrassing incidents.
I do use ratings, so have checked now: Basic_Rating and Color_Tag_Index are both saved in AL section within .cos, whatever AL means.
Of course, you could also bring them into a Capture One session initially for this culling and just use Capture One initially for identifying what rename operations need to be done. Then, close Capture One, delete the session files, do the renames, then open the renamed files as a new session.
I don't have time for culling sadly, the volume is too large, so that's why I try to automate as much as possible. I'm not sure if the other programs can be integrated into such workflows, or are fully manual.
0 -
Batch Rename is somewhat regex-like in its capabilities, made easier in some situations by combining the change required with filtering of some sort.
I can't find anything on flavor supported, so I'm wary a bit.
0
Post is closed for comments.
Comments
12 comments