The last post about Safari and webrtc, and the webrtc-in-webkit project was published almost a year ago, and a lot happened since.
Last month I had the opportunity to do a follow up meeting with the Media / WebRTC team at Apple in the valley, and I thought it would be a good time for a follow up.
The webrtc-in-webkit project has been very successful at laying down all the foundations. The JS APIs are in place, the webcore design is ready, and while not everything has been yet pushed into the main webkit repository, interoperability between the (webkit-based) linux browser and Chrome has been achieved last december. The majority of the work has been done by Adam B., editor of the webRTC specs, from Ericsson R&D, with help from Centricular, Igalia, and the openWebRTC team within Ericsson, among others.
Since January, Igalia has been officially contracted by several Sponsors including Citrix, to bring the code to the main webkit repository faster.
According to Apple things are “a million times easier now thanks to the webrtc in webkit effort” but there is still a lot of work to do. Since june last year, after a synchronization “IRC meeting”, Apple has been working on several Safari and web view specific parts, including but not limited to the capacity to acquire media from device using their native AVFoundation framework. The result was good enough for Apple to decide, in july 2015, to enable the Media Device API in the nightly builds.
More recently, we, at Citrix, updated the web-platform tests against the latest W3C specifications, and updated adapter.js to recognize and support Safari.
The IMTC, whose WebRTC Interoperability group I co-chair, sponsored Philip Hancke to upgrade adapter.js to shim ORTC in Edge better as well. WebRTC interoperability between browsers using adapter.js is getting better as we speak.
While the Media Device APIs seems to be all here and complete (one can check by recompiling webkit and running the tests, which control the prompt programmatically), no PeerConnection object seemed available.
This work by Dr. Alexandre Gouaillard is licensed under a Creative Commons Attribution 4.0 International License.
This blog is not about any commercial product or company, even if some might be mentioned or be the object of a post in the context of their usage of the technology. Most of the opinions expressed here are those of the author, and not of any corporate or organizational affiliation.