Documentation

Understanding the concepts

Exact or visual duplicate, master, confidence, companions, weak volumes, detected moves.

Source, volume, catalog

  • A source is a disk or folder you have designated for analysis. The app finds it again through an authorization bookmark, even if the disk is mounted at a different location.
  • A volume is a disk or a partition. It can hold only one source.
  • The catalog is the local database where the app records everything it knows: files, fingerprints, metadata, groups, decisions, settings, plans, journal, history. Your photos themselves are never copied into the catalog.

Exact duplicate

Two files are exact duplicates when their content is identical byte for byte, which the app establishes through their full SHA-256 fingerprint. To avoid reading everything, it works in steps:

  1. only files of the same size can be identical;
  2. among them, a partial fingerprint (a few portions of the file) quickly rules out the ones that differ;
  3. only the remaining candidates are read in full to compute the SHA-256.

Only the full SHA-256 makes an exact duplicate. A candidate whose full fingerprint has not yet been computed is shown as “Doublon exact probable, hash complet requis” (Probable exact duplicate, full hash required), never as exact. Name, date or size alone are never enough.

An exact duplicate shows an established confidence: “Contenu identique · 100 % · SHA-256 complet vérifié” (Identical content · 100% · full SHA-256 verified).

Probable duplicates

Two images are probable duplicates when they look so alike that they are probably the same photograph, without being identical byte for byte: a re-saved JPEG, a resized version, a black-and-white conversion.

For each image, the app computes two visual fingerprints (dHash and pHash) and matches two images only if both fingerprints are close (at most 10 bits of difference out of 64). This double criterion is deliberately strict: when in doubt, the app would rather miss a match than invent one.

Measured limits to be aware of:

  • cropping is not recognized;
  • rotation is not recognized;
  • strong contrast variations can cause a match to be missed.

Several scans of the same negative, cropped differently, will therefore generally not be grouped in v1.0.

A probable duplicate shows an estimated confidence (“Probablement la même photographie · 90 % estimé” (Probably the same photograph · 90% estimated)): it is a proposal to confirm in the Centre de revue (Review Center).

Master

The master of a group is the copy to keep first, the “best” version. The app recommends one according to a rule scored out of 100 (resolution, bit depth, format, metadata, color profile, size, capture date) and explains its choice criterion by criterion. You can choose another one (“Choisir comme master” (Choose as master)).

The master’s score is not a probability: it is the result of a rule. Its level (“Recommandation nette” (Clear recommendation), “Recommandation à confirmer, écart faible” (Recommendation to confirm, small gap), “Égalité stricte, master à confirmer” (Exact tie, master to confirm), “Contenu identique, tous les exemplaires se valent” (Identical content, all copies are equivalent)) tells you whether to look closely.

Confidence

Every proposal from the app shows its confidence. There are two kinds, which the interface never mixes:

KindAppearanceMeaning
Establishedchecked seal, without the word “estimé” (estimated)A verified fact: identical content by SHA-256
Estimatedcolored badge, always followed by “estimé” (estimated)An inference, with a qualifier: “Même négatif” (Same negative) (≥ 95%), “Probablement la même photographie” (Probably the same photograph) (≥ 80%), “Possiblement liées” (Possibly related) (below)

Companions (sidecars, XMP, RAW+JPEG)

A companion is a file that accompanies a main file and only makes sense with it, typically the XMP file in which Lightroom or Capture One saves your edits next to a RAW (IMG_0042.CR2 and IMG_0042.xmp, or IMG_0042.CR2.xmp).

Moving a RAW without its XMP would lose all the editing work, and no fingerprint check would detect it, since each file, taken alone, would be copied perfectly. The app therefore recognizes these associations (same folder, same base name) and treats the main file and its companions as one unit during a transfer: they go together or not at all, whatever the collision strategy. When renaming, the companion follows the new name of its main file.

Extensions recognized as companions: xmp, aae, thm, pp3, dop, on1, cos. Two conditions must be met for them to be associated with their main file during an analysis:

  • they must be inventoried: check “XMP” among the “Optionnels” (Optional) types in the Assistant de scan (Scan Assistant), and add any other extensions you want in “Autre extension” (Other extension);
  • the “Extraction des métadonnées” (Metadata extraction) analysis must be checked: the associations are established during this phase.

Strong volumes and weak volumes

To recognize a file from one analysis to the next, the app relies on what the file system guarantees.

  • A strong volume (APFS, HFS+) provides reliable file identifiers.
  • A weak volume (typically exFAT or FAT, common on disks and cards shared with Windows, or an unknown format) does not guarantee them. On such a volume, the app recognizes files by their path and, as a last resort, by their content.

Practical consequences on a weak volume: a rename or move made outside the app requires a bit more work at the next analysis (see below), and batch renaming is impossible there.

Detected moves

If you rename or move files outside the app (in the Finder, for example), the next analysis of the source tries to recognize them rather than concluding “one file deleted, one new file”:

  • on a strong volume, by the file identifier;
  • on a weak volume, by content: a missing file whose SHA-256 fingerprint the app knows is matched with a newcomer that has the same fingerprint. Your review decisions follow it.

Limits:

  • a missing file whose full fingerprint the app did not know is not matched automatically. If exactly one new file has the same name, the same size and the same date, the app proposes it to you in “À revoir” (To review) (“Déplacement proposé” (Proposed move)): nothing is linked until you have chosen “Rattacher à l’ancien” (Link to the old one) or “Garder séparés” (Keep separate). Since the content has not been compared, check before linking; this choice is final;
  • for a disk to always be recognized by content, check “Empreinte complète” (Full fingerprint) under its source in the Assistant de scan: the next analysis will read every file in full (much longer), and from then on every move will be matched automatically;
  • an ambiguous match (several possible candidates) is never resolved automatically: it is flagged “À revoir” (To review).

Recoverable space and freed space

  • Recoverable space: the space taken up by the extra copies, or by the sources of a move as long as the Trash has not been emptied. Nothing has been freed yet.
  • Freed space: the bytes actually permanently deleted.

Moving files to the Trash frees no space until you empty it; the app never empties it.

Plan, simulation (dry run), journal

  • A plan is the exact list of operations a transfer will perform, computed before any write.
  • A simulation (dry run) is a plan that cannot be executed. The real plan derived from it is compared to it by its fingerprint: if identical, it will do exactly what the simulation announced.
  • The transaction journal records each operation on a file before performing it, then its result. It is what makes it possible to resume without error after a failure.