The 2012 FOMS workshop took place in Paris, France. The working meeting consisted of focused sessions dedicated to bridging gaps among browser vendors and ensuing associative APIs meet the needs of developers that are making use of them. Browser vendors represented included Google Chrome, Mozilla Firefox, and Opera. Players platforms such as Youtube, BrightCove / VideoJS, Long tail / jwPlayer and of course Kaltura were also represented.
Organised by Siliva, the meeting has long severed as a great space to hack and ‘get things done‘ in the open media standards and software space. This year was no exception. In this post I highlight some of the sessions that took place and provide a rough summery of the state of associated web video APIs.
WebRTC aims to deliver real time communication to the browser and encompeses a few diffrent apis and technologies; getUserMedia , MediaStream, PeerConnection and DataChannel. Together they will enable powerful new peer to peer applications; everything from video chat to real-time in browser multi-player gaming. Getting started with WebRTC is easy but presently its only really supported in Chrome. At FOMS, session on WebRTC, implementation differences between Firefox and Chrome were discussed and some concerns about limitations raised, like improving media selection support ( instead of only providing a 640×480 stream ) and setting goals to specify a Recording API.
Can I use this? While we may be able to connect one Firefox with one Chrome by the end of 2012, a fully interoperable WebRTC with peer data channel multi party support and capture / record flexibility probably won’t exist in shipping browsers till late 2013, and even then there will likely be large gaps ( such as codec’s or different apis ) in implementations. i.e its not likely iOS and windows 8 will support the vp8 / webm transport format, and microsoft has proposed their own RTC browser api.
Media Source Extensions / MediaStream Processing API
One area where the future is not so clear is the eventual protocol that will be adopted to support adaptive streaming and potentially a whole host of other media processing use cases ( playlists, video editors, live audio filters, gapless ad insertion etc ). Mozilla has backed the more complete MediaStream Processing API, and has a few working demos. Google has taken a more direct path toward supporting adaptive streaming with Media Source Extensions. Both include adaptive streaming as a use case. At the FOMS workshop the Media Source Extensions api was discussed in detail, and some impressive demos were shown; stringing together webm files via XHR requests to keyframe byte boundaries.
Can I use this? yes. Libraries like captionatorjs can help. And I am sure more WebVTT js libs and player plugins will be blossoming over short period of time. Native browser support is nice, but won’t seriously limit adoption in the same way as lower level HTML5 technologies require closely coordinated interoperability at the browser level.
The new codec discussion at FOMS touched on the successful opus efforts, what could make up the next version of “webm” and transOgg container format. Timothy Terriberry highlighted both opus and the goals of Daala /
Can I use this? Not yet, but the point here is that important work is being done to create a royalty free challenger to the H.265, so it will be difficult for mpegla to charge heavy royalties with a competative royalty free alternative.