First of all hats off to all the people behind this great initiative. This is by far the best solution that I have found suiting my needs.
I wanted to ask about the simulcast query param. How does it work. I mean I do have the basic idea of what simulcast is I just want to know when does the application or the server decide to send me a high quality stream or a low quality. I’m asking in the context of mediasoup demo because all the video elements appear to be the same even with the simulcast option. I want to know what triggers my client to recieve a high quality video for a certain peer.
I want to know what triggers my client to recieve a high quality video for a certain peer.
There are specific controls in the demo where you can decide which stream out of those available you want to receive.
Clients encoding multiple streams for simulcast will normally stop encoding the highest profiles in case they detect CPU or network overuse. That’s out of the scope of mediasoup.
Other than that, if a consumer struggles receiving a certain stream (mediasoup knows that by inspecting the RTCP feedback) then a lower profile stream is sent to such consumer.
Go deep into the docs and the mediasoup-demo code if you are more interested.