Monday, June 1, 2009

Banshee 1.5.0 released!

Intro
After six months of work by more than 30 contributors, we have released Banshee 1.5.0 (aka 1.6 beta 1)! We have an astounding 95 people listed in our developer credits now!

As I recently tweeted, we are also lighting up bugzilla. So far in 2009, # bugs: 950 commented on, 501 closed, 428 filed, 171 with new patches attached!

Release Information
This is a beta release, debuting a lot of big underlying changes. It also has tons of fixes, polish, and performance improvements. Some feature highlights:

  • BPM Support
    With Banshee 1.5.0, you can autodetect the BPM of songs in your library, or you can manually set it by tapping the beat. Then, you can sort, search, or make smart playlists based on BPM.


  • Automatic Scoring
    As you play songs in Banshee 1.5.0, it will automatically assign them scores (0 - 100) based on if/when you press skip.


    BPM and Score columns

  • Rhythmbox Migrator
    Banshee 1.5.0 can import your Rhythmbox collection, including ratings, play counts, and playlists.

  • Separate Library Locations
    You can now specify separate library locations for your music, video, and podcast libraries.

  • Creative Commons Integration
    A new column displays Creative Commons licensing info where applicable (and properly tagged). The license can be edited in the track editor (see below). There is also a new default Last.fm station for songs tagged 'Creative Commons'.

    Track editor, showing BPM and License URI

See the 1.5.0 release notes to read about and see screenshots of the dozens of enhancements and fixes!

Get It!
Since this is a beta release, we are not distributing this through the same channels as our stable releases. Visit our download page or talk to your distro to see if they have a beta channel for Banshee.


Digg It!

Wednesday, April 15, 2009

Putting Banshee to Work

Recently I have spent some time creating a smart job scheduler for Banshee. Some jobs we have include

  • Importing
  • Saving metadata to file
  • BPM analysis

BPM analysis and saving metadata to file jobs should be paused while doing speed sensitive jobs like importing. To achieve this, each job has priority hints and a list of resources it heavily uses.

The priority hints are
  • SpeedSensitive, for jobs the user is actively waiting on, such as importing
  • LongRunning, for things like BPM or Mirage analysis of the entire library

And the resources are customizable, but currently I'm using
  • CPU
  • Disk
  • Database

If two jobs use the same resource
  • SpeedSensitive jobs run immediately (more than one ok)
  • Normal jobs (not SpeedSensitive or LongRunning) then follow, one at a time
  • LongRunning jobs then follow, one at a time

It is a bit of pretty low-level polish and a pretty simple idea, but it will give better performance and a better experience. The code is in a git branch for the moment, hopefully to be merged into trunk before 1.6.

Wednesday, March 25, 2009

Hack Banshee all Summer for Fun and Profit

As I mentioned the other day, now is a great time to get involved with Banshee, and the deal is even sweeter if you want to work on it full-time this summer and get paid $4,500 through Google's Summer of Code.

We have four developers (Bertrand, Eoin, Scott, and myself) willing to mentor, and we have some rocking project ideas we'd love you to tackle:

  • Banshee Web Content
    Make it easy to browse, search, view, and subscribe to content from one or more of archive.org, miroguide.com, spokenword.org, npr.org

  • Telepathic Banshee
    Let users share files and information (recommendations/ratings, current playing info, BPM analysis) with other users on their IM buddy list(s) via the Telepathy communications library and, likely, its Tubes data-transport mechanism.
    There is already a submitted proposal for this project.

  • Recommendations-based Play Queue
    Modify the Play Queue to have an option to automatically add songs recommended by Last.fm, Mirage, etc.

  • Banshee UPnP
    Add a UPnP extension to Banshee. More info.

  • Banshee in Context
    Show contextually relevant concert info, flickr photos, wikipedia info, etc.
Your application is focused around a particular project proposal, but you can apply multiple times. And you are not limited to the above ideas if you have your own.

Feel free to e-mail me personally, e-mail the banshee-list, or chat us up on IRC if you have any questions or want feedback on your application. Make sure you apply with GNOME as the mentoring organization and read the GSoC FAQs.

