For the complete documentation index, see llms.txt. This page is also available as Markdown.

Source Options

Frame rate, region of interest, motion gating, video mode, and component parameters

Options are set per source, at the moment you submit it. The same session can take a still at full resolution and a camera feed throttled to one frame per second, because nothing about a source's options is bound to the Pop.

To stop repeating the same options on every source, set them once as Pop defaults instead.

The options

Each option has its own page. They are independent — set any combination on one source.

Option
What it does
Applies to

Throttle inference to a target frame rate

video, live streams

Crop every frame to a region before inference

all sources

Pause inference while the scene is still

video, live streams

Process an uploaded video while it uploads, or after

uploaded video

Treat an uploaded stream as real time and drop frames to keep up

uploaded streams

Override a Pop component's parameters for this source

all sources

Describe the lens and the camera's pose, so depth becomes measurable meters

all sources

Camera calibration

camera describes the lens the source was captured with, and optionally where the camera stands. It is what turns a depth map into positions measured in meters — without it, the platform assumes a 60° horizontal field of view, and distances along the optical axis are only as good as that guess.

from eyepop.worker.camera import Camera

job = endpoint.load_from("rtsp://camera.example.com/stream1", camera=Camera(hfovDegrees=72.0))
const results = await endpoint.process({
    source: { url: 'rtsp://camera.example.com/stream1' },
    camera: { hfovDegrees: 72 },
})

A calibration describes the source as captured, at its original resolution — it is not adjusted for an roi. The full field reference, including intrinsics, distortion and the camera-to-world pose, is in Camera Calibration.

Next steps

Last updated