Reputation: 23
I develop a webconference and I found a problem with screen share. When i share a screen with audio system, in the listener streamListChanged don't arrive the parameter "isScreensharing" to true. Another question is if this configuration option is optimal
{
qos: {
videoStartQuality: 'excellent',
videoMinQuality: 'excellent',
videoMinBitrate: 1500,
videoStartBitrate: 2500
},
simulcast: {
encodings: {
high: {
maxBitrate: 2500 // kbps
},
medium: {
maxBitrate: 1500, // kbps
scaleResolutionDownBy: 2
},
low: {
maxBitrate: 800, // kbps
scaleResolutionDownBy: 4
}
}
}
}
Sorry for my bad english.
Upvotes: 0
Views: 148
Reputation: 36
Concerning the first point, you're right, there is a bug concerning the screensharing with audio. The parameter "isScreensharing" is set to false in the streamListChanged event. I will open a ticket to dev team to fix this issue.
There is a workaround that can be used to identify you screensharing stream using a publish option.
You can pass a "context" object to your screensharing publish like that :
var options = {
context : { screensharingwithaudio : true}
}
connectedConversation.publish(screensharingStream,options);
This context in included in the streamListChanged event so you can easily identify the type of the available stream.
For the second point, the qos option are not used if you're using simulcast, therefore and for your information quality option and bitrate option are exclusive. you must used one of them not the 2.
Right now our production platform limit the bitrate for a publish stream to 2500 Kbps so in your simulcast configuration the highest stream will be disable by ApiRTC.
You can try this configuration :
simulcast: {
encodings: {
high: {
maxBitrate: 1700 // kbps
},
medium: {
maxBitrate: 600, // kbps
scaleResolutionDownBy: 2
},
low: {
maxBitrate: 200, // kbps
scaleResolutionDownBy: 4
}
}
}
Upvotes: 2