Jooky is Copyright (C) 1999-2005 Thomas Glascock, Dentar, inc.
Ok. At long last, here is some actual documentation.
- Requirements
-
- Linux (duh) on 66 MHz Pentium (absolute minimum) (depends more on how good your player is)
- at least one of the following in your path
mpg123 (preferred) ogg123 (preferred) mp3blaster sox freeamp
- aumix in your path
- sound card (duh)
- /dev/dsp cannot be taken by any other programs or daemons, as jooky checks to see if it is open before starting the player. You also have to have permission to it.
- the "more" command in your path
- libvorbis and libvorbisfile libraries and header files (only needed for ogg files)
- libid3tag and id3tag.h files (from the "mad" project) http://www.mars.org/home/rob/proj/mpeg/
Jooky is a command line based mp3 player controller. It is NOT an mp3 player. You have to supply the players. Currently it supports these players:
mpg123 (best choice, but chirps on bad mp3s)
ogg123 (command line ogg player)
mp3blaster (works ok)
sox (for wav files)
freeamp X-Windows mp3 player. I don't recommend this as I only
used it to test with. X required. Not fast. It'll work
with ogg and mp3. I think it might also work with wav.
Jooky can be run in several modes, which are:
command line server
daemon server
inittab server
tcp/ip client
To run the command line based server, simply run jooky with no options. You'll get an ncurses based screen interface to play with. The legend at the bottom will show you how to use it. It takes all of a minute to learn how to use it. If you know vi, then it's even simpler. Any files that can't be played because there is no player for them, will be dimmer than the others. Up and Down arrows are the same as j and k. Right and Left arrows adjust volume. Pgup and Pgdn take you up and down half a screen, as do capital J and capital K.
NEW! as of 0.96. "m" changes the Mixer knob, and right and left arrow adjust the current knob. Give it a try. aumix and read/write permission to /dev/mixer are required.
Another few options for the command-line based server are:
-s stepping mode. It will wait until you hit SPACE to play
whatever selection is hightlighted.
This is not compatible with -d.
To run the daemon based server, run jooky -d. It will fork off into the background. You won't get the nice interface because it's a daemon. You can control it via the client mode, which will be explained further down.
To run the inittab based server (for remote juke boxes) put jooky -Q in your inittab. It runs the same way as always, but it doesn't spooge the screen up with garbage. That way inittab can respawn a new one if jooky blows chunks.
Daemon and inittab options:
-d daemon Start as a daemon. Don't use this if
you are using the inittab.
-Q quiet If you run in inittab, you want this.
Here are some options you can run for all the modes except client.
-z random Scramble the selections before starting. -P xxx passwd Specify a password for the remote client. -m # select mp3 player -o # select ogg player -w # select wav player
To get the numerical values for the players, type jooky -h and RTFS.
-f use futaba Futaba is a little neon display I have
at home. It gets data sent to it at
9600 baud. I suspect I am the only one
who uses this.
-l xxx directory use dir as mp3 directory instead of default
You can string several -l together like:
-l blah -l /blahblah -l ./blah -l /snarf
-L xxx directory use dir as mp3 directory instead of default
and treewalk all subdirs beneath it
You can string several -L together like:
-L blah -L /blahblah -L ./blah -L /snarf
-t xxx port accept connections on this port instead of 1666
To get the numerical values for the players, type jooky -h and RTFS.
To control the previous two modes (daemon and inittab) use the client. To do so, then you must do something like this. Assume that jooky is running as daemon or inittab on the host mp3box, and you're on another machine. (or the same machine if you like.. it'll work) If you set a password, then do -P xxx on the client command line.
jooky -i mp3box -q stops remote jooky jooky -i mp3box -n next jooky -i mp3box -b previous jooky -i mp3box -p pause current (may not work with all players) jooky -i mp3box -c continue current (may not work with all players) jooky -i mp3box -r restart current jooky -i mp3box -T stops remote jooky
If you started the server on a different port with -t port, such as:
jooky -d -t 9876
then you must run the client as:
jooky -i mp3box -t 9876 -whatever
The reason for the jooky client mode is so you can put it in scripts, run it from a web page, or lircd or whatever your little heart desires.
Currently, jooky only runs on linux. If someone wants to port it, then have at it.
- You no longer have to edit defines.h or variables.h
- Do it like so:
./configure
make
make install
3: jooky -? will give you help.
Warranty: none
main()
{
My_Liability_If_This_Messes_Up_Your_System=NULL; }
email: dentar@dentar.com with questions/complaints/compliments/money/chicks
If you have any cool improvements, send 'em in!
Have phun!
