|
|
Welcome to the homepage of the carmp3 project
About | Version
History | License | How to install and
configure | Downloading
carmp3 | Operating
carmp3 | Pictures!
Use spare parts to create an
mp3/cd player more powerful than anything you can buy off the shelf
:-) carmp3 is a basic system for creating an embedded system
mp3/cd player. I wrote this to allow me to play mp3s (and in the
first public release it also plays audio CDs) in my car without
having to worry about traditional computer issues such as needing to
see the command line, or typing commands while driving. I wrote it
to be very modular with every program performing a seperate task,
and they all work together to create the full effect. Enjoy. Patches
and submissions welcome!
0.50 - First public
release!
carmp3 is licenced under the
GPL
The first
step to successfully configuring and installing this software is to
prepare a machine with a minimal OS install. In writing and testing
I use Debian GNU/Linux. Other
distributions may work, but this is currently the only distribution
supported by me. This machine should be configured to start
almost nothing on boot. at, cron, et al, are un-necessary on a
machine used for this software. You should basically have some
kernel daemons running, init, a few gettys, maybe a selected daemon
or two (I generally run sshd, so I can get into it from my desktop
instead of slapping a monitor on it). To make things smoother
install mpg123, cdtool, and rexima on it now. It goes without saying
that this package is not going to configure your sound hardware for
you, and you meust have working sound hardware prior to installing
this software to properly debug your installation. I highly recommend using a journaling file system on
the root partition. Anything else is a recipe for
disaster. Note that this software is designed to be
placed on a headless system with nothing more than a keyboard (just
the numberpad is necessary), unless you write a new input processor
for your specific application. If you are planning on doing things
on the console of this machine while listening to mp3s or cds, this
is not for you. Ok, now that that is out of the way, lets go
on. First you need to get the software going. Edit your inittab
and change your line that reads: 6:23:respawn:/sbin/getty 38400 tty6
and change it to:
6:23:respawn:/sbin/getty 38400 tty6 -i -l /usr/local/carmp3/mp3player.sh
BEFORE SENDING -HUP TO INIT you must at least create an
empty file as "/playlist", or edit mp3player.sh and the first
argument to the mp3player binary is the location of the playlist.
Note that this does not read winamp playlist files. The playlist is
a list of full filename (with paths), one per line, like this:
/mp3/styx - Mr Roboto.mp3
/mp3/Saliva - Click Click Boom.mp3
Spaces are ok, as the filename is quoted when sent to
mpg123. Once you populate a playlist with valid files, it's ok to
send a -HUP signal to init (kill -HUP 1). Music should begin
playing. If not switch to vty6 and hit control D. Now here is the
part that's important, because you'll have to put up with this for a
while. You need to adjust your mixers. Open up a console and open
rexima. If you are using a cassette adapter, place it in a high
quality cassette deck with VU meters and connect it to the line out
jack on your sound card. Turn down all sliders but pcm and vol. Then
proceed to adjust your volumes so that your output hovers at 0db at
the loudest part of your playlist, and that peaks stay at or below
3db. Anything beyond this can cause clipping in your car stereo
which can result in damage to your equipment and speakers. Aim to
have both sliders around the middle, if possible. Having one all the
way down and one all the way up sacrifices audio quality.
:-) Then do the same for CD audio. You may want to use "workbone"
to play cd's to adjust your percentages to. Write down the
percentages for "vol", "pcm", and "cd". Then in your startup files,
do the following: rexima vol 99
rexima pcm 99
rexima cd 99
rexima line 00
rexima mic 00
Replace 99 with the values you recorded on your paper. Now
to configure your input. You want this running on vty1 which is the
default when the system starts up, since you won't be doing VT
switching while driving. Edit your /etc/inittab as follows replace:
1:23:respawn:/sbin/getty 38400 tty1
and change it to:
1:23:respawn:/sbin/getty 38400 tty1 -i -l /usr/local/carmp3/numpad_command
Now from vt2, run "kill -HUP 1" and you should have a
exceedingly verbose console that takes keystrokes from your numeric
keypad. Congratulations, you're done!
The controls are quite
simple. Numlock switches between cd and mp3 mode. /<enter>
pauses and unpauses, *<enter> selects a new random song in mp3
mode and selects the next song in CD mode. +<enter> turns up
the master volume by 1%, and -<enter> does the opposite.
Entering a number and hitting enter jumps to that entry in the
playlist, or that track on the CD. Hitting ".<enter>" - That's
period, then enter, halts the machine gracefully.
| File |
Description |
| carmp3_0.50_i386.deb |
The debian package - depends on mpg123 and cdtool |
| carmp3_0.50.tar.gz |
The source code (Sorry, this is in FBI custody. I'll be reposting it as soon as it's available to me) |
| carmp3-doc_0.50_all.deb |
This is a placeholder for real documentation later -
There's nothing but a readme and a changelog in here at the
moment... :-) |
None
yet
|