Skip to content
Console

srt_pull

Ingest MPEG-TS over the SRT protocol.

srt_pull uses the same PullSourceConfig shape as rtmp_pull, httpflv_pull, hls_pull, rtsp_pull, and file_pull. SRT-specific knobs are passed in the url query string, for example:

  • streamid=publish:/live/main
  • passphrase=<secret>
  • latency=200
Terminal window
curl -X POST "https://api.avflow.dev/v1/jobs" \
-H "Authorization: Bearer ${AVFLOW_API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"name": "srt-ingest",
"sources": [{
"name": "srt_src",
"type": "srt_pull",
"config": {
"url": "srt://ingest.example.com:9000?streamid=publish:/live/main&latency=200",
"identity": "host"
}
}],
"nodes": [],
"sinks": [{
"name": "rtmp_out",
"type": "rtmp_push",
"inputs": ["srt_src"],
"config": {
"urls": ["rtmp://live.example.com/app/key"],
"encoding": { "videoCodec": "h264", "audioCodec": "aac" }
}
}]
}'
FieldTypeDefaultDescription
urlstringsrt://host:port/… with optional query params such as streamid, passphrase, latency
identitystringsource nameSpeaker label
displayNamestringidentity / source nameHuman-readable label for overlays and captions
headersmapForwarded to libavformat when applicable (limited effect for SRT).
startTimeoutMsint30000Timeout waiting for first frame (<0 = off)
stallTimeoutMsint0Abort if no new frames for N ms (0 = off)

Video tier by actual resolution. Source pricing.