3 ms·
Software support for the hardware encoding/deciding is very not good. Webcam streams mpeg to electron, electron probably decodes in software, reencodes in sofwa
by cosmotic 6y ago
Software support for the hardware encoding/deciding is very not good. Webcam streams mpeg to electron, electron probably decodes in software, reencodes in sofware, then decodes incoming stream(s) in software. If there's any client side encryption or filtering, that probably also happens in software. It's probably all JS software too. It's like the worst possible case for how to architect an app for performance. At least it's JITed these days.
- 43920 6y agoZoom doesn’t use Electron, and AFAIK it’s all native code.
- guscost 6y agoIn this instance the Electron VM/etc matters a lot less than the “(re|en)codes in software” part.
- hctaw 6y agoZoom is QT, not electron. Also browser engines have good support for hardware decode, it's really in OSS libs and on platforms like Linux where there is little to no support.
- cosmotic 6y agoThey may have good hardware decode for web content, but whatever the circumstances, it's not kicking in for video conference. Maybe the use of low-latency codecs, multiple streams to decode, or other effects/compositing/analysis happening?