So for the 5th time I attended the WebKitGTK+ hackfest and as usual I spent most of the time working on Multimedia-related tasks, well just one this year actually, WebRTC.
I think WebRTC is quite an important HTML5 specification, we all want to get rid of Skype and embrace the world of open web video-conferencing, right?
To reach this goal we have mainly two big milestones. The first one is about letting the browser access the audio/video device if the user allows it and use <audio>/<video> elements to display the live feed. This part of the spec is called getUserMedia, I got it working in a branch, the patches are being upstreamed and hopefully we will turn this feature on soon in WebKitGTK+!
The second, and biggest, milestone is about actually establishing a peer-to-peer connection between multiple browsers over the internets. Based on some work done by Ericsson 3 years ago I started working on a PeerConnectionHandler for WebKitGTK+. The ICE agent it embeds is using libnice to handle the gathering of Candidates and NAT traversal. The backend is not yet functional, ICE negotiation is quite buggy, but I will keep working on the backend.
Once this is done there will be new features from the spec to support, like the Data channel, DTMF, Statistics gathering and it would also be cool to investigate on the screen sharing that’s not (yet?) in the spec but supported in Chrome. Exciting times ahead!
Once more the event wouldn’t have been possible and successful without sponsors, so big thank you to the GNOME Foundation and Igalia!