Sigma721
(Sigma721)
June 3, 2020, 9:53am
1
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?
ibc
(Iñaki Baz Castillo)
June 3, 2020, 10:00am
2
I don’t understand. How are you calling transport.produce() in mediasoup-client ?
Sigma721
(Sigma721)
June 3, 2020, 10:24am
3
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.
ibc
(Iñaki Baz Castillo)
June 3, 2020, 12:06pm
4
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.
Sigma721
(Sigma721)
June 3, 2020, 12:26pm
5
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
ibc
(Iñaki Baz Castillo)
June 3, 2020, 12:32pm
6
Believe me or not but you are not answering my question. Sorry, cannot help.