SoC 2006: Banshee
Contents
Current Status
On Hold
This project was completed for Google Summer of Code but was not able to be merged into Banshee until months later. The main tag reading framework in Banshee had moved to Gstreamer which does not support Creative Commons tags. Another Google Summer of Code project this year was able to get a patch to Gstreamer to make this possible. When I have more time, I will try and recreate this plugin and project for Banshee.
What is it?
ccBanshee is a Google Summer of Code (SoC) project that enables Banshee users to view, verify, and manipulate license metadata embedded in media files. Verification is the main goal of this project and is explained in greater detail on the MP3 page.
This project has three parts to it:
- cc-sharp Library: a C# library for verifying Creative Commons license metadata.
- ccBanshee Patch: a patch which enables Banshee to display and store license information in the library.
- License Verifier Plugin: a Banshee plugin which ties cc-sharp to ccBanshee using Banshee's plugin interface.
How Does it Work?
Where to Get it?
ccBanshee License Viewing Patch
The code is available on the Creative Commons Source Forge Subversion respository for browsing or downloading with this Subversion command:
svn checkout https://svn.sourceforge.net/svnroot/cctools/ccbanshee
cc-sharp
Information is available on the cc-sharp wiki page.
Banshee License Verifier Plugin
The code is available on the Creative Commons Source Forge Subversion respository for browsing or downloading with this Subversion command:
svn checkout https://svn.sourceforge.net/svnroot/cctools/banshee-license-viewer-plugin
How to Run it?
ccBanshee Patch
- Backup your Banshee music database (located in ~/.gnome2/banshee/banshee.db).
- Copy everything from ccbanshee/trunk/ to your banshee/ CVS directory.
- Make and install Banshee CVS.
cc-sharp Library
- Make and install cc-sharp.
- Copy cc-sharp.dll to /usr/lib/banshee/ or wherever your Banshee CVS install is.
License Verifier Plugin
- Make and install the plugin.
- Run Banshee.
Google SoC Roadmap (2006)
Project start (May 23)
May 24
- Planning and Design
- Poke around in code and network with other developers
Notes: I'm in Russia durring this time and do not have adequate computer resources for coding.
June 11
- Lay out Banshee code for initial proof-of-concept code
- Modify database to handle basic license information
- Update library view to show database changes
Notes: The current state of Banshee will make modifying the database and PlaylistView difficult. The library view is hardcoded and a large amount of time will have to be devoted to designing an acceptable license view addition.
June 18
- Implement MP3 ID3 tag parsing
- Integrate with whatever code already exists in entagged-sharp
- Additions and revisions needed in entagged-sharp
Notes: Many updates have been made to the way license metadata is storied in the ID3 tags. More attention will be given to updating entagged-sharp to these changes if not already done.
June 25
- Integrate C# CC license wrappers
- Add icons to represent each license property
Mid-project (June 30)
July 2
- Add claim validation functionality
- Write necessary network code
- Implement XML parsing of page claim validation
July 16
- Add support for other media types such as OGG
July 23
- Banshee plugin abstraction (tentative)
- Modify and update Banshee plugin API to handle database changes and library view access
- Abstract Banshee-ccLicenser to plugin API
Project end (August 21)
Developers
- Luke Hoersten - Student developer
- Nathan Yergler - Google SoC mentor