Maybe a generic webrtc question, but from mediasoup experience, when we would like to broadcast to hundreds of viewers on mobile devices, aiming for the best quality, what would be the best set of codecs we should set to support all? What would be the best simulcast settings?
If Safari is a requirement vp9 is out of the equation. H264 has better hardware support when compared to vp8, it uses more bandwidth and less cpu time in comparison. When guessing I would say that vp8 is the ideal candidate for most solutions.
Being futuristic I’m keen to see what happens with AV1 and hvec.
So, if I wanted to set the encoding to be available for as many (mobile) clients variants as possible (“lowest common denominator”), with decent quality, should I use the following configuration omitting h264 completely?
mediaCodecs:
[
{
kind: 'audio',
mimeType: 'audio/opus',
clockRate: 48000,
channels: 2,
},
{
kind: 'video',
mimeType: 'video/VP8',
clockRate: 90000,
parameters: {
'x-google-start-bitrate': 1000,
},
},
]
Ya depends on your application requirement I’m guessing. Note that code is for the accepted server-side codecs.
The code here is for accepted server side codecs, but as far as I understood it, I need all the viewers to be on the same codec? so that they will be able to view the produced video, right? This is why I would like to use the “lowest common denominator”.
you don’t necessarily need it, both h264 and vp8 are support by top browser vendors.