Skip to main content

CIViQ6 - Camera Integration for Vimba and Qt6

PyPI version Python Version Build Status Documentation Status License

CIViQ6 is a Python package which integrates VimbaPython and Qt6 multimedia scheme.

It provides:

  • Class to instantiate the Vimba instance in QThread
  • Camera API similar to that of QtMultimedia
  • Compatibility with QVideoSink and QVideoWidget

The following Qt bindings are supported:

This package is tested using Vimba 6.0, VimbaPython 1.2.1, and Mako U-130B camera device connected to the device with Window 11.

How to use

CIViQ6 imitates QtMultimedia scheme to provide API for the Allied Vision camera device.

CIViQ6 class Qt6 counterpart
VimbaRunner -
VimbaDevices QMediaDevices
VimbaCameraDevice QCameraDevice
VimbaCamera QCamera
VimbaCaptureSession QMediaCaptureSession

Running the Vimba instance

VimbaRunner is a runner which wraps the VimbaPython API and starts Vimba.

To start the Vimba instance, move VimbaRunner to a dedicated QThread and run it. This task must be done before any other Vimba-related operation.

Streaming the camera

Once the Vimba instance is started, user can construct VimbaCamera instance, set it to VimbaCaptureSession, and run it just as one would do with QCamera and QMediaCaptureSession.

Set QVideoWidget or QVideoSink (or any other QObject-based preview) to the capture session to stream the camera.

Setting the camera properties

VimbaCamera provides methods which return VimbaPython's Feature objects that can get and set the camera properties.

Capturing and recording

Unlike Qt6, CIViQ6 does not have default classes that support image capturing and video recording from VimbaCaptureSession. User must define own classes that write VimbaPython's Frame object to file.

The documentaion provides examples for defining the image capturer and video recorder.

Examples

Use cases are provided in examples directory. They can be found in documentation as well.

Installation

Before you install, be careful for other Qt-dependent packages installed in your environment. For example, non-headless OpenCV-Python modifies the Qt dependency thus can make other Qt bindings unavailable.

To install CIViQ6, you first need to install VimbaPython package which is not distributed by PyPI. Go to its repository and follow the instructions.

After VimbaPython is installed, civiq6 can be installed using pip.

$ pip install civiq6

Documentation

CIViQ6 is documented with Sphinx. Documentation can be found on Read the Docs:

https://civiq6.readthedocs.io/

If you want to build the document yourself, clone the source code and install with [doc] option. This option installs the additional packages to build the document and to run the examples.

Go to doc directory and build the document.

$ pip install civiq6[doc]
$ cd doc
$ make html

Document will be generated in build/html directory. Open index.html to see the central page.

Metadata

Release files for civiq6 0.2.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 civiq6 0.2.1
File Size Uploaded
civiq6-0.2.1.tar.gz 12.2 kB Details

Built distribution (wheel)

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

Total release size: 24.1 kB

Release files / civiq6-0.2.1.tar.gz

Download URL civiq6-0.2.1.tar.gz
Size 12.2 kB
Tags Source
SHA-256 checksum
How to use checksums
f7bedd63a9a2bd2200d883bff58c8d69fab3c59f117a60f003047e5ee6f796da
BLAKE2b-256 checksum
How to use checksums
fc5c550846a5c7b6e65de115ab5ecb7707ca942d9d2afb5a8b25777a0443dd22
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.1

Release files / civiq6-0.2.1-py3-none-any.whl

Download URL civiq6-0.2.1-py3-none-any.whl
Size 11.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4ac1558b03cbd15be19c263a5cfb6ed98a59586205e3eea2caf4465617be231d
BLAKE2b-256 checksum
How to use checksums
6e9622bd9544bb8efc28c1c6a2e94dc085457632c7abe658fbca64ec42796f41
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.1

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

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