Hi All,
Our existing flow consists of a single participant:
Browser/WebRTC --> Janus videoroom --> RTP Forwarding --> ffmpeg --> RTMP Endpoint
We are looking to add multi-participants capability, i.e. enabling the "Host" to add/remove "Guests".
There are few requirements:
1. The output RTMP stream needs to be "merged", i.e. include a single video stream with all participants.
2. The participants needs to see each other at low-latency (i.e. using WebRTC).
3. The Host remains active through the entire session, but Guests can come and go.
Our thought for a possible architecture/flow is this:
- The Host receives all Guests streams and merge them in the browser (including his own camera track) using HTML5 Canvas to a single merged stream.
- Guests are sending their own camera track and show the host's merged stream
- RTP forwarding (to ffmpeg) is done only to the merge stream
Happy to hear any thoughts on the above flow or suggestions.
Thanks!