This blog post is stolen/copied from http://svartling.amplify.com/2010/09/10/the-first-html5-video-conference-app-is-here/
This blog post is for educational purpose for developers and other who expect a HTML5 replacement for the frikin flash apps in Dolphin
================================================================================
The last blog post in our Beyond HTML5-series, Beyond HTML5 - Implementing and stream management in WebKit, showed how our implementations of the device element and Stream API in WebKit GTK+ enables you to capture video with, e.g., a Web Camera and display it in a standard HTML5 video element. That particular application was not very useful other than as a demo for the new components we added to WebKit, but it can also be seen as the start of a full duplex video chat web application. And that is exactly what this blog post will be about.
Device Element and Stream API Improvements
MediaStreamTransceiver and WebSocket Transport
Media Relay
Demo - A Simple Video Chat
The video chat web application is basically the self view example with two additions. First, a MediaStreamTransceiver instance to share your local stream with a remote party, and to receive a remote media stream. Second, the addition of a second video element to play the remote media stream. The video below shows the demo web application in action.
Summary and Conclusions
We have demonstrated conversational voice and video in WebKit GTK+. To accomplish this, we have made the following modifications:
- Implemented the device element and the Stream API (device element GUI is currently written in JavaScript/CSS)
- Added MediaStreamManager to map Stream URLs to the corresponding pipeline in the media backend
- Added MediaStreamTransceiver to control the related media processing and transport
- Added support for binary data in the WebSocket protocol
======================================================================================
I hope/need flash app replacement in future Dolphin8.
PS: Flash is dead already... The Killer[Adobe] has not been arrested yet!