Skip to main content

EXIF tagger for CameraHub

Project description

CameraHub Tagger

CameraHub Tagger is a companion command-line app for CameraHub to tag JPG scans of negatives with EXIF metadata from the CameraHub API. This means you can organise your film scans in a digital photo management app with full metadata.

To use CameraHub Tagger, you must already have entered your cameras, lenses, films and negatives into CameraHub. When you scan your negatives, name them consistently like {FILM}-{FRAME}-IMG0001.jpg (for example 45-12-IMG0001.jpg is frame 12 on film 45).

Run CameraHub Tagger in the same directory. CameraHub Tagger will attempt to match the JPGs with the negatives by using the filename (it will ask you if it can't figure it out). It will then generate a unique ID for that scanned JPG to tie it conclusively to the negative. Once the link is made, CameraHub Tagger will retrieve all data about that negative, film, lens and camera and use it to generate EXIF metadata, the same as digital cameras do. It is safe to run CameraHub Tagger multiple times on the same files, as only changed tags are written.

When your images have been tagged, any digital photo app will read and display these tags in the same way as digital photos.

Installation

Install from PyPI with Pip:

pip install camerahub-tagger

This installs a tagger binary in your $PATH.

Usage

tagger [-h] [-r] [-a] [-y] [-d] [-f FILE] [-p PROFILE]

-h --help

Display help message and exit

-r --recursive

Search for scans recursively from current directory

-a --auto

Don't prompt user to identify scans, only guess based on filename

-y --yes

Accept all changes without confirmation

-d --dry-run

Don't write any tags to image files

-f --file FILE

Image file to be tagged. If not supplied, tag everything in the current directory.

-p --profile PROFILE

CameraHub connection profile. Default: prod.

Config

CameraHub Tagger needs some basic connection details to connect to CameraHub. On first run, it will ask for credentials for CameraHub and save them for future use.

If you need multiple profiles (e.g. if you have multiple users, or you need to connect to a development instance of CameraHub) you can configure the extra profiles manually by editing ~/camerahub.ini and adding more blocks.

The names of each profile are arbitrary, but CameraHub Tagger will automatically use the prod profile unless you override it with the --profile option. Here's an example:

[prod]
server = https://camerahub.info/api
username = anseladams
password = yosemite

[dev]
server = https://dev.camerahub.info/api
username = annieleibovitz
password = johnandyoko

[local]
server = http://127.0.0.1:8000/api
username = admin
password = admin

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

camerahub_tagger-0.2.3.tar.gz (7.1 kB view details)

Uploaded Source

Built Distribution

camerahub_tagger-0.2.3-py3-none-any.whl (8.9 kB view details)

Uploaded Python 3

File details

Details for the file camerahub_tagger-0.2.3.tar.gz.

File metadata

  • Download URL: camerahub_tagger-0.2.3.tar.gz
  • Upload date:
  • Size: 7.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.10.11 Linux/5.15.0-1035-azure

File hashes

Hashes for camerahub_tagger-0.2.3.tar.gz
Algorithm Hash digest
SHA256 71a617911ff3a86912f7640807d965b304dd02c6d3ab743af3ca7dbcc8d10dbb
MD5 2e3c586eba579f816d2ce47c9e2c0bc2
BLAKE2b-256 2f56cb8b61cbfa15518a902e2d84d616d9c0e1d6c1445d9d6ba41e16ac6889e8

See more details on using hashes here.

File details

Details for the file camerahub_tagger-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: camerahub_tagger-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 8.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.10.11 Linux/5.15.0-1035-azure

File hashes

Hashes for camerahub_tagger-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 ca709b7979c58e936fa6735162cd67cd112a4848010564cfcfd3e26193a5e063
MD5 a732c6b74397b867b011731f72469336
BLAKE2b-256 1d927ea35bd8675ec45fc3e6b1aa00fc9aeeb174e0a6b0f76b0bc0a2ea0518cb

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page