You have a week and two days (until Friday, April 3rd) to apply, so get on it!

Tuesday, March 24, 2009

An Update on Banshee

A Stable Release
Banshee 1.4.3 was released on March 4th. It's a stable release fixing several freezes and MTP device support bugs.

Leaping Forward
Things are moving ahead at an awesome pace in trunk! Our community members are consistently in the lists of top GNOME bug filers, closers, patch contributors, and patch reviewers. You can keep informed about all their fixes and features landing in trunk in the ChangeLog.

I hope we'll have a release from trunk – called 1.5.0, aka 1.6 beta 1 – very soon. We have over two months of awesome fixes and new features to unleash.

If you want to hack on Banshee, there has never been a better time. There are more than four of us actively reviewing Banshee patches from long-time regulars and out-of-the-blue newcomers, and we're waiting to hear from you!

Bug Reduction Effort
A few weeks ago we had over 200 bugs with no response. Today, due to the efforts of our bug triaging team, we have 110. Anybody can help us out by reviewing the list of Banshee bugs, correcting the metadata fields, asking for more information, providing insights, confirming they can reproduce the bug, letting the reporter know somebody is out there and cares! etc.

To get started, do a bit of reading, find a bug that looks lonely, and update or comment on it with your thoughts on how to move it forward. Join us in #banshee to get pointers and assurance.

Thursday, February 12, 2009

Parasite Packages

Last night I built packages for Parasite in my OBS home repository, available for openSUSE 11.0, 11.1, and Factory.

To use Parasite with Banshee, for example, just run:

$ GTK_MODULES=gtkparasite banshee-1
Then you can inspect widgets, and even edit their properties in real-time — a great way to get a widget tweaked just right without having to restart the app.

Using Parasite with BansheeUsing Parasite with Banshee - "Hello Planets!"

Thanks to Christian Hammond and David Trowbridge for such a cool tool!

Wednesday, January 21, 2009

Banshee 1.4.2

Yesterday we released Banshee 1.4.2, a stable release full of two months of bug fixes and polish.

Fixed and improved are RSS feed parsing, library rescanning, occasional startup freezes, launching on device insertion, several crashers, improved playback on OS X (still a technology preview/alpha release), and much much more - 62 bugs fixed in total.

Check out the full release notes for details of other bugs fixed and how to upgrade!

Digg It!

Wednesday, January 14, 2009

Catching Up

Patch Reviews
In the last 24 hours or so I reviewed all 62 unreviewed patches for Banshee. The oldest was over 800 days old – very sad. But now that we are caught up, patches will not slip through like that again. It's thrilling to be reviewing patches and within hours get comments and updated versions from the contributors - pumping fresh blood into the project!

TagLib#
Banshee uses TagLib# for metadata (artist name, track title, disc number, etc) reading and writing, and we recently took over maintaining the project. You can file bugs and patches against it in BGO. The source is still in Mono SVN. Releases and a new website will probably soon be hosted on banshee-project.org.

Banshee Status
We are very close to releasing Banshee 1.4.2 with a lot of good bug fixes and polish since 1.4.1. After that will come developer releases, and then Banshee 1.6 with awesome new features. I love working on new features; I've already been playing with some in my temporary (yay GNOME going to git!) git branch:


Creative Commons licensing column


BPM automatic detection and manual tapability


Fix metadata dialog (not finished)

We have a handful of really polished patches from various contributors that have been reviewed, iterated on, and are ready to commit after 1.4.2 is released, including:
  • Rhythmbox migrator
  • Option to read/write ratings and playcounts to files
  • Torrent support for podcasts (like Miro has)
  • Scoring of tracks based on number of plays/skips (similar to Amarok)
  • Smooth scrolling
In addition to these nearly-finished features, I'm sure there will be many other cool things that make it into 1.6. If you want to help out by translating, testing, triaging bugs, or writing code, please do! Join us on our mailing list/forum or in IRC for advice on getting started.