purposely setting incoming bitrate high while outgoing bitrate set low, seems outgoing remains same as incoming.

It would appear if I set incoming bitrate to 600KB/s and set outgoing bitrate to 100KB/s, the outgoing limit is ignored completely (almost seems ineffective).

I have not tested this with the demo, or within a single worker. I am utilizing PipeTransport remotely (many different servers).

Is this normal behavior?

Goal is to adjust the consumer’s bitrate to what they’d prefer simple, simulcast or SVC streams.


The producing server will take broadcasts (produce them) and consume them to a pipetransport that will forward this stream to another server to be produced and consumed out further.

As the docs say:

  • This method just works when transport congestion control is available in the remote receiver, which is typically just supported in WebRTC.

And of course it just works for simulcast or SVC consumers since mediasoup is a SFU so it cannot re-encode and cannot happily discard some RTP packets in a non layered stream (AKA SimpleConsumer).

It only takes effect if called in WebRtcTransports handling SimulcastConsumers and/or SvcConsumers.

I wasn’t able to get Simulcast to work. I may had done something wrong but I just switched everything from simple → simulcast and all works but it seems viewers aren’t switching layers.

Should PipeTransports (different host) have issues with this at all? So far haven’t gotten to use it cause it won’t plug n play with my setup.