Last weeks I’ve been playing with Clutter and Mx libraries, with the idea of knowing them deeper while also trying to help a bit. Honestly, I believe that the best way to learn about such things is just creating something using them.
So, knowing the fantastic effort done by Grilo team at Igalia, to create a framework for accessing different multimedia sources across the internet, I came to the idea of creating a very simple media player that uses MX widgets, Gstreamer, and Grilo framework.
And here it is, the first release of Clutter Grilo Player. It’s still dirty, but the general idea of the interface is there. It supports browsing and searching some Grilo providers, including Youtube and others.
Some links:
- Source code is in gitorious: http://gitorious.org/clutter-grilo-player
- I created a ubuntu PPA with Lucid packages (including MX 0.99.2, clutter-gst 1.0.0 and clutter-gestures), so anyone can play with it a bit. The ppa is ppa:jdapena/clutter-grilo-player
Looks cool – unfortunately the gitorious link doesn’t work? Would love to give this a try (and perhaps fix whatever’s squishing your path-bar like that :))
Ah, found the proper link: http://gitorious.org/clutter-grilo-player/cgp
Thanks! I’ve just fixed the links.
Looks really cool except for the red color bg which IMHO looks really weird. But hopefully its just me. 🙂
Yes, I was playing a bit with what can be done with the css. Definitely something to change.
Great work! 🙂
One hint about the Grilo usage, when you browse or search for content you may want to add GRL_RESOLVE_FAST_ONLY to the flags parameter and then use grl_metadata_source_metadata() to retrieve non-fast keys for specific media when you actually need them.
An example of this is Youtube and the media URL’s (each video requires a separate http request to obtain the media URL) so if you browse 100 items and request the URL in the browse operation you will be issuing 101 http requests even if you don’t play a single video.
As a general rule I would go with using the fast-only flag in browse and search operations and then, when you really need some metadata (like the URL) for an specific media item, if you don’t have it already you can issue a metadata() operation requesting it (without the FAST_ONLY flag in this case). This way you get the metadata you need when you need it in the most efficient way possible.
I’ve fixed it in git. Now we only retrieve url just when we’re going to play a media, and show an error if a content is restricted (and then, no url is available).
Commit is http://gitorious.org/clutter-grilo-player/cgp/commit/9845c45c64c054edf9550a16ae563fc20ba3a107
Awesome stuff, but that window-close icon doesn’t look quite right. It’s ‘supposed’ to be a big X – could well be a bug in the icon theme/mx-application interaction.
It’s what libMx is showing for the close button. I’m not changing anything in theme (in fact the demo app has the same problem).
I should add that this happens using the moblin icons theme provided in Ubuntu, while I’m using latest Mx. Is there any place where I can get the latest theme?
I would suspect that’s due to an old icon theme. We made several changes to support Mx in the icon theme, last time I saw Ubuntu were shipping an old ‘nbtk era’ version of all that stuff which is likely to be the issue. Not the end of the world though.