[maemo-users] Steve's Ranty Review #1: N800 ogg support

From: Steve Greenland steveg at moregruel.net
Date: Thu Oct 18 22:58:11 EEST 2007
According to Steve Greenland <steveg at moregruel.net>:
> Onto the players.

Austin Che wrote and pointed out that I'd missed the MPD (music player
daemon) port. This intrigued, because I use and quite like MPD on my
home system. For those unfamiliar with it, it splits the player into
the server process that actually does the playing and file management,
and an independent client to send instructions. There are many clients
available, from the standard command line 'mpc' to GUI and web-based
clients. The client doesn't have to be on the same machine, although of
course for a standalone N800 they'd need to be.

So I installed mpd and a bunch of libraries from garage.mpd.org. (Insert
usual rant about packages not in repo). There's also other dependencies
that are in the repo, but you still have to deal with them by hand
because dpkg doesn't know to call apt-get. (Installing via the AM may
make this easier.)

One notable dependency is adduser, which brings in perl5-base. All this
so we can create an 'mpd' user on the install. While this makes sense in
a standard desktop or server situation, and is normal Debian practice,
on the single user N800 system this could just as easily run as 'user',
avoiding a pretty big dependency.

I modified "/etc/mpd.conf" to point to /media/mmc1/oggs, and ran
"/usr/bin/mpd --create-database" to scan the files, and "/etc/init.d/mpd
restart" to restart the daemon.

For clients, I tried both mmpc and glurp (which is nominally ITS2006,
but seems to work on ITS2007 fine.)

MMPC has a simpler interface. Glurp has a more complete interface, but
the tiny buttons pretty much require a stylus for fat-fingered people
like me. MMPC doesn't seem to have a way to add an entire album to the
playlist at once. Glurp browses the library by filesystem layout, rather
than using the tags to sort by artist/album. Glurp allows you to request
a library update (aka rescan); MMPC doesn't. Glurp struggled with my
home servers ~4000 entry playlist; MMPC did better. Try'em both; I'll probably
stay with MMPC for remote controlling my home system...

...but MPD is not a good solution for an N800 standalone player *at this
time*. There are two big issues.

1. CPU usage. MPD doesn't use the tremor vorbis library, and thus
playing an ogg sucks down about 75% of the CPU. In comparison, with
Kagu, the osso-media-server process uses about 25% of the CPU. (Kagu
sucks another 10-15% if the screen is active.)

2. As a straight port of the Debian MPD package, the mpd server restarts
automatically on reboot *and resumes playing the oggs*. This is not
good, because it slows down the rest of the reboot process quite a bit,
and, since there isn't any free CPU, it sounds *dreadful*.

Both of those are fixable.


Steve Greenland
    The irony is that Bill Gates claims to be making a stable operating
    system and Linus Torvalds claims to be trying to take over the
    world.       -- seen on the net

More information about the maemo-users mailing list