Simulcast not working with various configs

Hi

I am new to MediaSoup(replacing an existing SFU with it).

I am struggling to get Simulcast working(I have read what I can find on Discourse, Google Groups, and the documentation).

Here are Pastebin links sharing my server/publisher and consumer configs:
Setup option 1: https://pastebin.com/n4w4a8bv
Setup option 2: https://pastebin.com/FhNqnuAx

In both setups, when I log producerTransport.getStats(), I only have one stream uploading. I have tried various browsers due to issues mentioned relating to browsers such as these:

  • mediasoup.discourse.group/t/simulcast-sends-only-one-stream/694/3
  • mediasoup.discourse.group/t/simulcast-inconstant-fps-and-some-random-freeze/1026/2

Can anyone give me some advice please?

I don’t understand. How are you calling transport.produce() in mediasoup-client?

This is what I am calling from publisher and consumer:
pastebin.com/SJvpJ19g

This is the output from both:
https://pastebin.com/Dd5hPKBe

I do not see more than one feed being sent from the publisher which is what is confusing me. Obviously if my publisher is not sending multiple streams, then I will not be able to set my consumer to use different options.

I cannot check full logs, sorry. Please paste here (within code marks) how you are calling transport.produce() mediasoup-client. You did not show that in previous pastebins.

The logging that I do in publisher and consumer

###Publisher###
          async function getStatsProducer(){
            console.log('producerTransport.getStats()')
            let stats = await producerTransport.getStats();
            stats.forEach(s =>  console.log(s));
            };
            let getStatsResult = setInterval(() => getStatsProducer(), 10000);
 
#producerTransport = device.createSendTransport(params);
###Publisher###
 
###Consumer###
      async function getStatsConsumer(){
        console.log('consumerTransport.getStats()')
        let stats = await consumerTransport.getStats();
        stats.forEach(s =>  console.log(s));
        };
        let getStatsResult = setInterval(() => getStatsConsumer(), 30000);
 
#consumerTransport = device.createRecvTransport(params);
###Consumer###

The response from publisher, showing a single feed being sent up

{id: "RTCVideoSource_1", timestamp: 1591187170008.823, type: "media-source", trackIdentifier: "5e0ee2aa-3c1c-4350-8ef7-81fed901a9f2", kind: "video", …}
framesPerSecond: 30
height: 480
id: "RTCVideoSource_1"
kind: "video"
timestamp: 1591187170008.823
trackIdentifier: "5e0ee2aa-3c1c-4350-8ef7-81fed901a9f2"
type: "media-source"
width: 640

Believe me or not but you are not answering my question. Sorry, cannot help.