Simulcast sends only one stream

Hi! I am trying to figure out how does simulcast works.

My encoding params are
{ maxBitrate: 40000, scaleResolutionDownBy: 2.2 },
{ maxBitrate: 64000, scaleResolutionDownBy: 1.6 },
{ maxBitrate: 88000 }
and scalabilityMode is S3T3.

When I pass a video with width 415 I get only one stream. If I pass width 416 then I get 2 streams.
That’s widths too much for me. I’d like to use widths 80, 180 for my purposes and get 3 streams for 3 layers. Could you help me?

Whether the browser honors given simulcast settings or not of up to the browser and to the video encoder. Indeed it depends on input video size and so on. Nothing we can “fix” in mediasoup-client side.

Yes. Will you also help others in this forum?

Yes, I’ll help others with the same issue if I figure out how to make it.

To clarify:

  • You cannot do magic. If you pass a very low resolution video to transport.produce() the browser encoder will not generate simulcast streams but just one. You should reconsider your video size.
  • I don’t mean “help others with same problem”. I mean help others in general.

No problem, if I know how to solve something I’ll help.

1 Like

Could you suggest me where do read more about resolution and browser encoder?

Honestly no idea. This is libwebrtc internals. No documentation about it but just expertise.

1 Like

Can confirm I see the same thing for a video of the size
360x640
but if I scale up the sending resolution to
720x1280
it sends all the simulcast streams.

Thankyou for the response, now that I know the issue I can debug it better from here!