Toposync Cameras extension
First-party extension focused on camera integration for the global Pipelines runtime.
What it provides
- RTSP camera settings and indexing (
/api/cameras/index) - RTSP snapshot endpoints used by UI/tools
- Visual calibration and projection mapping endpoints for camera/composition interpolation
- Camera pipeline operators registry integration
- Camera element/editor UI in the composition
The old per-camera detections runtime (/api/cameras/detections/*, cameras.tracking, and toposync_ext_cameras.processor_server) is no longer part of this extension.
APIs
GET /api/cameras/indexPOST /api/cameras/rtsp/snapshotGET /api/cameras/cameras/{camera_id}/snapshotPOST /api/cameras/projection/map
camera.camera_mapping and the editor use calibrated_views as the canonical mapping model:
- fixed camera: one default calibrated view with
pose_reference = null - PTZ camera: one or more calibrated views bound to
pose_referenceor presets - projection model:
image_quad_on_world, with an image region and a world-space quadrilateral - stream scope:
mainandsubare compatible by default;zoomneeds an explicit calibrated view/scope - mapping runtime: derives internal control-point pairs from calibrated views so pipeline outputs keep
payload.world - mapped tracking presets place
camera.camera_mappingbeforevision.track, allowingbyte_worldto use per-detectionworld_anchoras a probabilistic association signal.
/api/cameras/projection/map is the public mapping endpoint. UI and extension
code should use calibrated views; runtime control-point pairs are internal
projection details derived from that canonical model.
Camera pipeline presets
Preset graphs should keep product identity on payload.subject.id. Raw tracker
ids are diagnostic only.
people_simple: no mapping requirement, for a first people-detection smoke test.people_individual: requires mapping, emits individualeventsubjects.people_quiet: requires mapping, groups activity withvision.group_eventsinsessionmode.presence_area: requires mapping, groups mapped presence withvision.group_eventsinproximitymode.vehicle_stopped: requires mapping, estimates velocity before notification.
Pipeline operators (registered by this extension)
camera.sourcecamera.motion_gatecamera.camera_mappingcamera.area_restrictioncamera.velocity_estimation
Public vision operators are registered by the com.toposync.vision extension:
vision.detectvision.trackvision.group_eventsvision.crop_objects
Legacy vendor-specific YOLO/Ultralytics runtimes are not part of the official first-party path in this extension. If you need one of those integrations in the future, ship it as a separate package and keep vision.detect / vision.track / vision.group_events as the public operator contract.
Dependencies
ffmpegmust be available inPATHfor snapshot capture.- OpenCV is required by frame/motion processing:
uv pip install opencv-python-headless
- Vision runtimes are optional and can be installed from
extensions/vision.
Snapshot tuning
TOPOSYNC_CAMERA_SNAPSHOT_TTL_S(default:0.8)TOPOSYNC_CAMERA_SNAPSHOT_FFMPEG_CONCURRENCY(default:2)
RTSP note
Some cameras expose /stream1 and /stream2. If /stream1 is unstable for snapshots, configure rtsp_url with the substream (/stream2) explicitly.
Metadata
Release files for toposync-ext-cameras 0.7.10
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| toposync_ext_cameras-0.7.10.tar.gz | 556.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| toposync_ext_cameras-0.7.10-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.0 MB
Release files / toposync_ext_cameras-0.7.10.tar.gz
| Download URL | toposync_ext_cameras-0.7.10.tar.gz |
|---|---|
| Size | 556.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5f2b0324e95c638f979bd6668d7a114b70fa83735bc2b8d688f719333c63e038
|
|
BLAKE2b-256 checksum How to use checksums |
1cfb034da6cba4a0211547322471ab1ca52962ef9caeeb309a61ccda196b8f5a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.9
|
Release files / toposync_ext_cameras-0.7.10-py3-none-any.whl
| Download URL | toposync_ext_cameras-0.7.10-py3-none-any.whl |
|---|---|
| Size | 492.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5796373df2537a55c0370ccd825d1fd2b0f9ee539373bd9e50bbc6319ebbe7cb
|
|
BLAKE2b-256 checksum How to use checksums |
fce366177f9f1c7bad2379d39a17db54648bac5df042787f376698db585719d8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.9
|