Cloudkibo / CloudKibo

CloudKibo
0 stars 0 forks source link

Check WebRTC Release notes to see latest webrtc support in browsers #508

Open sojharo opened 7 years ago

sojharo commented 7 years ago

There has been many developments on both firefox and chrome regarding integration of webrtc. We would accordingly change our web code to support latest webrtc in browsers:

https://bugs.chromium.org/p/chromium/issues/detail?id=465349#c67

sojharo commented 7 years ago

I went through some of the open bugs of chromium to understand the latest developments. I also read some release notes. I need to look into what is happening on Firefox now. After this, I would create a report on both.

sojharo commented 7 years ago

I have seen the release notes for both Chrome and Firefox. From the analysis, I found that the most work was done on internals of WebRTC implementation and not on API which is exposed to web developers. There is a big difference in API of implementing multicasting feature of webrtc between firefox and chrome. As chrome has still open issue with this and have not implemented it. Firefox has already implemented it.

The problem with this is that we are not able to do screen sharing between firefox and chrome. As firefox need multicast method to capture multiple streams and we are using the old method which is supported by chrome.

After this, here is the summary of FireFox release notes for release 54:

bug 1333438 Pref on full-duplex for Android bug 1325577 Use aggregate devices API in audiounit backend This means that issues with drift when using full-duplex on Mac should be solved, and full-duplex will be the default on Mac. (It became the default in linux a number of releases ago, and the default on Windows in 53) bug 1335939 Pref on ICE TCP support

bug 1340718 If a audio device (Citrix) disappears and fails on re-open attempts, output can be hung until restart You never want to leave the audio system hung, and this fixes a problem for a major user of 52ESR. (Fix uplifted to 53 and 52ESR)

bug 1320170 Screensharing previews are broken in current nightlies

bug 1300665 Missing support for RTP toffset, abs-time header extensions Note: we did not yet add support for 3gpp:video-orientation

bug 1219468 Replace PRLogModuleInfo usage with LazyLogModule in webrtc This means that all logging can be done through MOZ_LOG (NSPR_LOG_MODULES is no longer needed); see [Media/WebRTC/Logging]

Summary report for WebRTC for firefox release 53

bug 1250356 Updated core webrtc.org code to stable branch 49 Required major rewrite of interfaces for for video bug 1331498 Updated libvpx to 1.6.1 (major update) Our thanks to Johann Koenig of Google for contributing the patches to update it and improve the update and build process! bug 1056934 TURN/TLS is now supported bug 1231848 and bug 1330676 etc - MediaRecorder improvements - supports >30fps, significantly improved encoding quality bug 1221574 Full-duplex audio for android is landed and available; currently pref'd on by default in 54 bug 1308481/bug 1320101/bug 1330318 Resolved TIAS bitrate limit issues after renegotiation bug 1322503 Fixed RTCStatsType to be spec-compatible (missing hyphens in most enum names)

Similarly, there are no notable changes in WebRTC API by Chrome and they are also doing internal changes to their WebRTC implementations.

https://groups.google.com/forum/#!msg/discuss-webrtc/xXjeKbW_JYI/LIXzVrKWCwAJ https://groups.google.com/forum/#!msg/discuss-webrtc/DyeVS9IMTLc/1gUM7osoCwAJ

What we can do to improve performance is to use the multicast feature of webrtc which is new and is completely supported by Firefox, however, the Chrome doesn't support it and we will have to do use the shim for temporary.