Specifications for this cycle :

Default Music Player - WORK IN PROGRESS

I also planned Ario 1.2 and Quod Libet 2.0 in a first time, but Ario isn't trivial at all to setup, and Quod Libet seems to be having trouble with playlists. I don't think end users would accept that.

I prefer being honest, I currently use Exaile as a player, and I'm not feeling comfortable at all with Mono on a default install. I've been trying not to let this influence the review, but I ought to mention it.

Summary

Everyone listens to music nowadays. Users expect their computer to be a media centre, and they expect to can play music in the background while doing anything else with their computer. The music player is probably the second most important application after the web browser.

Release Note

Not applicable until a choice of application has been made. At the discretion of the release manager (or the drawer of the spec, once approved by the developers team).

Rationale

Listen 0.5 has been doing the job we expected him to do : play music with little RAM usage. The current development version eats up much more RAM, which was the very advantage of Listen. Thus, it is time to explore what other players can do with the same RAM usage.

Use cases

I'm going to write the most common expectations I can think of. Some are contradictory but not everyone has the same tastes, so we expect players to be flexible.

The specification

Integration / Coherence

Screenshots

Listen

Exaile 0.2

Banshee Music

Banshee Video

Rhythmbox

listen_tb.png

exaile-0.2_tb.png

banshee-music_tb.png

banshee-video_tb.png

rb_tb.png

Full size

Full size

Full size

Full size

Full size

The screenshot for Exaile is 0.2.14 because the 0.3.0 branch's GUI is not finished yet. There also is a screenshot of Banshee's video mode.

Usability

So far, no player has an optimal approach and takes the user by the hand to tell him/her how to get started with his/her collection. I think this could be improved. Edit: the day after i wrote these lines, Exaile implemented such a function in it's trunk. I can't grab Git trunks from here, if you follow Banshee or RB's trunk let me know.

Performances / Resource usage

Listen

Exaile

Banshee

Rhythmbox

Comments

Private dirty in Heap

51.3

46.0

41.7

31.0

The python apps are heavier

g-s-m's write memory

74.1

55.1

69.5

41.6

Banshee doesn't share libs so it weights more in the end

Write mem after some time

118.9

56.7

94.1

50.4

Exaile is the most efficient regarding leaks

Features - TODO

Thank you if you've read until there. I'm too lazy to extensively use all the apps and decide about their features. I think Listen is a bit late compared to other players, and Exaile is probably a little too due to the time it took to write the 0.3 release (but plugins in Exaile are really, really easy to write). Banshee and RB have a good integration with different music services. For the rest the apps are sensibly the same without digging deeply.

Main Features

Advanced Features

Features worth compared to the rest

Extra maintenance work after the spec / Quality of relationship with upstream

Issues that need solving - TODO

That would be too long to write too. I consider Exaile the most suitable choice, so I'll focus on bugfixing and GUI improvements for Exaile, and I think the TODO list is their whole buglist, which has decreased a lot but which is still not empty (yet).

Upstream

By the Xubuntu team

Comments

I reviewed CPU usage of many popular players and Exaile did the worst, you should be able to easily come to the same results with the Phoronix Test Suite. http://gquigs.blogspot.com/2009/08/music-player-review-cpu-performance.html

Playground - TO BE ADDED ABOVE

Key name

Play*

Stop

Prev

Next

Comments

Listen

Play doesn't pause if already playing | Stop doesn't work

Exaile

The xlib plugin is not ported to 0.3.x yet but there is a CLI available

Banshee

There is a CLI available but there isn't toggle play / pause in the CLI (only play and pause)

Rhythmbox

The Previous / Next buttons only work if there is a song resumed or paused, but not stopped

* usually labelled as Play/Pause on keyboards, so i expect them to work as Toggle Play/Pause

Format

Ogg

Flac

MP3

WMA

WAV

Listen

Exaile

Banshee

Rhythmbox

Xubuntu/Roadmap/Specifications/Karmic/DefaultMusicPlayer (last edited 2012-03-25 16:46:56 by nblzone-227-162)