As I previously mentioned, Collabora has been working with the Raspberry Pi Foundation on various projects including a web browser optimised for the Raspberry Pi.
The browser is based on Gnome Web (Epiphany) using WebKit 1 (i.e. the non-multi-process version of WebKit).
Our main achievements are:
- More responsive UI and scrolling, even under heavy load (like when loading a page)
- Progressive tiled rendering for smoother scrolling (as mobile browsers do)
- Startup is three times faster
- Avoid useless image format conversions
- Better YouTube support, including on-demand load of embedded YouTube videos to make page load much faster
- Hardware decoding of videos (through gst-omx)
- Hardware scaling of videos (again, through gst-omx)
- Reduction of the number of memory copies to play videos
- Faster fullscreen playback using dispmanx directly (a bit buggy at the moment, we are working on it)
- Memory and CPU friendly tab management
- Disk image cache (decoded images are kept in memory mapped files in a cache, saving CPU)
- Memory pressure handler support
The Raspberry Pi web browser (mp4 video file)
To install the browser, just update your Raspbian and install the “epiphany-browser” package:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install epiphany-browser
Thanks to all the people at Collabora that, at some point or another, helped on this project: Julien Isorce, Emanuele Aina, ChangSeok Oh, Tomeu Vizoso, Pekka Paalanen, André Moreira Magalhaes, Derek Foreman, Gustavo Noronha, Danilo Cesar, Emilio Pozuelo Monfort and Jonny Lamb (I hope I haven’t forgotten anybody!).
Also thanks to the Raspberry Pi Foundation, and in particular to Eben Upton, for their commitment to making browsing on the Pi better, and to Ben Avison for his work on optimising pixman and libav for ARMv6.
Update: people have reported a few bugs since the release, in particular a problem with Raspbian configured to use 24-bit or 32-bit mode for graphics. We should be able to fix this in a week or so.
Another problem is that Vimeo videos stopped working. This seems to be due to a change made by Vimeo that broke playback also on other browsers and on Android.
It looks like Santa Claus arrived early for the Collabora employees
N900 pyramid, and sadly some of them didn’t arrive yet
After the Maemo Summit the details on the address book application and framework in Maemo 5 are finally completely public so I can openly talk about what I worked on during the past year and, even better, I actually have a smartphone that runs this software! (Thanks to Nokia that gave out 300 N900s, but I will talk about this in my next post)
Contacts on the N900
As you can see from the screenshots, the Contacts application has everything you would expect from a normal phone address book but it also tightly integrates IM. Your local, Jabber/GTalk and Skype contacts will appear in the same address book and, if you have a friend on multiple IM protocols, you can easily merge all the contacts into a single entity.
My main task has been making the component responsible for the IM part of the address book work properly, this component is an evolution-data-server backend (recently released under LGPL) that acts as a bridge between the Telepathy IM framework and evolution-data-server. See the README file for more details.
Sadly the library on top of evolution-data-server that does the magic contact merging and contains the widgets used on Maemo is not open, but there is some hope for it.
Address book components
At the Maemo Summit I also gave a talk on Telepathy and how it’s used on Maemo, both for messaging/VOIP and for the contacts integration. The slides are available in PDF or in OpenOffice.org format (but for some reason colours look wrong in some recent versions of OpenOffice).
I’ve not yet had time to blog about the Maemo Summit and I’m already going to another summit!
The Maemo Summit was very good and with many more people than I expected so I had a lot of interesting conversations. I think that my talk on Telepathy went pretty well (but you are free to contradict me in the comments and suggest me how to a better talk next time) and finally I put the slides online, but probably they are not so useful without somebody explaining them.
Telepathy presentation at the Maemo Summit 2008 (PDF, 611KB)
Tomorrow I will fly to Montreal and from there I will go to the Boston Summit with some other Collaborans, see you there!
In a few days I will go to the first Maemo Summit in Berlin where I will give a talk explaining how Telepathy works, how the different components interact and how to use tubes for arbitrary data transfer, useful for instance for playing games with chat contacts or to view a contact’s desktop using VNC. So, if you are in Berlin, don’t miss my talk on Saturday at 15:30! Also, don’t miss Pierre-Luc Beaudoin‘s talk on WebKit at 16:30!
My slides are almost ready (I will post them here after the summit) but I still have some OO.o-related problems, does anybody know how I can transform a linked image to an embedded one in Impress?
I find it’s quite annoying that when you drag an image to a presentation it’s linked and not embedded, is there an option to change the default behaviour?
Stuart: Pierre-Luc Beaudoin and Alp Toker implemented video support in WebKit GTK using GStreamer months ago, but probably (I never tried it) it needs some more love before being fully working.
Doesn’t this look like the GUADEC t-shirt?
GUADEC was great and talks turned out to be more interesting than what I was expecting after all the decadence discussions, this is also proved by the fact that I managed to stay awake during all the talks despite having a party every day . Being in an awesome city with wonderful food helped a lot for the final result, this is why I’m so happy that Gran Canaria was chosen for the next GUADEC.
In Istanbul I finally met other people working on WebKit or on related projects and had a chance to discuss with them about the future development of WebKit. While meetings on IRC are useful and allow you to talk with people from everywhere, real life meetings give you a much more efficient channel of communication: how about a hackfest for people working on WebKit, FireFox and desktop programs using them?
 Actually I came back to Cambridge ten days ago but, as usual, I fail at writing blog posts at the right moment, I wanted to write this on Sunday but my flight was moved to Monday and then real life started again. [Insert here other childish excuses for being so lazy]
 I’m already experimenting some Turkish recipes, Collabora people in Cambridge should expect a Turkish dinner really soon.
A picture is worth a thousand words:
Flash plugin in the WebKit GTK demo application
Flash plugin in the WebKit Qt demo application
Since a few hours ago both WebKit GTK and Qt support plugins! Thanks to everyone who worked on this, in particular to Rodney Dawes (who wrote the original patch in the past months) and to Marc Ordinas i Llopis (who maintained the patch and worked on the Qt port, and who recently joined us at Collabora). A thank you also to Alp Toker and Simon Hausmann who reviewed the patch.
Update: See also Marc’s blog for details.
King’s College Chapel by Jonathan Rawle. License:
More King’s College Chapel pictures on flickr
Sorry Alban, next month we will swap desks .
Everyone on Planet GNOME is starting a new job, so now it’s my turn: tomorrow I will move to Cambridge (this Cambridge, not one of the other ones) where I will work for Collabora.
It’s sad to leave so many friends here but I will work on cool technologies like Telepathy, Cambridge is very nice (the office is just in front of King’s college), and everyone at Collabora seems nice.