Skip to main content
RTStreams use the same retrieval model as videos:
The difference is lifecycle. A video understanding job finishes when the file is processed. An RTStream understanding job is continuous: it keeps processing new windows while the stream and job are running.
Initial RTStream support for the new interface is limited to VLM visual understanding with time-based segmentation. Other analyzers and segmentation modes will be added later.

What is supported

Unsupported analyzer types such as spoken_words, object_detection, ocr, faces, brands, activity_recognition, and location_detection should return a validation error until support is rolled out.

Quick example


1. Understand the stream

Use rtstream.understand(...) to start a continuous understanding job. It returns an RTStreamUnderstanding object containing the job ID, status, outputs, and lifecycle methods.

Parameters


2. Get the continuous output

The object returned by rtstream.understand(...) already contains the output descriptors:
To reopen the job later, fetch it by its string ID:
For videos, an understanding output can be a finite artifact. For RTStreams, the output is a continuous source descriptor that points to records produced over time.
You can inspect produced records by time range:

3. Index the output

Use rtstream.index(...) to materialize the continuous VLM output for search. It returns an RTStreamIndex object with its ID and lifecycle methods.
If use_for is omitted, VideoDB chooses the default capabilities for the VLM scene output. In the initial RTStream rollout, the primary capability is semantic search over scene descriptions.

4. Manage the continuous jobs

RTStream understanding and index jobs have continuous lifecycle controls.
Stopping the RTStream itself disconnects the media source. Stopping understanding or indexing only pauses that processing layer.

5. Retrieve and play results

Search works like existing RTStream search: results are timestamped stream shots.
Each shot includes Unix timestamps. Use shot.generate_stream() or shot.play() to create a playable stream for that time range.

6. Add alerts

Alerts remain attached to RTStream indexes.
Manage alerts from the index:

How this differs from videos


Compatibility with existing helpers

Existing RTStream helpers remain supported during migration:
The new interface separates that flow into two explicit steps:
Use the new interface for new VLM-based RTStream workloads. Use the existing helpers while migrating older applications.

Target API routes

The SDK methods map to these RTStream routes:

Next steps

Real-time APIs

Existing RTStream transcription, search, alerts, and stream playback APIs.

Events & Real-time

Build event rules and deliver alerts over webhooks or WebSocket.