ELMP-TNG (Embedded Linux MP3 Player - The Next Generation) Backend (elmpd) Version 0.2 (20010730)
What it this?
The ELMP-TNG (just like the original ELMP) is a soft- and hardware project to create a stand-alone digital music player based on low end PC hardware plus some DIY electronics, running the Linux operating system. There are many similar commercial devices available these days, but this project aims to provide features not typically found in those machines.
ELMP-TNG shares no code with the original ELMP, though many ideas originate there...
For more detailed information please see the website located at: http://elmp-tng.sourceforge.net/
Notes for this version:
elmpd v0.2 is quite usable, and even quite stable. There is still no client (use telnet, or write your own). The client library is not finished, and the plugin APIs are not quite finalized, but will be soon.
What works:
- Creating and destroying playlists.
- Adding files to playlists, removing them.
- Viewing playlists ("dumping" them).
- Sorting playlists.
- Playing files. (pause, seek...)
- "Watching" player status.
- SAMBA, HTTP and file VFS plugins.
- MAD MP3 decoder plugin.
- OSS output plugin.
How to use it:
Have a look in the "docs" directory, there is a sample elmp.cfg file.
Type "elmpd -h" to get help on command-line switches.
The best client currently is "telnet". Start elmpd and telnet to port 61248. You can find a description of the commands in ESP.txt, most of them work as advertised. A good start is "playlist add dir rec <url>" where <url> is the full path to some nice tunes, something like "file://data/mp3" or "smb://server/mp3/rock". You can also try your favourite shoutcast/icecast station.
One important note: libsmbclient will refuse to work if you don't have a "~/.smb/smb.conf" file. (An empty one works just fine). I consider this a bug in libsmbclient. Simply create one like this: "mkdir ~/smb ; touch ~/smb/smb.conf"
Known bugs:
Reports please!
How to compile:
(Note that I put this last so you had to read the other stuff first).
The configure script now checks for needed libraries, and disables certain plugins if not found. You won't be able to do much without at least libmad though...
MAD (libmad), http://www.mars.org/home/rob/proj/mpeg/ libsmbclient, SAMBA CVS or http://130.236.229.26/download/elmp-tng/misc/
As long as you have those it should be a straight "./configure && make && make install"
If you would like to see debug information, pass the parameter "--enable-debug" to the configure script.
Good luck, feel free to provide feedback (and patches).
- TODO
A lot!
