Thanks — I’ll explain the difference and the latency implications so you can pick the best option.
• Room composite egress
◦ What it is: A headless Chrome instance renders the full room layout (multiple participant videos, canvas, overlays), captures that rendered output, then encodes and sends it to RTMP/HLS.
◦ When to use: You need a single composed view (gallery, speaker layout, overlays, or staged scene) that combines tracks into one output.
◦ Latency implications: Higher latency — browser compositing + capture + encoding adds processing overhead and startup time, so RTMP/HLS from composite will be noticeably delayed compared to in-room WebRTC.
• FFmpeg / track (track-level) egress
◦ What it is: Individual published tracks are forwarded to an FFmpeg process (or similar encoder) which can directly transcode/pack and push to RTMP/HLS without using a browser compositor.
◦ When to use: You want single-track outputs (one camera, one screen share, or separate audio/video streams) or lower-overhead transcoding workflows. You can also stitch/encode with FFmpeg scripts if you need some layout control.
◦ Latency implications: Lower latency than browser-based composite because it avoids the headless Chrome capture step and typically uses more direct encoding pipelines. Still subject to RTMP/HLS buffering, so it won’t match WebRTC but will often be faster than composite egress.
Recommendation: If your goal is lower end-to-end latency and you don’t require full-room compositing in a browser, switch to track/FFmpeg egress and optimize encoder settings (shorter GOP/keyframe interval, smaller HLS segment duration). If you still need a composed layout, consider producing separate tracks via FFmpeg and composing server-side with a lighter-weight encoder pipeline rather than using the Chrome compositor.
If you want, tell me:
• which layout/overlays you need in the final stream, and
• whether you can accept separate streams or need a single composed output—
and I’ll recommend the concrete egress setup and FFmpeg options.
, with interactive elements