Real-time media cloud

One platform for
every live media workflow

AVFlow connects LiveKit, Daily, Jitsi, Agora, RTMP, and more to layouts, AI nodes, and outputs you choose. Describe a Job in JSON, submit it once, and run countless combinations — from stream relays to AI-powered shows.

LiveKitDailyJitsiAgoraRTMPSRTWHIPS3
13
Source types
8
Processing nodes
10
Output sinks
REST
Job API

How it works

A live pipeline is one JSON document

Name your inputs, wire them through processing, point them at outputs. Below is a complete Job that mixes everyone in a LiveKit room into a grid and streams it to RTMP — nothing omitted.

room-to-rtmp.json Download
{
  "name": "room-to-rtmp",
  "sources": [
    {
      "name": "room",
      "type": "livekit",
      "config": { "serverUrl": "wss://your-project.livekit.cloud", "token": "eyJ..." }
    }
  ],
  "nodes": [
    {
      "name": "video",
      "type": "video_mixer",
      "inputs": ["room"],
      "config": { "layout": { "mode": "grid" } }
    },
    { "name": "audio", "type": "audio_mixer", "inputs": ["room"] }
  ],
  "sinks": [
    {
      "name": "stream",
      "type": "rtmp_push",
      "inputs": ["video", "audio"],
      "config": {
        "urls": ["rtmp://live.example.com/app/stream-key"],
        "encoding": { "videoCodec": "h264", "audioCodec": "aac" }
      }
    }
  ]
}
Submit it
curl -X POST "https://api.avflow.dev/v1/jobs" \
  -H "Authorization: Bearer $AVFLOW_API_KEY" \
  -H "Content-Type: application/json" \
  -d @room-to-rtmp.json

Re-POST the same name to reconfigure it live. Change the layout or swap an output on a running pipeline without restarting the stream.

Every example on this site is checked against the engine's own validator in CI, so what you copy is a Job the API accepts.

Quick start →

Why AVFlow

Compose what you need from proven building blocks

Pick inputs, processing, and destinations independently. The same Job model covers a simple relay or a multi-output mix with captions and AI.

Use cases

Six things people actually build

Each one is a working demo with its full Job JSON — not an illustration. Read why each pipeline is shaped the way it is, then run it yourself.

Ready to ship your first job?

Copy an example, POST to the API, and go live in minutes.