My LIBMAD based jukebox project

Previously I had ported the mpg123 library to DOS, and used this for several jukebox projects. See the DOS source code for a MPG123 based jukebox page for more details.
The old project had several limitations, which I wanted to overcome, this led to a set of goals:-
Support a wider range of variable bit rate mp3 formats
Looking around I found another MP3 library, the "MPEG Audio Decoder" aka MAD! See the libmad project. It has much better VBR support, and better accuracy and speed.
Support for loss-less formats
I initially added support for WAVs, then I found out about FLAC, and use the flaclib to add support for FLAC files.
Support WSS sound cards under DOS
Wrote a WSS support package
Allow cross fading between tracks
Use a more asynchronous design, which places the decoded audio in a bigger buffer, allowing the next track to overlay the previous one.
Better buffering for less dropouts
The bigger buffer, with better control, provide few (if any) dropouts, even on a 200MHz Pentium class machine.
Network support & USB support (to allow external tracks to be used)
I ported the entire codebase to OpenBSD (and CygWin)
Improved user interface, previewed the tracks by an artist in a different window
Still under devolopment, but provides an easier to use front end.
Avoid having to edit/generate filelists containing which files are what
Now decodes ID3v1 tags in flac and mp3 files, and ID3v2 tags in mp3 files, using them for the artist and track names.

How to Build for DOS

DOS is still the primary target for this project. Although it runs under OpenBSD (and CygWin) this is for future projects, the current one still uses DOS. So most of the development and debugging has been done under DOS. Download the source code
Download and install DJGPP compiler and tools (It's a DOS port of the unix GCC compiler).
Unzip the source code into an folder called app.
I've used the flac-1.1.0 and libmad-0.15.1b libraries, unziped at the same level, so I have a directory with three folders, app, flac-1.1.0, libmad-0.15.1b in it.
From the app directory type
make -f make.dj
and it should all build!


Enjoy it, Roger.

Links

MP3 compressors compared





Links

Other band/festival pictures
Homepage.

Copyright © 1998..2008 Roger Walker. All rights reserved.
This work is licenced under a Creative Commons Licence.
Creative Commons Licence

This page was lasted updated on Friday, 04-Nov-2011 08:00:24 GMT

This content comes from a hidden element on this page.

The inline option preserves bound JavaScript events and changes, and it puts the content back where it came from when it is closed.

Click me, it will be preserved!

If you try to open a new Colorbox while it is already open, it will update itself with the new content.

Updating Content Example:
Click here to load new content