Skip to main content

CameraComander

A CLI application for creating time-lapse videos using a gphoto2 compatiable camera. So far only tested with a Canon EOS 6D2 and EOS R50 tethered (USB). The application allows you to configure camera settings utilizing a file which makes it easier to reproduce captures. Main function is to capture snapshots and start time lapse recordings, by continuously capturing images at a given interval. The images are saved to a folder and can be used to create a time-lapse videos, e.g. using ffmpeg.

Example settings.yaml

script_settings:
  interval: 10
  frames: 100

camera_settings:
  iso: 100
  aperture: 2.8
  shutter_speed: 1/60
  white_balance: auto

Example Workflow (timelapse)

  1. Connect Camera via USB
  2. Run cameracommander auto_adjust --save-settings to detect camera settings and save them to settings.yaml
  3. Modify settings.yaml to your needs
  4. Run cameracommander timelapse --settings-file path/to/settings.yaml to start a timelapse
  5. Use ffmpeg to create a video from the images

Here is one example result of a timelapse created with this tool without any post processing:

Example

Commands

The CLI provides several commands to interact with the camera. Below are some examples of how to use these commands.

Check Settings

Check the validity of a given settings.yaml file by applying it to the camera.

$ cameracommander check_settings --settings-file path/to/settings.yaml

List Settings

Show all possible camera settings and their keys.

$ cameracommander list_settings

List Available Values

Show all possible setting values for camera settings in the given settings.yaml.

$ cameracommander list_available_values --settings-file path/to/settings.yaml

Snapshot

Create a snapshot using the camera settings in a given settings.yaml.

$ cameracommander snapshot --settings-file path/to/settings.yaml

Timelapse

Start a timelapse using settings in settings.yaml.

$ cameracommander timelapse --settings-file path/to/settings.yaml

Auto Adjust

Take a snapshot with all auto settings and print the used camera settings. Optionally, save the detected settings to settings.yaml.

$ cameracommander auto_adjust [--save-settings] 

How to install

From Source, in a venv

This project uses uv as a package manager. So install it first -> https://docs.astral.sh/uv/getting-started/installation/)

Then:

$ git clone https://github.com/fwarmuth/CameraCommander.git
$ cd CameraCommander
$ uv run cameracommander --help

From PyPi

$ pip install cameracommander
$ cameracommander --help

Metadata

Release files for cameracommander 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cameracommander 0.1.1
File Size Uploaded
cameracommander-0.1.1.tar.gz 393.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cameracommander 0.1.1
File Interpreter ABI Platform
cameracommander-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 401.0 kB

Release files / cameracommander-0.1.1.tar.gz

Download URL cameracommander-0.1.1.tar.gz
Size 393.1 kB
Tags Source
SHA-256 checksum
How to use checksums
348cb622f99e9b723ed6b35c9f40dfd47a90c3ce44ed7bc5886653aaf4159fae
BLAKE2b-256 checksum
How to use checksums
7fe1d9cb72eaf19566bd268170436622888d83012e4671f38610dbe6a54b810d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.4.26

Release files / cameracommander-0.1.1-py3-none-any.whl

Download URL cameracommander-0.1.1-py3-none-any.whl
Size 7.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d651a57dd9e2c2ad8b66646e094c45ac4a3e0a75b1a6ccb107a3002330d19141
BLAKE2b-256 checksum
How to use checksums
24c719bbfe13ed13a24bd205b6627e1334cc5e8b355bd7b0389b2f8530555ce7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.4.26

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page