[Blend-tinker-devel] WebRTC tricky details

Jonas Smedegaard dr at jones.dk
Thu Jan 27 14:25:47 GMT 2022


Have you ever experienced your computer getting noticably hot when using 
Jitsi or other videoconferencing platforms - more than watching movies 
or on other JavaScript-busy websites?

Some of the reasons for that is tied to you computer's ability to do 
hardware-assisted rendering and encoding, but there are a range of 
reasons tied to the browser and webservice as well.

Here's my understanding of *some* causes for "my laptop gets hot when 
using Jitsi with Firefox¹):

Debian-based Firefox use only VP8/VP9, avoid² H.264 with WebRTC.

If first users in a room supports both VP8 and VP9, VP9 is used³, 
despite being less efficient.

If later a browser not accepting VP9 enters the room (or maybe 
regardless, not sure), all users will stream *both* VP8 and VP9 streams.

For each of VP8 an VP9 in use, 3 streams of varying quality is produced 
and sent, to allow _receiving_ only lower quality (e.g. when not 
fullscreen or when bandwidth is low).

Maybe Firefox users always receive and render highest quality.

Some of these issues are bugs in Firefox, but some of them are (maybe 
still, was in the past) Chrome doing dirty things and Jitsi playing 
along with Chrome dirty games instead of chasing specs and apply shims 
to nudge almost-compliant browser behaviors.

I maintain the package in Debian for an alternative to Jitsi - janus. 
Seemingly janus handles some of the Firefox quirks better than Jitsi, 
and I would love to test if there is a noticable efficiency boost in 
using janus instead of Jitsi for videomeetings of more than 6 members.

I collect notes about WebRTC tricky details at 
https://source.redpill.dk/media-stream-hosting/tree/DEVELOP.md

I would love to gather information about other platforms as well - so if 
some of you use BigBlueButton or Jitsy or Galèle or other Free 
videoconferencing platforms - and have patience to collect WebRTC SDP 
logs from your web browser and perhaps even have access to server logs 
as well, please shout.

For others interested but perhaps with less time/patience, I will try 
prepare some crash tests where we can hang out on in a videoroom many at 
the same time, then move to another videoroom tuned differently, and so 
on - where I can gather data at the server side about what is how 
efficient.  I will tell when I have it ready.  If you get impatient then 
feel free to nudge me about it ;-)


 - Jonas

-- 
 * Jonas Smedegaard - idealist & Internet-arkitekt
 * Tlf.: +45 40843136  Website: http://dr.jones.dk/

 [x] quote me freely  [ ] ask before reusing  [ ] keep private
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: signature
URL: <http://alioth-lists.debian.net/pipermail/blend-tinker-devel/attachments/20220127/10168aad/attachment.sig>


More information about the Blend-tinker-devel mailing list