A Rekognition Streaming Video alternative for new projects
Amazon Rekognition Streaming Video stopped taking new customers on April 30, 2026. Pictograph runs a detector you train on live video from RTSP cameras, browsers, and phones, and returns every frame's results as it is processed.
Pictograph vs Rekognition Streaming Video
What each does with a live camera, from AWS's documentation and Pictograph's.
| Feature | Pictograph | Rekognition |
|---|---|---|
| Open to new customers | No, since April 30, 2026 | |
| What it detects | Any class you train | People, packages, and pets |
| Bring your own model | – | |
| Video in | RTSP, WebRTC (WHIP / WHEP), files | Kinesis Video Streams |
| Results for every frame | Alerts + session summary | |
| Tracking, line counts, dwell time | Workflows | – |
| Events to your systems | Signed webhooks | Amazon SNS + S3 |
| Face search against a collection | – | |
| Run the model on your own hardware | ONNX, TensorRT, ExecuTorch | – |
Where Pictograph fits
New camera projects that need more than three labels, or results for every frame rather than an alert per session. You train the detector on your own footage, deploy it as a TensorRT endpoint on a GPU in us-east or us-west, and stream to it directly. Workflows add tracking, line-crossing counts, dwell time, and webhooks on top.
Where Rekognition leads
Face search against a face collection, which Pictograph does not do, and people, package, and pet detection with no training at all. If you already run stream processors in an account that keeps access, the all-AWS pipeline (Kinesis Video Streams, SNS, S3) keeps working.
Stream a camera to your detector
Once the model is deployed, one command or a few lines of Python replace a stream processor.
# One JSON line per frame; Ctrl-C stops the stream
pictograph deployments stream door-cam-detector rtsp://camera.example.com:554/live --token pk_deploy_... from pictograph import Client, DetectionResult
client = Client()
deployment = client.deployments.get(
deployment="door-cam-detector",
)
infer = client.deployments.connect(
deployment=deployment,
api_key="pk_deploy_...",
task="object_detection",
)
with infer.open_stream(source="rtsp://camera.example.com:554/live") as stream:
for frame in stream.frames():
result: DetectionResult = frame.result
print(frame.index, [p.name for p in result.predictions])
The deployment pulls the RTSP camera itself; a browser or an app can push its own video over WebRTC instead. Each frame's detections come back as it is processed; a camera that stops sending does not end the stream, and idle_timeout tells your code when no frame has arrived for a while. The streams guide covers every source, the live view with detections drawn on it, and the REST API.
Move a stream processor in four steps
Rekognition's labels came pretrained; here the model is yours, so the first three steps build it.
-
Collect frames
Upload a few hundred frames from your cameras, or a short recording that Pictograph splits into frames.
-
Draft and review labels
SAM3 drafts every "person", "package", or "dog" from a text prompt. You review the drafts before training.
-
Train a detector
Export the reviewed dataset and train an RF-DETR or YOLOX detector on a managed GPU.
-
Deploy and stream
Deploy the model on a T4, L4, or A100, then stream your cameras to it, or serve a workflow that sends a webhook when a person appears.
The video API extracts frames, auto-annotation covers SAM3's prompts, the training guide walks through a run, and deployments and live workflows cover the endpoint and its webhooks.
Rekognition Streaming Video alternative FAQ
Is Amazon Rekognition Streaming Video being discontinued?
It is closed to new customers. AWS stopped offering Rekognition Streaming Video (and Bulk Image Analysis) to new customers on April 30, 2026. Accounts that used it in the previous 12 months keep access, and the rest of Rekognition is unaffected. AWS points new projects at running the Rekognition Image API on frames you extract yourself.
Can Pictograph detect people, packages, and pets like Rekognition did?
Yes, once you train a detector for them. Rekognition shipped those three labels pretrained; on Pictograph the model is yours. Upload frames from your cameras, let SAM3 draft "person", "package", and "dog" labels from text prompts, review the drafts, and train an RF-DETR or YOLOX detector on the export. A small run is usually a few dollars, and the model can also detect anything else your cameras need to see.
How does video get to Pictograph without Kinesis?
Three ways. A deployment can pull an RTSP camera or a WHEP source itself; your own sender (a browser webcam, a phone, an app) can push over WebRTC with WHIP; or you send single images to the /predict endpoint. A stream returns each frame's detections as it is processed over a WebSocket or a WebRTC data channel, so there is no Kinesis video stream, data stream, or S3 bucket to set up.
How do I get an alert when a person appears?
Serve a workflow on the stream. A workflow runs your model, tracks objects across frames, and can send a signed webhook when a new object of a class appears, when one crosses a line, or when it enters, leaves, or lingers in a zone. Each event is also logged, and an annotations output can save the frame to a dataset for review.
What does Rekognition do that Pictograph does not?
Face search. A Rekognition face search stream processor matches faces in live video against a face collection; Pictograph does not identify people. Rekognition also needs no training for its three labels and plugs straight into Kinesis, SNS, and S3, and existing customers keep using it. If face identification or a pretrained, all-AWS pipeline is the requirement, stay with Rekognition while you have access.
Other comparisons
Run your own detector on live video
$5 of free compute every month. No card required.