CloudHub RTS Mixing is divided into Client Mixing and Server Mixing.
The source stream of the Client Mixing is specified by IUpStream through the StreamID of the source stream. Whether the source stream itself is published or not has no effect on the mixed stream.
The source stream of the Server Mixing is specified by url and must be the stream published to the server.
Client Mixing is mainly to mix the customer’s video with MP4 or share screen, and then push it to the server as a video stream.
eg：There are two customers (UserA、UserB).
UserA enables video and MP4 or screen, and UserA mixes video and MP4 or screen into a video and uploads it to the server.
UserB subscribes to a video (A-mixed video).
Server Mixing is mainly after the customer uploads the video to the server, through configuration, the server will mix the video, and the user subscribes to the mixed video according to destination Url.
eg: There are five customers ( UserA、UserB、UserC、UserD、UserE) .
UserA enables audio and video, UserB enables audio and UserC enables audio. The server receives data from UserA, UserB, and UserC.
(A+B) Video : Mix userA video and UserB video into a video.
Mixing Audio：four audios.
(B+C) Audio to A : Mix userB audio and UserC audio into one audio.
(A+C) Audio to B: Mix userA audio and UserC audio into one audio.
(A+B) Audio to C: Mix userA audio and UserB audio into one audio.
(A+B+C) Audio to Other: Mix userA audio、UserB audio and UserC audio into one audio.
UserA subscribes to video [ (A+B) Video ], audio [ (B+C) Audio to A ];
UserB subscribes to video [ (A+B) Video ], audio [ (A+C) Audio to B ];
UserC subscribes to video [ (A+B) Video ], audio [ (A+B) Audio to C ];
UserD and UserE subscribe to video [ (A+B) Video ], audio [ (B+C) Audio to A ];