Toposync first-party extension: RTSP cameras and camera pipeline operators.
Project description
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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file toposync_ext_cameras-0.4.6.tar.gz.
File metadata
- Download URL: toposync_ext_cameras-0.4.6.tar.gz
- Upload date:
- Size: 540.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a5daacf23004b86fedc5807b8b073a34f5f66dc830b616f34badcd5ae0df4564
|
|
| MD5 |
c09d188f14f251ae84e0b0827bc9cdb8
|
|
| BLAKE2b-256 |
b1f040c6cb228c397b17ea4ae21c0281091a238db9406c84f816aec53c5ab364
|
File details
Details for the file toposync_ext_cameras-0.4.6-py3-none-any.whl.
File metadata
- Download URL: toposync_ext_cameras-0.4.6-py3-none-any.whl
- Upload date:
- Size: 483.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f2006a8be1677e921da4e764655fa92e24379fe6ca538012ab14cdd969645894
|
|
| MD5 |
1ca25608bb255faeb04acd55bb9b13b7
|
|
| BLAKE2b-256 |
7f1db85640c903ec9f4e2e9c13d22adb50c49c83ea22a91e933b91c740703a23
|