Please note that User Registration has been temporarily disabled due to a recent increase in automated registrations. If anyone needs an account, please request one here: RequestAccount. Thanks for your patience!--Wmat (talk)
Please email User:Wmat if you experience any issues with the Request Account form.

Didj MP3 Streaming

Revision as of 20:49, 23 April 2010 by Nirvous (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


This page describes how to play mp3 format audio streams and files on your Didj using madplay, a command-line mp3 player.


In this example we assume you are using the buildcross-generated cross compiler environment and have properly set your environment variables for cross-compilation.

Download the latest sources for the following packages:





Building madplay

Create a folder called madplay_build and then extract these archives into folders in madplay_build.

Set the following variables:

export CC=arm-linux-uclibcgnueabi-gcc
export CXX=arm-linux-uclibcgnueabi-gcc
export CPPFLAGS='-I/full/path/to/madplay_build/libmad-0.15.1b -I/full/path/to/madplay_build/libid3tag-0.15.1b -I/full/path/to/madplay_build/zlib-1.2.5'
export LDFLAGS='-L/full/path/to/madplay_build/libmad-0.15.1b -L/full/path/to/madplay_build/libid3tag-0.15.1b -L/full/path/to/madplay_build/zlib-1.2.5'

Build zlib

Enter the directory zlib-1.2.5 and run:


then run


Build libid3tag

Enter the directory libid3tag-0.15.1b and type

configure --host=arm

then type


after which, type

cp .libs/libid3tag.a . 

(note the trailing dot)

Build libmad

Enter the directory libmad-0.15.1b and type

configure --host=arm

Note: Edit the Makefile, removing '-fforce-mem' from the CFLAGS directive.

then type


after which, type

cp .libs/libmad.a . 

(note the trailing dot)

Build madplay

Enter the directory madplay-0.15.2b and type

configure --host=arm

then type


Finally, strip the madplay file as follows:

arm-linux-uclibcgnueabi-strip madplay

Install madplay

Transfer the file, plus one or more MP3s of your choosing, to your Didj.

Make sure the lightning application is stopped. On the Didj:

/etc/init.d/lightning stop

Playing MP3s

To execute madplay, On the Didj:

madplay yourfile.mp3

Streaming MP3s

In order to stream a networked MP3 stream, first set up networking. (You can using the information in and to set up networking and routing)

To stream audio, wget a stream (the example is NPR news), while piping the stream through madplay:

wget -O - | ./madplay - 

Note that .pls files are not supported in madplay. (but you can open them with a text editor to get the URL)

Enjoy the sound!