Sunday, July 29, 2007

Work in Progress: New Canola


after a long time without updates on this blog, I will give an overview on my current tasks involving the new ramp-up of Canola.

there is a lot of work going on around Canola, as you can see in various posts from Marcelo, Barbieri and Kenneth! That´s an exciting time for good changes and new features :)
Besides the adoption of evas and edje as the UI toolkit, Canola is being rewritten in python and being reviewed from an architectural and functional point of view.

in the first semester I have worked on a cache and download manager for providing easy access to offline content, such as podcast and images, etc. Now I am working together with Artur (MoRpHeUz) on a media-engine for Canola. The main purpose of this media-engine is to provide simple access to multiple backends, such as MPlayer, GStreamer, the current Osso media server and others.

we all know that the default media-player has a lot of restrictions to supported formats, that´s why we believe that multiple media-backends is the way to go for applications that want to maximize the features for the end user. The new media engine will be able to select the best backend automatically for each mime-type, combining MPlayer, for open formats, with GStreamer (we are still waiting for playbin2 to come out) or the current media-engine for proprietary formats and DRM protected content.

in addition to support a wide range of media formats, this new engine will also manage sessions, allowing applications to save/restore state, such as remembering the last url played along with the position. Moreover, the session architecture will end with today´s mess of various applications using and confusing the osso-media-server.

what all applications want is a simple and reliable method of managing the playback of their media and that is what we will do!