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.4.8
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.4.8.tar.gz | 546.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| toposync_ext_cameras-0.4.8-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.0 MB
Release files / toposync_ext_cameras-0.4.8.tar.gz
| Download URL | toposync_ext_cameras-0.4.8.tar.gz |
|---|---|
| Size | 546.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d584ca77306565c70d1439358d1ba2b8771483bfe878191c7e1d1b5b9c6b12d8
|
|
BLAKE2b-256 checksum How to use checksums |
9e1ace51b26b6b027ce7a9fdce9d9016af025cf19bfacaff878fe1c88b358bfd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.9
|
Release files / toposync_ext_cameras-0.4.8-py3-none-any.whl
| Download URL | toposync_ext_cameras-0.4.8-py3-none-any.whl |
|---|---|
| Size | 486.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2be1df5cd343f246e7547af1b58f20061c74409f985415d4ab5f202e01b58157
|
|
BLAKE2b-256 checksum How to use checksums |
17b253f8f563122f97d1f63b05c83c3e8099e94c3c7862e8263a9d0ea3c050cd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.9
|