Skip to main content

PyVCAM

GitHub release GitHub release GitHub License
PyPI release TestPyPI release Python version from PEP 621 TOML
Tests status Average time to resolve an issue Percentage of issues still open

PyVCAM is a Python 3.x wrapper for the PVCAM library.

Installation

The wrapper can be installed using the following command in an environment with python and pip:

pip install PyVCAM

It requires the latest PVCAM to be installed - can be downloaded here.

The binary packages are available for 64-bit Windows and Linux on Intel platform only. For 32-bit or Arm Linux platform it must be complied from the source code. Please follow the instructions for development below.

Examples

The installed package contains just the wrapper. If you want to get an image from the camera right away before writing your own application, PyVCAM repository contains multiple examples, like seq_mode.py or live_mode.py.

Get a local copy of the GitHub repository by downloading the zip archive or cloning it e.g. from git command prompt:

git clone https://github.com/Photometrics/PyVCAM.git PyVCAM

Then switch to the folder with examples and run one:

cd PyVCAM/examples
python seq_mode.py

Some examples show the image from camera in a UI window and require opencv-python or matplotlib packages to be installed.

Development

For troubleshooting or active contribution you may want to install PyVCAM from GitHub.

Prerequisites

  • Cloned repository from GitHub as described in Examples chapter above.
  • A C/C++ compiler is needed to build native source code. On Windows, Visual Studio 2022 was used for testing.
  • The latest PVCAM and PVCAM SDK - both can be downloaded here.

Installation

Use your command prompt to navigate into the directory that contains pyproject.toml file and run:

pip install .

How to use the wrapper

An understanding of PVCAM API is very helpful for understanding PyVCAM.

Create Camera Example

This will create a camera object using the first camera that is found that can then be used to interact with the camera.

from pyvcam import pvc 
from pyvcam.camera import Camera   

pvc.init_pvcam()                   # Initialize PVCAM 
cam = next(Camera.detect_camera()) # Use generator to find first camera
cam.open()                         # Open the camera

Single Image Example

This captures a single image with a 20 ms exposure time and prints the values of the first 5 pixels.

# A camera object named cam has already been created
frame = cam.get_frame(exp_time=20)
print("First five pixels of frame: {}, {}, {}, {}, {}".format(*frame[:5]))

Changing Settings Example

This is an example of how to change some of the settings on the cameras.

cam.clear_mode = "Never"
cam.exp_mode = "Ext Trig Trig First"

The same setting can be done without the strings via predefined constants that are generated from C header pvcam.h:

from pyvcam import constants as const

cam.clear_mode = const.CLEAR_NEVER
cam.exp_mode = const.EXT_TRIG_TRIG_FIRST

Changing Speed Table Settings Example

When changing speed table, set new value to all three properties in this exact order: readout_portspeedgain, otherwise some legacy cameras could end up in invalid state.

cam.readout_port = 0
cam.speed = 0
cam.gain = 1

More information on how to use this wrapper and how it works can be found in docs/PyVCAM.md.

Release files for PyVCAM 2.3.2

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

Source distribution (sdist)

Source distribution for PyVCAM 2.3.2
File Size Uploaded
pyvcam-2.3.2.tar.gz 39.1 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for PyVCAM 2.3.2
File
pyvcam-2.3.2-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
pyvcam-2.3.2-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.24+ x86-64, Linux glibc 2.28+ x86-64 Details
pyvcam-2.3.2-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
pyvcam-2.3.2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.24+ x86-64, Linux glibc 2.28+ x86-64 Details
pyvcam-2.3.2-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
pyvcam-2.3.2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.24+ x86-64, Linux glibc 2.28+ x86-64 Details
pyvcam-2.3.2-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
pyvcam-2.3.2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.24+ x86-64, Linux glibc 2.28+ x86-64 Details
pyvcam-2.3.2-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
pyvcam-2.3.2-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.24+ x86-64, Linux glibc 2.28+ x86-64 Details
pyvcam-2.3.2-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
pyvcam-2.3.2-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.24+ x86-64, Linux glibc 2.28+ x86-64 Details

Total release size: 2.5 MB

Release files / pyvcam-2.3.2.tar.gz

Download URL pyvcam-2.3.2.tar.gz
Size 39.1 kB
Tags Source
SHA-256 checksum
How to use checksums
9be199526db5984430e4aff48e98c642df8b2d61818f921f04aac518c933f9f0
BLAKE2b-256 checksum
How to use checksums
7bc9777f702636241177ef89af5f8c60990533f8cd62304519b3642e442b779e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 3, 2026.

Transparency log

Release files / pyvcam-2.3.2-cp314-cp314-win_amd64.whl

Download URL pyvcam-2.3.2-cp314-cp314-win_amd64.whl
Size 64.1 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
016de692d45619a52ad87d2e66e0a6dae897f9ee96929acde1b94c4aa472431d
BLAKE2b-256 checksum
How to use checksums
b6df759e887dd8d1a9ce232a764d630fb07ef9ebcea13d9c48e5bc90e88d6dca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 3, 2026.

Transparency log

