Stream live video into Lattice
The Lattice Video API is now available in Preview. Register a live video source, attach it to an
asset entity, and operators can watch the feed on the common operational picture (COP) right
alongside every other entity in the scene. A camera on a drone, a fixed tower sensor, or an
encoder behind a NAT gateway can all surface their video in Lattice through a single, consistent API.
The Video API manages the full lifecycle of a stream: register an ingress source, associate it with an entity, list and inspect active streams, and stop a stream when its source goes offline. It is available across the Lattice SDKs in Python, Go, Java, and TypeScript (REST) and in gRPC.

Supported protocols
Lattice ingests video over three transports:
- RTSP: provide a Real Time Streaming Protocol (
rtsp://) URL and Lattice pulls frames from it. Use RTSP when your source can serve an RTSP endpoint, such as an IP camera or a MediaMTX relay. - SRT: Lattice allocates a listener and returns the endpoint your producer pushes to, with an optional passphrase for AES encryption. Use SRT for low-latency, push-based delivery from encoders and devices behind a NAT gateway.
- MPEG-TS: Lattice supports MPEG-TS at the edge, for environments in closed networks. If you are connecting to Lattice
over the public internet, you can’t start an MPEG-TS stream, but you can you list or inspect the
IngressStreamobject.
Start an ingress stream
After publishing a camera asset entity, create an ingress stream and attach it to that entity so the feed appears in the UI. The example below starts an RTSP stream. As shown, the Video API surfaces the same way across every Lattice SDK:
Attach the returned ingress_id to your asset entity through the entity’s media component, and the
live feed becomes selectable on the COP.
Manage and re-publish streams
Once streams are live, the Video API lets you operate them:
- List and inspect: enumerate active ingress streams and retrieve a single stream’s status, configuration, and associated egress identifiers.
- Stop: stopping a stream archives it. The record remains retrievable, but the stream transitions
to
STREAM_STATUS_ARCHIVEDand no longer appears in listings. - Egress: re-publish an active ingress stream to downstream consumers over RTSP or SRT. HTTP Live Streaming (HLS) egress is planned.
Get started
See the following pages in the Lattice SDK guide:
- Video overview reviews the API surface, the
IngressStreamobject, and the stream lifecycle. - Stream a video walks through publishing a camera asset and starting an RTSP or SRT ingress stream.
- Manage streams covers listing, retrieving, stopping, and re-publishing streams.
If you are new to the Lattice SDK, install the SDK in your language of choice, then follow the video guides above.