Skip to main content
Vixlo 0.1

The import-state chip

Beside the file name in the header above the photograph sits a small bordered label: New, Previously imported or Possible duplicate. It is the frame's import state. This page says what each word means, what Vixlo 0.1 actually puts there, and what to do when you wonder whether a photograph is in your library twice.

Where it is​

Left to right, the header runs: the state pill, the file name, then this chip, then a scene label that macOS put on the picture, once the search scan has read the frame, and the session and its day. As the window narrows the header puts its phrases down one at a time, and the chip is the fourth to go, after the app's own sentence, the scene and the session, and before the pill's word. On a narrow window it is simply not there. Widen the window and it comes back.

The header above the photograph, with the New chip beside the file name

The three words​

  • New means the library did not hold this photograph before it came in.
  • Previously imported means the library already held it. Vixlo recognises a photograph by its content, whatever it is called.
  • Possible duplicate means it looks like a photograph the library already holds.

The import review uses the same ideas as counts, before anything is copied: NEW, ALREADY IMPORTED and DUPLICATES HELD. Importing from a card or a folder walks through that sheet.

What Vixlo 0.1 shows​

In Vixlo 0.1

In a library you made yourself, every frame reads New, including a frame that looks exactly like another. The other two words are in the app, but 0.1 gives them to no frame in such a library: the header takes the import state from a table that a library you make yourself never fills in, so each frame falls back to New. Treat New as saying nothing about whether a photograph is a duplicate.

The one place you will see the other words is the sample frames in Earlier library · personal, one of the three Earlier library rows that come with the app. There some sample frames read Previously imported and some Possible duplicate; they are part of the sample, not a finding about your photographs.

Duplicates at import​

The check that does work happens before a file becomes a frame. The import review looks at every file it found, and it counts files, not frames: a RAW+JPEG pair is one frame but two files.

  • A file the library already holds is counted under ALREADY IMPORTED and is not copied again. Vixlo decides by content, never by the file's name or its place on the card. It also checks that the library's copy is really there: a file inside the Working library folder shown on the review, still the same size and the same at its first and last megabyte. A frame whose file lies anywhere else, still on the card, in some other folder (one you chose for an earlier import, say), or gone or replaced since, is not counted as imported.
  • Files on the card that match each other byte for byte are counted under DUPLICATES HELD: one is kept and the rest are held back.

Neither kind becomes a second frame, so there is nothing to cull twice. A file whose copy is not in the library is offered under NEW and copied in. If the library already has a frame with that content, Continue to culling points that frame at the new copy instead of adding another, and its decision, rating, label, notes and group stay as they were. What an import copies has the rest of what a second import does.

Two different photographs that share a file name, one from each of two cameras, say, are both new and both are copied: the second lands beside the first under the next free number, as DSCF0100-2.RAF, and nothing already in the library is overwritten or renamed. One photograph keeps one set of names, whatever its extensions: a RAW+JPEG pair is never split across two numbers, and two photographs never share a name's stem, because the XMP file that holds a frame's decision is named by the stem alone. So a JPEG-only body's DSCF0100.JPG does not land beside another body's DSCF0100.RAF already in the library; it is copied as DSCF0100-2.JPG.

A library keeps its own copy of what it imports, so a card you already copied into a different library scans as new in this one; A card Vixlo does not see explains the counts.

Importing a card again​

A card formatted in the camera and shot again comes back with the same file names in the same places. Vixlo tells photographs by what is in them, so the new photographs are new frames, never mistaken for the first card's.

Choose a backup and the files the library already holds are part of the import. Start import counts them, and each is checked in the library and copied to the backup. So a card imported once without a backup can be imported again with one, and ends safe to format once every file on it has its two copies. Without a backup those files are not counted.

An earlier version of Vixlo sometimes kept no record of what a frame's photograph was. Such a frame is matched again only when its own file agrees: capture time, camera, settings and name. If the card in the reader is a different card at the same place, the two are not merged. The card's photographs come in as new frames, and the old frame keeps your decisions and still points at the card. The review shows a line titled Frames that do not match this card, and the summary says 1 frame an earlier version of Vixlo catalogued on this card does not match the photograph now at its place (capture time, camera and settings), so it was not merged: it keeps your decisions and still points at the card. It uses the plural when there are several.

Look-alikes after import​

Photographs that look alike but are not the same file arrive as ordinary frames: a burst, say, or the same scene shot twice. Vixlo gathers look-alikes by how the pictures look, not by the chip. In Frames they stack behind one cover, the Similar photos slider sets how alike they must be, and the Stack Resolver lets you look through a stack and Take the frame you want. See Frames and Organise and filter. A bracket or a panorama is kept together as a set instead; see Sets kept whole.

Search has no term for the import state. The nearest is group:, which matches the label the import filed a frame under; see The import label.