XBMC is an open source software media player and entertainment hub available on Windows, OSX, Linux, and iOS, and available in beta form on Android and the Raspberry Pi.

2012 was XBMC's second year participating in Google Summer of Code, having previously been involved back in 2008, and it was enormously successful with all four accepted students completing their projects and adding valuable code to the XBMC base.

Sascha Montellese set out to provide a simpler and more powerful method for filtering the contents of a user's XBMC Media library. While theoretically a simple task, Sascha found himself upgrading virtually every piece of the XBMC library/database, providing vast improvements for the entire user experience, all to ensure that his advanced filter could reliably filter by nearly all popular media categories, including rating, progress, release date, genre, etc.

While Sascha sought to make the data in XBMC's library more easily accessible for users, Tobias Arrskog's goal was to more efficiently and effectively gather that data from the internet using a data-driven approach. After extensive statistical research, Tobias created a data scraper called Heimdall, designed to be both more efficient and "future proof," allowing for the addition of future media types, such as games.

Tobias sought to improve the data inside the XBMC library and Sascha sought to improve the XBMC library itself. Alasdair Campbell, in turn, sought a way to better share the media of the XBMC library with a user's entire media viewing ecosystem. To that end, Alasdair's project was to improve UPnP support on the XBMC UPnP server. By the end of the summer, Alasdair had realized a great deal of his goal, marking the first steps to a truly practical XBMC Server.

Finally, Andres Mejia's project differed somewhat from the other three projects. While the other projects were designed to enhance the XBMC library in various ways, Andres was tasked with creating an XBMC Test Suite so that XBMC developers could more easily test for various bugs before, during, and after the build process. Andres's Test Suite was merged into the XBMC codebase at the end of the summer.

When XBMC applied for Google Summer of Code in 2012, our entry was thought of primarily as a nice community event that could get more developers excited about the project. It has been incredible to discover the extent to which this program has vastly improved the codebase in ways that are reaching our users almost immediately. We will be very excited to apply for future instances of Google Summer of Code.

By Nathan Betzen, XBMC Google Summer of Code Administrator