Release files / pyvcam-2.3.2-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL pyvcam-2.3.2-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 348.1 kB
Tags CPython 3.14 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
1c568419615406914ad5dac51b2def6644c0dcb36d5bff0d7dc8bb945b95b28e
BLAKE2b-256 checksum
How to use checksums
91d55fe9610598e9c379a61f5824bd8c6a2719700dfc83533717aba9a59669f4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 3, 2026.

Transparency log

Release files / pyvcam-2.3.2-cp313-cp313-win_amd64.whl

Download URL pyvcam-2.3.2-cp313-cp313-win_amd64.whl
Size 63.4 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
8bebf491af899eee713d497823927b1954a4217293e6f3f955cb983639d2b59b
BLAKE2b-256 checksum
How to use checksums
fb96052151696bc952f323a87eed27d186e4c8681727ad938d68337348b34b2e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 3, 2026.

Transparency log

Release files / pyvcam-2.3.2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL pyvcam-2.3.2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 347.9 kB
Tags CPython 3.13 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
e99e06ed9a529978fec8fed076098c753dc9f60f49b7f8cd150e92a934df87c7
BLAKE2b-256 checksum
How to use checksums
4ea8370d21ba8e9f0377a1c7bb2a560d520077d57f90c3c00724230744ff1222
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 3, 2026.

Transparency log

Release files / pyvcam-2.3.2-cp312-cp312-win_amd64.whl

Download URL pyvcam-2.3.2-cp312-cp312-win_amd64.whl
Size 63.4 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
6edc6684ad9989eed36385808a9e4cebbc702ada58fd2dc0ac0293fa7a5388df
BLAKE2b-256 checksum
How to use checksums
6da58b808d2f97e0d3e2e9f27db67704a4570d9101ed40a7f75d39f021f4a8ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 3, 2026.

Transparency log

Release files / pyvcam-2.3.2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL pyvcam-2.3.2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 347.9 kB
Tags CPython 3.12 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
fd6b53be37ce8d00fdcabff6f504d6868159f884efbffd6375e6188e77710ed7
BLAKE2b-256 checksum
How to use checksums
ebc15c85b0a7ba239363bfd71ea5bdfdedc0d60048e72104d3e33a1ebb23e198
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 3, 2026.

Transparency log

Release files / pyvcam-2.3.2-cp311-cp311-win_amd64.whl

Download URL pyvcam-2.3.2-cp311-cp311-win_amd64.whl
Size 63.3 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
7c45594971792a9bd001701b564e3da1e163fa6f5668cdacc7bc34c389f5f521
BLAKE2b-256 checksum
How to use checksums
2fa3c16f2c8aa3d6df79b843c5a46a86f4b1123f130eaa3cfdcf65ecfc0a5996
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 3, 2026.

Transparency log

Release files / pyvcam-2.3.2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL pyvcam-2.3.2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 347.6 kB
Tags CPython 3.11 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
97ccdee93ca077d43413157a2cb356bcb236dd92b2f78f9681696c085d2b835a
BLAKE2b-256 checksum
How to use checksums
7238135263bcddbb7f6142fe42b8bcc1cc5723447051cf560ceac78308a64d8a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 3, 2026.

Transparency log

Release files / pyvcam-2.3.2-cp310-cp310-win_amd64.whl

Download URL pyvcam-2.3.2-cp310-cp310-win_amd64.whl
Size 63.3 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
55602f499d5abd37637cdf9445e46f3b1152cafe427cb45cb06cfd7d441bd9c0
BLAKE2b-256 checksum
How to use checksums
2f03369c38832d70c82d6cc656cb32e6d2c1574bee9c18f12a524b9fe2e9a209
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 3, 2026.

Transparency log

Release files / pyvcam-2.3.2-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL pyvcam-2.3.2-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 346.1 kB
Tags CPython 3.10 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
c090de94a95b64cb8d98e65a25a3da80f006f282dadb41f36a278b7b2705b19a
BLAKE2b-256 checksum
How to use checksums
0e3f7a79b5823cf8f4ea3bae9fa7e2a0244618404e7147c634bd71240373c7df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 3, 2026.

Transparency log

Release files / pyvcam-2.3.2-cp39-cp39-win_amd64.whl

Download URL pyvcam-2.3.2-cp39-cp39-win_amd64.whl
Size 50.6 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
c1e3e5990ad878119e4b99f8ccd57503528cb2d77c49460a406014be8e650755
BLAKE2b-256 checksum
How to use checksums
af2ba05100533be06431e7c074be699b2e82432def5018af9791db9bf4f9cb07
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 3, 2026.

Transparency log

Release files / pyvcam-2.3.2-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL pyvcam-2.3.2-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 345.7 kB
Tags CPython 3.9 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
43911f723b62693053394f8397a4bd5a19378950d5c8efc2ed05f28551a100cf
BLAKE2b-256 checksum
How to use checksums
fb9b30d2265f4b79a6f3dd1b5ff0e3df8736f14e81d77c7dc438ee057fa0db40
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 3, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

2.3.2 This release

13 release files

2.2.4

13 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