Skip to main content

⚠️ Please note that this topic or post has been archived. The information contained here may no longer be accurate or up-to-date. ⚠️

Put images to collection with SQL outside C1?

Comments

17 comments

  • Walter Rowe
    Moderator
    Top Commenter

    I would discourage writing to the SQLite database. Open support cases for specific operations that are slow. Capture One is aware there are efficiencies to be made to the schemas, indexes, views, data model. Best to not insert yourself in the middle and risk contaminating your database with incorrect changes.

    0
  • RobiWan

    Normally, I agree with you. It is never advisable to write to the database outside of the application.
    But to be honest, I'm tired of opening tickets and getting the answer "we don't have a solution for that" or "the database needs to be redesigned for that", and I've been doing this for several years. I know that something like this can't be done in a week, but you should notice something after 2-3 years at the latest.

    I also suggested 2-3 things in small steps here in the forum to bring about the changes. Unfortunately without any response from Capture One. In the meantime, I have accepted that the catalog functionality has absolutely no priority. There are also other useful things in the editing area that other users suggest. So I am simply looking for a solution that works for me.
    I'm not worried about a corrupt database, as I always have several backups of it. 

    So if you have an idea how I can realize it with SQL, feel free to post it here or let me know in another way. I don't have to share the solution with others. I am primarily looking for a solution to my problem. 

     

    0
  • BeO
    Top Commenter

    I don't know if it is possible with your catalog having 240000 images, but did you consider using the "Select by filename list" functionality from the Select menu?

     

    0
  • Walter Rowe
    Moderator
    Top Commenter

    Sadly you are on Windows and scripting is not available. On macOS it would be easy to query the catalog for 5-star images and add them to a collection via AppleScript.

    0
  • RobiWan

    BeO -Unfortunately, that doesn't work. C1 only expects the file name and not the complete path. I have a lot of pictures that have the same file name because I don't rename them. They are all in different directories

    Walter Rowe - That is the point. I have also asked several times for a scripting interface for Windows. Always the same answers "We don't have any resources" or "It's not possible under Windows" 
    I'm certainly not going to spend 5000-6000 EUR for a Mac just because C1 runs better under OSX than under Windows.
    And I think we shouldn't continue this discussion, otherwise I'll just get upset :(
    Maybe the rumors will come true and the software will disappear from the market. Then I'll have no choice but to go to Adobe, even if I don't like the results.

    I really like C1 results, but I hate cataloging under C1.

     

    0
  • BeO
    Top Commenter

    If they would fix the regression defect they have introduced probably in version 16 which destroys the drag&drop functionality from external applications in the Windows version

    https://support.captureone.com/hc/en-us/community/posts/12947780188317-Drag-Drop-files-from-Explorer-or-DAM-onto-a-session-album-no-longer-works-in-v23

    then an external catalog/DAM (e.g. digikam) together with C1 sessions would maybe be a better workflow than a C1 catalog with 240k images.

    0
  • Eric Valk

    This discussion brings to mind some ideas that may be useful to RobiWan   although not much use to me as I am using a Mac Studio and am sufficiently satisfied with the C1 Catalog performance that I'm not tempted to wxpore altetnatives.

    1.  It was recently mentioned that some users just have one very large session that includes their entire image collection

    2.In the last years of Aperture there was a utility that would take a selected image from the Aperture catalog, and put it into a Capture One session. When finished editting in CaptureOne, the utility would copy the final result back into the the Aperture Catalog, and it would also copy the image's COS file into some free form Aperture Metadata field - these are the CaptureOne settings for the image. I can't remember how Metadata was handled.

    This round trip could be repeated many times, as on the later trips the the image's COS information would be copied into the capture One session (as the original was already there) and editting could resume where it left off.

    3. In a C1 session the database and other internals are not hidden by the Catalog file structure. There are OS folders named Cache, Proxies, Thumbnails and Settings. The Settings folder has one *.cos file per image, and if you open this with a text editor you can see a list of Capture One settings.

    In Proxies there is one *.cof and one *.cop file per image. I think the *.cop might be the preview, not clear about the *.cof file, possibly the C1 Metadata.

    0
  • BeO
    Top Commenter

    Hi Eric Valk,

    1. A few thousand images in the Capture folder or as Favorites and the performance slows down quite a bit. I actually do the searching in my C1 catalog and the all editing in a C1 session. I use the system folders and a very small number of session albums in a session, that is working fine. 

    3. And the settings also contain the .comask file for the layers/masks

    btw., funny experiment: take a .cof file, change the extension to .jpg and open it with any image viewer.

    0
  • RobiWan

    Hi,

    I have found my error and fixed it.
    Now I can add images to a collection and delete them from there without any problems.

    On this occasion. Querying a large number of images in C1 itself can take several minutes. With SQL it is 2 second :D

     

     

    0
  • Marcin Mrzygłocki
    Top Commenter

    A very interesting topic to me as well, as I have a very clear plan on creating "subsessions" to speed up work - instead of using the main session, which can take minutes to load and frequently freezes, hardlink selected files to another folder and create new session file from script. The problem is, sometimes I will need to add entries before main session will have images loaded; any idea what ZIMAGEUUID is? Everything else seems to be taken from EXIF or using some default values, this UUID seems to slip my understanding.

    Anyone else looking at SQLite? 😁

    0
  • Walter Rowe
    Moderator
    Top Commenter

    Sessions and Catalogs work entirely differently.

    0
  • RobiWan

    Marcin Mrzygłocki
    "The problem is, sometimes I will need to add entries before main session will have images loaded;"

    I never do anything like that. I'm primarily interested in getting into my workflow quickly and doing as little as possible outside of C1.
    I've also seen the ZIMAGEUUID, but I don't think C1 works with it. Maybe if they do something from the application, but we won't find out anyway.

    Walter Rowe
    They're not all that different. At least not when it comes to the underlying database.

    1
  • Walter Rowe
    Moderator
    Top Commenter

    Sessions store no metadata or adjustments in the database. Catalogs store them ONLY in the database.

    0
  • Marcin Mrzygłocki
    Top Commenter

    Walter Rowe

    Sessions store no metadata or adjustments in the database.

    Correction: no adjustments. EXIF is still saved. I wonder, why this duplication of COSes, especially as this would be around half of cosessiondb (the other half would be variant info), but heck this is what I see... No problem recreating this manually, only UUID seems to be risky. I will have to see anyway, what is being written right after import, when C1P only knows the list of files, but did not generate previews or sth (which takes several hours).

    RobiWan

    I never do anything like that. I'm primarily interested in getting into my workflow quickly and doing as little as possible outside of C1.

    My intent is quite reverse - I want to do as much outside as possible; if I get photo orders, I don't want to start C1P, wait for everything to load, create album, search for photos chosen by client... no, I want to have only the chosen photos in session and client info as albums, pulled automatically from database with orders. This is why I tinker with SQLite.

    0
  • RobiWan

    Marcin Mrzygłocki
    where are you from? Poland maybe? :D Marcin and "RZ" looks like

    ZIMAGEUUID exists exaclty 1 time in the database. I think it's means what the name says - UUID for eeach image, but not used. (You should eventually search for it in Cache or something else directiories. Maybe C1 used it with session.)

    If you are done - you can try to generate new one (PowerShell New-Guid, but I think you know how). Or another way change one exiting UUID to a new one and see if you are someting missing.
    Do you really want to enter all the metadata into the database yourself? How many images do you get once?

    In any case, it is an interesting approach. I'm not sure if you're allowed to share such code here - Walter Rowe - what do you think?
    If it is allowed, we can exchange things if you like.

     

    0
  • Marcin Mrzygłocki
    Top Commenter

    RobiWan

    where are you from? Poland maybe? :D Marcin and "RZ" looks like

    Right on point!

    (You should eventually search for it in Cache or something else directiories. Maybe C1 used it with session.)

    I think I found its use - ZIMAGEUUID appears in cos files at the top, ZVARIANTUUID identifies variants of the same image and is added to file names for thumbnails.

    0
  • RobiWan

    This means what I wrote UUID will be generated when an image in inserted into Catalog or session.

    (All this is much easier on Mac, only because Capture One refuses to provide a scripting interface on Windows)

    0

Post is closed for comments.