Video pipelines
in your cloud.

Run ingest, transcription, vision, your own models, review and redaction on your video, inside your cloud account. Each file enters the pipeline as soon as its first part uploads.

Video pipelines in your cloud
0:00 / 0:55
Film outline
  1. Kestrel's trucks upload tonight's video. Kestrel Freight, a fictional trucking company, uploads 1,200 hours of dashcam video from 4,000 trucks to its own cloud account. Fleet size and hours are illustrative.
  2. You can play a video while it uploads. Each truck's video arrives in parts that begin on a keyframe, so playback and processing start before the upload finishes.
  3. Each part moves through your pipeline. Parts move through probe, transcribe, detect, your own model endpoint, review, redact and publish. Each station writes its result onto the file and sends a pipeline_step.completed webhook.
  4. Workers follow the queue. More lines open as the queue grows and close when it empties. Each line is a worker in your cloud account. Timing in this scene is conceptual.
  5. A reviewer approves the redaction. The part waits at the review station until a person approves blurring a face and a license plate. Then your app receives a webhook.
  6. Editframe renders a branded clip. The redacted clip plays with captions from the cab audio and a Kestrel lower third, and the same composition opens in an editor inside Kestrel's own app.
  7. It all runs in your cloud account. The pipeline deploys into your GCP, AWS or Azure account, so the footage and the workers stay there.

A pipeline is a graph of steps.

Each step writes metadata onto the file and posts a webhook. Built-in steps cover probe, transcribe, detect faces and text, filter, review, redact, and publish. A custom step calls your model endpoint with the file and the metadata collected so far.

A video that uploads in parts can play while the rest is still arriving. Each step starts on the parts it needs instead of waiting for the whole file.

{
  "steps": {
    "probe": { "type": "probe" },
    "transcribe": { "type": "transcribe", "needs": ["probe"] },
    "frames": { "type": "sample_frames", "needs": ["probe"] },
    "pii": {
      "type": "endpoint",
      "needs": ["transcribe", "frames"],
      "with": { "endpoint_id": "ep_models" }
    },
    "gate": { "type": "filter", "needs": ["pii"] },
    "review": { "type": "review", "needs": ["gate"] },
    "redact": { "type": "redact_render", "needs": ["review"] },
    "publish": { "type": "publish", "needs": ["redact"] }
  }
}

Editframe is built in.

Workflows sit on the same composition model as the rest of Editframe. Put an editor in your product, render branded outputs, and play the source through on-demand segments.

Tell us about the batch.

Describe the footage and the cloud it lives in. We reply to the work email you send.