Qball's Weblog
gmpc
What is gmpc?
gmpc, Gnome Music Player Client, is a graphical fronted for the music player daemon. It’s written using the gtk+ toolkit. It’s one of the oldest, still active, clients. Gmpc is my quest/search for a good music player.
Why mpd
There was nothing else that could compare. I build a itx box, and was looking for a nice server-client model player. I’ve tried several program, I kinda stick to mpd for a few reasons.
- It just worked, not many others did that.
- Little dependencies, and ran fine on lower end machines.
- Libmpdclient, this was a big one, a nice way to write a small program to connect to the daemon. For other programs I had todo everything from scratch.
- Good support, shank (the mpd developer) fixed bugs before I could finish my sentence.
Focus points
There are several things I find important in gmpc.
- It must be fast. One thing that made me stick to gmpc it’s fast. I want it to stay fast, no matter if I am on a slow network, or try to load 20.000 songs in one big playlist.
- light weight. I can’t stand programs like amarok or banshee that easily use up 200-300mb of memory. Gmpc starts up with a memory usage of 2.3 mbyte.
- Easy song browsing. I have allot of music ripped to my pc, so I want an easy way to browse it. I try to provide this in gmpc.
- Portability. Gmpc runs on linux, freebsd, mac osX, windows.
- Stay up-to-date with mpd.
Features
Out of the box gmpc has the following features:
- Control mpd player
- Set cross fade, enable/disable outputs.
-
Show playlist, show database in several different ways:
- List the file-system as it is on the hard disk.
- Sorted by artist/album.
- Notification popup.
- Metadata support. It can show cover art, artist image, album information and song lyrics.
- Search it, by every field.
-
Sorted on id3 fields that can be defined by the user. f.e. build a tree sorted like: genre/artist/album or for example date/genre/artist.
- Artist/Album based listing while showing all the meta data that is available.
- Profile support, So you can easily switch between different mpd’s.
- Download and parse pls/m3u’s and add them to the playlist.
-
lots more But this is not all, I don’t like to add tons of options. So gmpc has a plugin system that can be used to extend gmpc functionality. The following plugins are at the moment available, and more are planned:
- Amazon Album Info fetcher, This plugin fetches cover art, and album information from amazon.
- Music Dir fetcher. This plugin can fetch metadata from the music directory. (But requires access to the data).
- Last.fm artist art fetcher. Fetches artist images from last.fm.
- Auto Playlist creator. Can fill the playlist with songs from the database depending on a set of user defined rules.
- Random Playlist creator. Creates a playlist with X random songs from the database.
- Magnatune browser, allows you to browse and play music that is available on magnatune.com.
- Lyric Fetchers. Fetches song lyrics from several locations.
- Wikipedia: Embeds firefox inside gmpc and shows the artist page for the currently playing song
- Xosd plugin: Puts a osd with song information on the screen using libxosd.
- Qosd Plugin: Same as the xosd plugin, but uses a custom overlay.
- Time plugin: Allows you to stop/start mpd at a certain time.
- Server stats: Shows detailed statistics about mpd and the database.
ToDo
Like any product, gmpc is not done. There are several things that needs attention.
- Translations. The following translation are available, but not all up to date: de fr gl nl pl ru.
- Documentation. This is something I am not very good at, I’ve tried to get something done, but well as you can see, it needs work. http://gmpc-manual.sarine.nl/
- Original strings possible need attention. Written English isn’t very good.
- Code cleanups, not directly important for the user. But some stuff really needs updating.
- Icons. Several icons are missing, or not fitting icons are used.
- Better plugin api.
GRRR. why does wordpress mess up the markup, it shows correctly in the editor.