Using default mediasoup configuration but the screenshare resolution seems to be very low and pixels are getting distorted, I need to increase the resolution. Looking for a way to do it. Till now I have tried increasing the maxBitRate and changing the scalability mode but none of them seem to work. Looking for any other ideas/alternatives.
There is no mediasoup default configuration at all.
Vaibhav are you using VP9 or simulcast for screen share? We were switched to VP8 and had better results.
This isn’t something to be solved within mediasoup - it’s controlled by WebRTC. Can your network handle the required throughput that you’ve set your bit rate to? Have you changed scaleResolutionDownBy? Are you setting overly tight constraints or using simulcast? All of those can affect quality…
In my application i have to share two types of screen.
- Any windows with document like pdf , word , xls files or browser windows with non-video content
- Any widnow running video content. like youtube, vlc.
To handle both with different configuration i provided tick box which ask “Share video?”
if user selected share video option then i used these settings.
Max resolution 640x480p and max 30 FPS - in this case high frame rate and to support available bandwidth minimized resolution…
For document (non-video content) i used these setting
Min Resolution 640x480p , Max resolution 1280x720p and 5 FPS - in this case low frame rate because content is not frequently changing…
Remove the constraints you’ve set. Scaling 1080p down to 640x480 is probably why it looks grainy.
I meant the mediasoup demo
We write mediasoup docs for something. Just relying on the demo is up to you. You have got other answers in this topic that may help you.
If the network route has any banwidth limit then you have to lower the resolution or fps…
If you require higher resolution then try 2-3 fps
Switching to VP8 didnt help, still the same issue
What about using H264? Have you tried using that
You need to set incommingbitrate 1Mbp/s or higher for screen capture, but for experimenting, trial this…
maxIncomingBiterate at 2000000,
initialAvailableOutgoingBitrate at 320000
Because 2D/3D rendering have a major impact on resources it’s best to find this limit and cap your clients as tight as possible.
In client you should run in the options when calling screens,