Wednesday, July 07, 2010

mSoma a Qt client for SomaFM

Andrea Grandi proposed me a few weeks ago to try and develop a client for SomaFM, a streaming radio with near 16 different channels, available for free. Indeed we wanted to try to develop an application for our cool Nokia N900 smartphone. Since this phone is now based on my beloved Qt framework, I accepted with much pleasure.

The really cool thing was that, by relying on the qt-mobility APIs (new Qt APIs for mobile application developers), we could enjoy cross-platform developing: all the code that I wrote for this player was tested and debuged on my computer, as a desktop application. Then, we deployed on the Nokia N900 and tried it there (and it worked seamlessly).

For instance, this are some screenshots of msoma running as a desktop application (in Linux in this case):

And this is a screenshot of the application running in the N900 (taken from Andrea's blog post):

Which is just a recompilation targeting Maemo (with this respect, the Nokia Qt SDK, based on QtCreator, is really helpful when developing).

Of course, this is the very first version of this application, and surely the UI should be different in the desktop application with respect to the cellphone version (in order to be more usable in the mobile devices). But, as it is, it's already enjoyable (but I may be biased ;)

Source code is available on Gitorious and it's always updated with latest version we're working on. If someone want to test the application, it's available in extras-devel repository ("msoma" under Multimedia section) of N900.

In case you want to use it as a desktop application, please remember that you need qt-mobility. I blogged about the installation of qt-mobility in Linux.

We really want to thank, Rusty Hodge, SomaFM's founder, who provided so many details about SomaFM for developing our application (and of course we thank him also for SomaFM itself :)

We look forward to receiving feedback, patches, suggestions, and help! :)

Our maemo profiles:

1 comment:

Anonymous said...

Thank you for the SomaFm client :^)