Install beside the camera
Run the edge agent on any Windows, Linux, or macOS machine that can reach the camera over the LAN. Camera credentials stay there.
One command · automatic updates
Streamo turns RTSP cameras, drones, and robots into secure, on-demand streams and clips. One lightweight edge agent, one API, and no port forwarding.
Outbound only
No VPN or port forwarding
On demand
Nothing runs while idle
Your choice
Cloud CDN or self-hosted
Private by default
Signed, expiring playback
How it works
The control plane coordinates access. The video itself moves directly from your edge to the media plane, never through Streamo’s API servers.
Run the edge agent on any Windows, Linux, or macOS machine that can reach the camera over the LAN. Camera credentials stay there.
One command · automatic updates
Your backend asks for a stream. Streamo provisions the media path and wakes the edge over its existing outbound HTTPS connection.
POST /v1/sessions
Play signed HLS in your application, request a JPEG frame for an agent, or keep the recording as a clip with an explicit retention period.
Viewer leaves · stream stops
The product
Use only the pieces you need. Every endpoint is scoped to a project key, and every live session carries its own expiry.
Open an RTSP camera only while someone is watching. Return tokenized HLS for the browser, with automatic teardown when heartbeats stop.
POST /v1/sessionsSkip the edge entirely for drones, OBS, phones, or robots. Publish over RTMPS—or WHIP for sub-second WebRTC playback.
{ "ingest": "push" }Upload clips directly to S3-compatible storage or keep a live session recording. Retention belongs to each asset, not an account-wide policy.
POST /v1/assetsRequest the current frame as a JPEG. The included MCP server lets an agent find a camera, look once, and close the session when it is done.
GET …/frame.jpgSecurity model
Streamo is built around temporary access. Idle cameras stay private, live sessions are bounded, and stored video exists only when you explicitly keep it.
RTSP URLs and passwords live on the edge machine. The cloud stores only the camera name and ID.
A hard TTL and viewer heartbeats ensure a stream cannot run—or bill—indefinitely.
Revoke a project API key or rotate one edge token without disturbing the rest of the fleet.
Viewer tokens and signed playback URLs expire with the session that created them.
Built for the physical world
Open existing CCTV only for safety reviews, incident response, or operational tools.
Push live video directly from an encoder, with WebRTC when operators need lower latency.
Give every vehicle or remote device a consistent streaming and clip API.
Simple usage pricing
An idle camera costs nothing. Start on the free tier, then pay for viewer minutes and clips as your usage grows.
Free
$0
100 viewer-minutes / month
Then
$0.005
per viewer-minute
Questions
Yes. Anything that exposes an RTSP feed can be registered. The edge agent transcodes sources such as H.265 into a browser-compatible stream when needed.
HLS is typically 5–15 seconds. Push-ingest sessions can use WHIP and WHEP for sub-second WebRTC playback. WebRTC from RTSP edge cameras is not shipped yet.
Camera names and IDs, session metadata, and only the clips or recordings you explicitly keep. RTSP credentials remain on your edge machine.
Yes. A project can use self-hosted MediaMTX instead of Cloudflare Stream. You trade global CDN delivery, recordings, and signed URLs for flat infrastructure cost.
Start with one camera