Skip to main content

tatolab-virtualcamera

A virtual camera for Tatolab streams, built the way a third party builds a node: an extension wheel that depends on tatolab-stream and on no engine crate, its native half reaching the engine's PipeWire camera door through the module host table. Linux only.

  • VirtualCameraSink presents each frame on video as the picture of a camera any Linux application can select. Each instance is one camera, created at setup and removed at teardown, like a USB camera plugged in and pulled out.
    • Config: name, the camera's name in every picker, at most 31 bytes; absent, StreamLib Camera plus four characters stable across runs of the same stream and node. door: v4l2loopback, a /dev/video* camera every application sees; pipewire, a PipeWire camera portal-based applications select, with no kernel module and no grant; auto (the default), the loopback camera where it is permitted and PipeWire otherwise.
    • The engine converts each RGBA frame into YUYV on the GPU; the camera's format follows the first frame's extent and colour, and an extent change re-negotiates it. A frame of odd width drops every later frame.
    • Without write access to /dev/v4l2loopback the loopback door refuses, naming tatolab enable-virtual-camera, the one-time command that loads the module and grants it behind your desktop's password prompt. Without a PipeWire daemon the PipeWire door refuses naming why.
from tatolab.virtualcamera import VirtualCameraSink

camera = stream_builder.add(VirtualCameraSink, config={"name": "Desk Camera"})

Check it

uv venv --python 3.12 .venv && VIRTUAL_ENV=.venv uv pip install ../../sdk/tatolab-stream pytest mypy
VIRTUAL_ENV=.venv uvx maturin@1.9.6 develop
.venv/bin/python -m mypy.stubtest tatolab.virtualcamera._native
.venv/bin/pytest tests && uvx pyright@1.1.411

The camera tests run on a runtime with the module loaded, in the integration suite's test_virtual_camera_sink.py.

Metadata

Release files for tatolab-virtualcamera 0.68.32

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

Built distribution (wheel)

Table of built distributions (wheels) for tatolab-virtualcamera 0.68.32
File Interpreter ABI Platform Actions
tatolab_virtualcamera-0.68.32-cp312-abi3-manylinux_2_28_x86_64.whl CPython 3.12 abi3 Linux glibc 2.28+ x86-64 Details for tatolab_virtualcamera-0.68.32-cp312-abi3-manylinux_2_28_x86_64.whl

Release files / tatolab_virtualcamera-0.68.32-cp312-abi3-manylinux_2_28_x86_64.whl

Download URL tatolab_virtualcamera-0.68.32-cp312-abi3-manylinux_2_28_x86_64.whl
Size 301.6 kB
Tags CPython 3.12 Linux glibc 2.28+ x86-64 abi3
SHA-256 checksum
How to use checksums
af0bfed62dbdf0c9e94ec1f9a25ce53c0790348f8190dac8bddb29f6c0d5c3f3
BLAKE2b-256 checksum
How to use checksums
ba3c55501815e52392b030758ef24514cdafcdbb6feb0491ba24b281d72b8eb4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for tatolab-virtualcamera 0.68.32

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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