The Maemo Record

Music and media players on Maemo

Music and media

PACKAGEmedia
SECTIONthe software
IN THE LINEcore: the platform itself
ANSWERSn900 music player
ARCHIVED LINKS1 old article address points here
A sequence of labelled boxes joined by a rule, showing music and media in order.

The N900 music player is the Media Player that Nokia shipped with Maemo 5, a GStreamer based application backed by the Tracker metadata index, and it is only the starting point on this platform: because Maemo 5 is a Debian based Linux system, the same device also ran desktop software such as mplayer and community clients such as despotify, installed as packages rather than bought from a storefront.

The stock media player on Maemo 5

The stock media player on Maemo 5 handles both music and video in one application, with the library built by Tracker, the metadata indexer that scans the internal storage and the memory card and answers queries about artists, albums and tracks. Playback goes through GStreamer, the same media framework used on desktop Linux, so codec support on the device is a question of which GStreamer plugins Nokia licensed and shipped rather than a question of what the application itself understands. The N900 plays the common music formats out of the box, and it decodes video at the panel’s full 800×480 for the profiles the hardware path supports. The same framework fed the video call preview from the front facing VGA camera in the Conversations application, which is one of the places where the device’s Linux underpinnings stop being an abstraction and start being the reason a feature exists.

Two hardware details shaped what people did with it. The 3.5mm socket carries composite video out as well as audio, so the phone drives a television with the right cable, and the device has an FM transmitter as well as an FM receiver, which is how a great many owners fed a car stereo before Bluetooth audio was universal. Both features are part of the hardware rather than of any one application.

Despotify, the open source Spotify client on the N900

Despotify was an open source client for Spotify, written in C by a group of developers who reverse engineered the service’s protocol, and it ran on the N900 because the N900 was close enough to a Debian machine that a program written for desktop Linux needed porting rather than rewriting. This domain covered it in 2009, and the article is one of the reasons old links still arrive here. Despotify was never authorised by Spotify, it required an account with the service, and it stopped working when Spotify retired the protocol generation it had been built against. There is nothing to install now and this site distributes nothing, but the fact is worth keeping straight: a commercial streaming service was running on a Nokia phone in 2009 through a third party client that the service had not sanctioned, on a device where installing such a thing meant adding a repository rather than jailbreaking anything.

mplayer, ported straight from the desktop

mplayer ported straight from the desktop is the clearest single example of what the platform was for. The desktop player was packaged for Maemo with a touch friendly front end and it played the containers and codecs the stock application refused, including AVI, MKV and DivX and XviD encoded files, by decoding them in software on the 600 MHz Cortex-A8. The cost was exactly what you would expect: software decoding of a high bitrate file drains the 1320 mAh battery quickly and can drop frames where the hardware assisted path would not. That trade, more capability for more power, is the trade the whole platform made, and it is why a list of what shipped on the device understates it so badly. The fuller picture is under What you could actually install.

The podcast and library clients from the catalogues

The podcast and library clients from the catalogues filled the gaps around the stock player, and most of them came from the Extras repositories rather than from any storefront. The ones that mattered on the N900 and its predecessors:

  • gPodder, a podcast client that had already been maintained across desktop Linux and the earlier internet tablets before it reached Maemo 5.
  • Panucci, a player built for podcasts and audiobooks, with the resume behaviour long spoken content needs and the stock player lacks.
  • Open Media Player, a community written alternative front end for the same underlying media stack.
  • Canola, the media browser from the 770, N800 and N810 era, which set the expectation on these devices years before the N900 existed.

A handful of media applications did reach the device through The Ovi Store after it arrived in 2010, but the storefront was never where the interesting audio software lived, for the same reason it was never where the interesting mapping software lived, as set out under Maps and navigation.

A handheld that plays what a laptop plays

A handheld that plays what a laptop plays was not a marketing line in 2009, it was a measurable difference. Phones of that period played the formats their vendor had licensed and nothing else; adding a codec meant waiting for a firmware update or doing without. On the N900 a missing format was a package. That single difference is what the phrase meant, and the same logic covered the browser, the shell and the mail client. It also explains why the device attracted people who did not want a phone at all: the hardware keyboard, the 32 GB of internal storage and a real package manager made it a very small computer that happened to have a radio.

The N900 against the N97 and the N8 for media

AttributeNokia N900Nokia N97Nokia N8
PlatformMaemo 5, Debian based LinuxSymbian S60 5th EditionSymbian^3
On sale fromNovember 2009June 20092010
Screen3.5in 800×480 resistive3.5in 640×360 resistive3.5in 640×360 AMOLED, capacitive
KeyboardSlide out QWERTYSlide out QWERTYOn screen only
Video outComposite through the 3.5mm socketComposite through the 3.5mm socketHDMI
Adding a codecInstall a packageWait for a firmware updateWait for a firmware update

Set against the N97 and the N8, the N900 loses on two counts and wins on one that decided it for most of the people who bought it. The N8 is the better appliance: an AMOLED panel, HDMI out and a 12 megapixel camera make it the stronger device for playing and capturing. The N97 was the closer sibling in shape, with the same slide out keyboard idea a few months earlier on Symbian. The N900 is the only one of the three where the media capability was open ended, because the software came from repositories and could be replaced.

What became of the media stack

The media stack outlived Maemo 5 more or less intact. GStreamer and Tracker carried forward into MeeGo, and the community builds described under MeeGo on the N900 put that same stack on the same hardware with a different shell over it. Harmattan on the N9 in 2011 kept GStreamer underneath and put Qt Quick on top, and Sailfish OS, which Jolla built from that lineage and still ships, uses the same framework again. The player application changed name three times. The plumbing under it did not.

Where to go next