SourceFiles.org - Use the Source, Luke
Home | Register | News | Forums | Guide | MyLinks | Bookmark

Sponsored Links

Latest News
  General News
  Reviews
  Press Releases
  Software
  Hardware
  Security
  Tutorials
  Off Topic


Back to files

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.

  1. You no longer have to edit defines.h or variables.h
  2. 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!


Sponsored Links

Discussion Groups
  Beginners
  Distributions
  Networking / Security
  Software
  PDAs

About | FAQ | Privacy | Awards | Contact
Comments to the webmaster are welcome.
Copyright 2006 Sourcefiles.org All rights reserved.