Workflow
Enable or start live view
POST /api/cameras/{id}/live-view/enable or POST /api/cameras/{id}/live-view/startEndpoints
| Method | Path | Description |
|---|---|---|
POST | /api/cameras/{id}/live-view/enable | Send SDK Setting_Key_EnableLiveView |
POST | /api/cameras/{id}/live-view/disable | Disable live view |
GET | /api/cameras/{id}/live-view/status | Returns enabled + streaming booleans |
POST | /api/cameras/{id}/live-view/start | Start the frame capture worker (auto-enables live view) |
POST | /api/cameras/{id}/live-view/stop | Stop the frame capture worker |
GET | /api/cameras/{id}/live-view/frame | Latest JPEG frame (Content-Type: image/jpeg) |
POST | /api/cameras/{id}/live-view/osd-enable | Enable OSD overlay |
POST | /api/cameras/{id}/live-view/osd-disable | Disable OSD overlay |
GET | /api/cameras/{id}/live-view/osd-status | Returns supported + enabled |
GET | /api/cameras/{id}/live-view/osd-frame | Composited JPEG (live view + OSD) |
Get Frame
Returns the latest live view frame as a JPEG image. Streaming must be started first.OSD Overlay
Enable on-screen display — the camera renders its UI (exposure info, focus points, histogram, etc.) as an overlay image composited onto the live view frame.Polling for continuous frames
For a render loop at ~15 fps, pollGET /api/cameras/{id}/live-view/frame at roughly 66 ms intervals. The endpoint returns the latest JPEG the server has captured — the camera-side frame rate is the actual cap.
See the live-view polling example for full client implementations in TypeScript, Python, and Swift.
