Skip to main content

libgphoto2 bindings with an interface that strives to be idiomatic

Project description

Python bindings for libgphoto2 with an interface that strives to be idiomatic. In contrast to other bindings for Python, gphoto2-cffi hides most of the lower-level abstractions and reduces the API surface while still offering access to most of the library’s features.

import gphoto2 as gp

# List all attached cameras that are supported
cams = gp.list_cameras()

# Get a camera instance by specifying a USB bus and device number
my_cam = gp.Camera(bus=4, device=1)

# Get an instance for the first supported camera
my_cam = gp.Camera()
# or
my_cam = next(gp.list_cameras())

# Capture an image to the camera's RAM and get its data
imgdata = my_cam.capture()

# Grab a preview from the camera
previewdata = my_cam.get_preview()

# Get a list of files on the camera
files = tuple(my_cam.list_all_files())

# Iterate over a file's content
with open("image.jpg", "wb") as fp:
    for chunk in my_cam.files[0].iter_data():
        fp.write(chunk)

# Get a configuration value
image_quality = my_cam.config['capturesettings']['imagequality'].value
# Set a configuration value
my_cam.config['capturesettings']['imagequality'].set("JPEG Fine")

Currently only Python 2.7 and 3.4 (CPython and PyPy) are supported, however support for 2.6 and 3.3 is planned for the future.

Requirements

  • libgphoto2 with development headers

  • A working C compiler

  • cffi

Installation

From Source:

$ pip install git+https://github.com/jbaiter/gphoto2-cffi.git

Similar projects

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

gphoto2-cffi-0.2.tar.gz (55.4 kB view details)

Uploaded Source

File details

Details for the file gphoto2-cffi-0.2.tar.gz.

File metadata

  • Download URL: gphoto2-cffi-0.2.tar.gz
  • Upload date:
  • Size: 55.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for gphoto2-cffi-0.2.tar.gz
Algorithm Hash digest
SHA256 f4f60b30b050da2aee5008de0b95b015e6c7e4c94946085b47afad01e6ee4688
MD5 db7e782aecf24fd53e0556c8dfd9d40c
BLAKE2b-256 92225790a12046a704cf2760340c4d455f0d172c249afb0ab55c6b36bdbc8cc6

See more details on using hashes here.

Supported by

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