Contents
Grilo
| Core | 
Overview
Grilo is a framework focused on making media discovery and browsing easy for application developers.
More precisely, Grilo provides:
- A single, high-level API that abstracts the differences among various media content providers, allowing application developers to integrate content from various services and sources easily.
- A collection of plugins for accessing content from various media providers. Developers can share efforts and code by writing plugins for the framework that are application agnostic.
- A flexible API that allows plugin developers to write plugins of various kinds.
At this moment, Grilo has plugins supporting various services, including:
- YouTube 
- Jamendo
- Flickr
- Vimeo
- Apple trailers
- Podcasts
- UPnP/DLNA
- Last.FM album art
- ...and more
Grilo is free software, licensed under the LGPL.
Advantages
- Less work on the application side
- Plugin development happens in the framework, application developers can focus on making good user interfaces.
- Code reuse
- There are several media players which allow users to access media content from various services, but their solutions are application-specific and cannot be reused in other contexts or projects. Grilo provides a central point where all these developers can cooperate, share, reuse and improve one code base, instead of doing all the work from scratch on their own.
- Quick learning curve
- In order to support multiple media content providers developers must learn each particular API and also all the technologies and protocols involved (YouTube, Jamendo, Tracker, UPnP, etc.). This is a significant effort, that involves a lot of learning. Grilo makes all this a lot easier for application developers, you only have to learn one API, the framework API, and you will get access to all these services through plugins. 
- Scalability
- There are a lot of media content providers available already, and more will come! There is a limit to what individual developers can support and maintain on their own. Enabling collaboration among all interested developers is the only way to make the situation scale to support more and more services in the future.
News
- Jul 17, 2019: Grilio 0.3.9
- Jul 15, 2019: Grilio 0.3.8
- Nov 19, 2018: Grilio 0.3.7
- Jul 26, 2018: Grilio 0.3.6
- Jul 17, 2018: Grilio 0.3.5
- Aug 24, 2017: Grilio 0.3.4
- Feb 14, 2017: Grilo 0.3.3 and Grilo-Plugins 0.3.4 released 
- Sep 10, 2016: Grilo 0.3.2 and Grilo-Plugins 0.3.3 released 
- Jun 16, 2016: Grilo 0.3.1 released and Grilo-Plugins 0.3.2 released 
- Dec 20, 2015: Grilo-Plugins 0.2.17 released 
- Dec 19, 2015: Grilo 0.2.15 released 
- Dec 16, 2015: Grilo 0.3.0 and Grilo-Plugins 0.3.0 released 
- Sep 24, 2015: Grilo-Plugins 0.2.16 released 
- Sep 09, 2015: Grilo 0.2.14 released 
- Sep 07, 2015: Grilo 0.2.13 and Grilo-Plugins 0.2.15 released 
- Feb 18, 2015: Grilo-Plugins 0.2.14 released 
- Feb 17, 2015: Grilo 0.2.12 released 
- Aug 25, 2014: Grilo-Plugins 0.2.13 released 
- Aug 24, 2014: Grilo 0.2.11 released 
- Mar 19, 2014: Grilo 0.2.10 and Grilo-Plugins 0.2.12 released 
- Feb 18, 2014: Grilo 0.2.9 and Grilo-Plugins 0.2.11 released 
- Feb 11, 2014: Grilo-Plugins 0.2.10 released 
- Feb 10, 2014: Grilo 0.2.8 released 
- Sep 17, 2013: Grilo 0.2.7 released 
- Aug 25, 2013: Grilo-Plugins 0.2.9 released 
- May 25, 2013: Grilo-Plugins 0.2.8 released 
- May 16, 2013: Grilo 0.2.6 and Grilo-Plugins 0.2.7 released 
- Mar 19, 2013: Grilo 0.2.5 and Grilo-Plugins 0.2.6 released 
- Dec 11, 2012: Grilo-Plugins 0.2.5 released 
- Nov 30, 2012: Grilo and Grilo-Plugins 0.2.4 released 
- Nov 08, 2012: Grilo and Grilo-Plugins 0.2.3 released 
- Oct 05, 2012: Grilo and Grilo-Plugins 0.2.2 released 
- Oct 03, 2012: Grilo and Grilo-Plugins 0.2.1 released 
- Aug 13, 2012: Grilo and Grilo-Plugins 0.2.0 released 
- Aug 10, 2012: Grilo and Grilo-Plugins 0.1.20 released 
- May 24, 2012: Grilo and Grilo-Plugins 0.1.19 released 
- Dec 09, 2011: Grilo and Grilo-Plugins 0.1.18 released 
- Sep 05, 2011: Grilo and Grilo-Plugins 0.1.17 released 
- Jul 08, 2011: Grilo and Grilo-Plugins 0.1.16 released 
- Apr 20, 2011: Grilo and Grilo-Plugins 0.1.15 released 
- Apr 13, 2011: Grilo and Grilo-Plugins 0.1.14 released 
- Apr 06, 2011: Grilo and Grilo-Plugins 0.1.13 released 
- Mar 30, 2011: Grilo and Grilo-Plugins 0.1.12 released 
- Mar 18, 2011: Grilo and Grilo-Plugins 0.1.11 released 
- Mar 04, 2011: Grilo and Grilo-Plugins 0.1.10 released 
- Feb 10, 2011: Grilo and Grilo-Plugins 0.1.9 released 
- Jan 27, 2011: Grilo and Grilo-Plugins 0.1.8 released 
- Jan 10, 2011: Grilo and Grilo-Plugins 0.1.7 released 
- Aug 26, 2010: Grilo and Grilo-Plugins 0.1.6 released 
- May 8, 2010: Grilo and Grilo-Plugins 0.1.5 released 
- March 13, 2010: Grilo and Grilo-Plugins 0.1.4 released 
- March 1, 2010: Grilo and Grilo-Plugins 0.1.3 released 
- February 21, 2010: Grilo and Grilo-Plugins 0.1.2 released 
Future Ideas
Check out our Planned Features if you are interested in our ideas for the future of Grilo or if you want to contribute but are looking for a list of specific tasks.
Also, take a look at the minutes of BoF in GUADEC 2012.
Articles
- Grilo: Integrating Multimedia Content in Your Application. An article introducing the Grilo project and the reasons that led the developers to its conception as well as its role in the GNOME project. 
- An Early Expedition with Media Explorer on Linux. An article discussing media-explorer, a media center application developed by Intel and powered by Grilo. 
Videos
- Grilo: Enhancing the multimedia experience in MeeGo (MeeGo Conference San Francisco 2011) (video) (slides) 
- Grilo: Feeding applications with multimedia content (GUADEC 2010) (video) (slides) 
- Grilo: Integrating Multimedia Content in Applications (ELCE 2010) (video) (slides) 
Documentation
Online Grilo documentation can be found here.
Bugzilla
For reporting errors, enhancements or improvements, use:
https://gitlab.gnome.org/GNOME/grilo/issues
Download
Distros
The following distros provide packages for Grilo:
- Debian
- Fedora >15 
- Gentoo
- Ubuntu
There is a PPA containing the packages for some Ubuntu distributions:
https://launchpad.net/~grilo-team/+archive/ppa
deb http://ppa.launchpad.net/grilo-team/ppa/ubuntu YOUR_UBUNTU_VERSION_HERE main deb-src http://ppa.launchpad.net/grilo-team/ppa/ubuntu YOUR_UBUNTU_VERSION_HERE main
There is also a OpenSUSE Build Service (OBS) containing RPM packages for different distributions:
https://build.opensuse.org/project/show?project=home:jsuarezr:Grilo
If you are interested in packaging Grilo for your distro, let us know!
Release Tarballs
Latest release tarballs can be found at gnome.org.
https://download.gnome.org/sources/grilo/0.2/
https://download.gnome.org/sources/grilo-plugins/0.2/
To make new releases, follow these steps.
Git repository
The GNOME project is kindly hosting the repositories for Grilo:
http://git.gnome.org/browse/grilo
http://git.gnome.org/browse/grilo-plugins
You can check out the current development snapshot using
Grilo Framework
git clone git://git.gnome.org/grilo git clone ssh://USERNAME@git.gnome.org/git/grilo
Grilo Plugins
git clone git://git.gnome.org/grilo-plugins git clone ssh://USERNAME@git.gnome.org/git/grilo-plugins
There is also an updated copy in Gitorious and in Github.
Side projects
Grilo in Totem
As a proof of concept, Iago cooked a Totem plugin based on grilo. You can see a screencast (OGV) about it.
If you are interested in the code, this is the repo of the old version (will only work with very old versions of Grilo):
http://gitorious.org/itoral-totem-grilo
Another version of the plugin based on the GNOME MediaServerSpec was developed by Juan Suarez. You can find the code here:
http://gitorious.org/mediaserver2-plugins/totem-mediaserver2
At the moment we are working with the Totem developers to have a Grilo plugin for Totem integrated upstream. Progress is being tracked here:
https://bugzilla.gnome.org/show_bug.cgi?id=628648
Grilo feeding Rygel
grilo-mediaserver2, implements the D-BUS interface MediaServerSpec, for exposing media content over D-Bus. Rygel can consume content using this interface. Basically, it means that by using grilo-mediaserver2 and Rygel you can expose media content provided by Grilo on the UPnP realm.
If you are interested in the source code, check out:
http://git.gnome.org/browse/grilo-mediaserver2
git://git.gnome.org/grilo-mediaserver2 ssh://USERNAME@git.gnome.org/git/grilo-mediaserver2
Other projects related to Grilo
Follow Grilo
- Mailing list: http://mail.gnome.org/mailman/listinfo/grilo-list 
- IRC: #grilo on GIMPNet
