Togaware OpenMoko Neo1973
Desktop Survival Guide
by Graham Williams
Google

Media Player

The OpenMoko Media Player is a clean and well designed interface for playing audio on the Neo1973, including mp3, aac, and ogg encodings. As of February 2008 the application is basically operational for a day-to-day user. Standard play lists (i.e., .xspf files) are supported. The Media Player works well with either a stylus or a finger.

The user interface supports the usual controls expected from a media player. We can play/pause a track, seek forward and backwards, and seek to the beginning and end. The slider allows us to directly seek through a track. Volume control does not seem to functioning at present (080229).

The bottom tabs access the basic control interface, the play list interface, and the selection of specific tracks from a chosen playlist.

The currently playing song album cover, artist and title are listed in the top half of the screen, together with the position within a playlist (left side) and the position within the track (right side).

Figure 13.1: Media player.
Image neo_mediaplayer_money

If on starting up the Media Player we get a gstreamer error about the resource being busy or not available, then try killing pulseaudio.

neo$ killall pulseaudio

This needs to be done from the Neo's Terminal application or through a ssh connection. Then start the Media Player again.

The ps command shows that pulseaudio is running with the following arguments, in case you need to restart it:

neo$ ps ax | grep pulse
[...] pulseaudio --no-cpu-limit --resample-method=trivial \
                 -D -nF /etc/pulse/session

Standard xspf (XML Shareable Playlist Format) play lists are supported. For example, a simple play list for a couple of songs on the SD card, together with some cached meta information (creator and title) might look like:

<?xml version="1.0" encoding="UTF-8"?>
<playlist version="1" xmlns="http://xspf.org/ns/0/">
  <title>Roger Waters</title>
  <image>file:///media/card/Music/intheflesh.jpg</image>
  <trackList>
    <track>
      <title>Money (OGG)</title>
      <creator>Roger Waters</creator>
      <location>file:///media/card/Music/roger_waters-money.ogg</location>
    </track>
    <track>
      <title>When The Tigers Break Free (MP3)</title>
      <creator>Roger Waters</creator>
      <location>
        file:///media/card/Music/roger_waters-tigers_break_free.mp3
      </location>
    </track>
    <track>
      <title>Money (WAV)</title>
      <creator>Roger Waters</creator>
      <location>file:///media/card/Music/16-money.wav</location>
    </track>
  </trackList>
</playlist>

The command line media players for the Neo1973 include the ogg123 program. After connecting our Neo by USB to a host computer (see Section 15.1) we can copy across some music files:

host$ scp 16-money.ogg root@192.168.0.202:/media/card/Music/

Then on the Neo:

$ ogg123 16-money.ogg 

Audio Device:   OSS audio driver output 

Playing: 16-money.ogg
Ogg Vorbis stream: 2 channel, 48000 Hz
Artist: Roger Waters
Date: 2002
Genre: Rock
Album: In The Flesh - Live
Track number: 16
Title: Money
Time: 03:40.95 [02:25.77] of 06:06.72  (136.8 kbps)  Output Buffer  96.9%  

Use the alsamixer program (see Section 13.3 to adjust the volume controls.

For legacy mp3 format use the madplay to play the music. This uses the MPEG Audio Decoder (i.e., mad).

Copyright © 2007 Graham.Williams@togaware.com
Support further development and obtain the PDF version of the book.
Brought to you by Togaware.