Home

jac - Just Another Cdplayer
(C) Cosimo Vagarini <vaga@dada.it>

FREQUENTLY ASKED QUESTIONS

1. GENERAL.
  • 1a) What is jac?

  • 1b) How do I install jac?

  • 1c) Which is the last version of jac?

  • 1d) Where do I find new versions of jac?

  • 1e) Do you think jac will have a graphic version?

  • 1f) Which kind of licence does jac comes under?

  • 1g) How can I report bugs?

  • 1h) How can I help jac development?

  • 1i) Credits


  • 2. CONFIGURATION
  • 2a) Is there a config file?

  • 2b) How can I set my cdrom device to work with jac?

  • 2c) How can I set my mixer device?

  • 2d) How can I listen CD with jac without a Sound Card?

  • 2e) How can I set my default option for jac?

  • 2f) How can I set the default option for a specific CD?

  • 2g) How can I set jac language?


  • 3. PLAYING
  • 3a) How can I get the full list of options?

  • 3b) How can I play Cds?

  • 3c) How can I get information about the CD in the drive?

  • 3d) How can I pause Cds?

  • 3e) How can I play only a specific track?

  • 3f) How can I play a playlist?

  • 3g) How can I get loop?

  • 3h) How can I play Cd from last to first track back?

  • 3i) How can I play Cd from track #n to last track?

  • 3j) How can I play Cd from track #n to first track back?

  • 3k) How can I play tracks in random order?

  • 3l) How can I esclude track(s) from playing?

  • 3m) How can I skip n tracks back/forward?

  • 3n) How can I keep jac in foreground?

  • 3o) What is and how does it work the crazy feature?

  • 3p) How can I download CD data from Cd Database Servers?

  • 3q) How can I eject Cds?

  • 3r) How can I set the volume?

  • 3s) How can I stop playing?

  • 3t) What is the jac Console?




  • 1) G E N E R A L


    1a) What is jac?
    jac is a command line Cd player that allows you to listen your CDs in any way, without having a console dedicated to that. Since release 0.11 a small text console was born, for those who like better a console than a background process.
    jac can set the volume (using the mixer device, if present) and give you detailed information about CD.
    jac can download cd info from CDDB (www.cddb.com) and from CdIndex (www.cdindex.org) and read CDDB files downloaded from other CD Player.


    1b) How do I install jac?
    To install jac, copy the .tar.gz in your /usr/local/src directory (or wherever you want) and type:
    $ tar -xvfz jac-x.x.tar.gz (where x.x is release number).
    You will find a directory called jac-x.x, change to that directory and type:
    $ make
    After this you can get root privileges and run
    $ make install
    this will copy jac into your /usr/local/bin directory, or without getting root privileges, copy the generated binary jac wherever you find better.
    You're done. You can run jac.


    1c) Which is the last version of jac?
    The last version of jac is 0.14
    It is an alpha version but it has been tested on many systems and on many kind of CDs, kernel 2.0 and above.


    1d) Where do I find new versions of jac?
    The new web page where you can find jac is:
    http://jac.sourceforge.net
    but you can check on freshmeat (http://www.freshmeat.net) or on Linuxberg (http://www.linuxberg.com or choose the nearest mirror), any time a new version is released, I will post there.


    1e) Do you think jac will have a graphic version?
    When I decided to develop jac, I just wanted a Cd player which won't ask for a console or a graphic environment, so jac is a command line Cd player which works in background, but is always awake!
    It's possible that in the next future a graphich front-end will be released. Stay tuned. :-)


    1f) Is jac GPL software ?
    Yes, jac is GPL. You can find the GPL license in the jac source directory (underthe name COPYING or at http://www.gnu.org/copyleft/copyleft.html


    1g) How can I report bugs?
    You have three ways:
    b) Subscribe to the jac-devel mailing list (instructions are on jac homepage) and submit the bug.
    c) Submit the bug via SourceForge bug-tracking system at http://sourceforge.net/bugs/?group_id=1281
    a) Send an email to vaga@dada.it with the subject containing the word 'jac' trying to give as much information as possibile.


    1h) How can I help jac development?
    If you want to help me writing some block of code, if you think that jac need some features, if you want to write documentation, if you want to write a translation in a language not yet implemented you are welcome.
    Subscribe to the jac-devel Mailing List (instructions are on jac homepage) and let me know your ideas. You're welcome!


    1i) Credits
    Thanks to:
    - mIRO miro@dada.it
    * My first user and tester.
    * SCSI testing.
    - Patrizio rusty@duse.it
    * Testing
    * Fork suggestion
    - David Bellows bfootdav@bellsouth.net
    * for the jac-parm umask bug
    - Joel Gerber joelgg@mindspring.com
    * for some useful suggestions




    2) C O N F I G U R A T I O N


    2a) Is there a config file?
    Yes. The config file is named jac.config and you can find it in the .jac subdirectory under your home directory. The first time you run jac, if the config file doesn't exist it will be created with the default setup. You can edit it at any time and set it up to match your needs and wishes. Some option can also be inserted in the jac.config while running jac (option -D). The options you can set in this moment are: cdrom,mixer,defopt,cddbdir and the default option for any CD.
    To set a option just insert a line with one of the above mentioned keyword
    followed by the equal sign and the value you desire.
    Lines beginning with the pound sign (#) are interpreted as comment.
    Lines NOT beginning with a keyword or a valid discid are skipped.


    2b) How can I set my cdrom device to work with jac?
    jac will use, by default, the device pointed by /dev/cdrom, so you can just create a soft link from your cdrom device to /dev/cdrom to have jac working. In any case you can set the cdrom device in the config file (see [2a]) just changing the value in the row cdrom.


    2c) How can I set my mixer device?
    jac will use, by default, /dev/mixer. You can, obviously, change this value in the config file (see [2a]), just changing the value in the mixer row.


    2d) How can I listen CD with jac without a Sound Card?
    If you don't have a Sound Card you don't probably have some device like /dev/mixer. In this case just set the mixer device to "NO" (without quotes) in the config file. (see [2a]). In this way you can listen CD directly from the CD drive with your ear-phone but with all the jac features.


    2e) How can I set my default option for jac?
    The default option is set (by default) to -C (see [3p]), but you can change it to any combination of jac options. This/These option(s) will be used any time you will run jac without options, excluding the times you will run jac with a CD which has Cd-specific default options. This is very useful because if you like running jac with many options ($ jac -c -r -v75 -C) you can set this options (-c -r -v75 -C) as your default options and just run jac ($ jac). Your preferred options will be passed to jac from the config file.


    2f) How can I set the default option for a specific CD?
    You have two ways. The first on is simpler and is automated.
    Insert the CD in the drive and run jac with the option you want to save (preceded by the -D option) These option will be saved and any time you will run jac without options and THAT cd is in the drive, these will be the ones jac will use.
    Example: jac -D -c -v100 -x12
    CAUTION: The -D option HAS TO BE the first option in the list.
    The second is a 'do it yourself' way. You can get the discid with the --discid option and edit the config file (see [2a]), adding line beginning with the discid you've just got followed by the equal sign (=), followed by the list of options you like better.
    Example:
    bc0f9d0f=-C -r -c


    2g) How can I set jac language?
    jac supports at this moment two languages english and italian. You have to choose the language at compile time. Running:
    $ make
    jac will be built with english language (default), running:
    $ make italian
    will build jac with italian language.
    You can also change the variable LANG inside the Makefile to match the language you want jac talk with you.



    3) P L A Y I N G


    3a) How can I get the full list of options?
    You can get the full list of options running:
    $ jac -h
    or
    $ jac --help


    3b) How can I play Cds?
    You can play CDs just running jac. This sentence will become false if you set the default options of jac to something different from playing for example if you set the default option to -h or -vXX (why??? :-)).


    3c) How can I get information about the CD in the drive?
    You can get the information running jac with the -i or -I option.
    $ jac -i
    jac 0.14 - (C) Cosimo Vagarini <vaga@dada.it>
    # of Tracks : 10
    Total Time : 34:30
    Status : Playing track #08 - Position: 00:11
    Volume : 60
    CD Title : Janis Joplin / Pearl
    Track #01 : Move Over
    Track #02 : Cry Baby
    Track #03 : A Woman Left Lonely
    Track #04 : Half Moon
    Track #05 : Buried Alive In The Blues
    Track #06 : My Baby
    Track #07 : Me And Bobby McGee
    Track #08 * : Mercedes Benz
    Track #09 : Trust Me
    Track #10 : Get It While You Can

    Playlist: 8 2 3 10 1 9 5 7 4 6
    Repeat : ON

    or, if you don't have downloaded CDDB data:
    $ jac -i
    jac 0.14 - (C) Cosimo Vagarini <vaga@dada.it>
    Info CD
    # of Tracks : 14
    Total Time : 65:22
    Status : Playing track #5 - Position: 00:55
    Volume : 64
    Track #01=04:41 Track #02=05:02 Track #03=03:58
    Track #04=05:23 Track #05=03:53 Track #06=04:47
    Track #07=04:53 Track #08=04:41 Track #09=04:37
    Track #10=06:53 Track #11=04:40 Track #12=04:24
    Track #13=04:28 Track #14=03:00

    Playlist: 10 4 14 5 1 13 8 12 11 6 2 3 7 9
    Repeat: ON

    while the -I option will show only:
    $ jac -I
    jac 0.14 - (C) Cosimo Vagarini <vaga@dada.it>
    Info CD
    # of Tracks : 14
    Total Time : 65:22
    Status : Playing track #5 - Position: 00:55
    Volume : 64


    3d) How can I pause Cds?
    Running jac with the -f option.
    $ jac -f
    And when you are ready to listen, just run again jac -f and playing will be resumed.


    3e) How can I play only a specific track?
    Using the -p option.
    $ jac -p5
    will play only track #5. This option as any other playing option can be passed to jac together with other option. So if you want to listen track #5 forever,
    just run:
    $ jac -p5 -r
    and you will listen jac playing that track until you stop it (see [3s]) or until you run once more jac with different option.


    3f) How can I play a playlist?
    Using the -m option. It's very easy.
    $ jac -m2,6,8,9,12
    You can use this option together with the random option (see [3k]) [to have the list you've just passed be sorted randomly], or with the repeat option (see [3g]) or with .....whatever you want.


    3g) How can I get loop?
    You can repeat the playlist you've choosen (or the track, or the entire cd, or whatever you've choosen) with -r.
    $ jac -r
    will play the entire cd and as it comes to the end, it will start again.
    $ jac -m1,3,5 -r
    will play these 3 tracks forever,
    $ jac -x10 -r
    will play the cd excluding track #10, forever....
    etc. etc.


    3h) How can I play Cd from last to first track back?
    For that there is the -b option.
    $ jac -b
    You can, as in any the other case, combine -b with -x,-r,-c etc.
    $ jac -b -r -x9 -c -v100


    3i) How can I play Cd from track #n to last track?
    Using the -P option:
    $ jac -P8
    jac will play tracks number 8,9,10,11,12.....
    You can as in the other case combine -B with -x,-r,-c etc.
    $ jac -P3 -r -x7 -c


    **> 3j) How can I play Cd from track #n to first track back?
    Using the -B option:
    $ jac -B11
    will play (11,10,9....1) (see [3h]), (see [3i]).


    3k) How can I play tracks in random order?
    Using the -c option.
    $ jac -c
    will play the entire CD in random order.
    $ jac -m1,3,5 -c
    Will play tracks 1,3,5 in random order (1,5,3 or 3,5,1, or 5,3,1 etc)...


    3l) How can I esclude track(s) from playing?
    This is in my opinion a very useful option because it may happen sometimes that a song inside the CD is something we don't want to listen to.
    $ jac -x4
    Will exclude track #4 from playing.
    You can use the -x option together with any other playing option (if allowed).


    3m) How can I skip n tracks back/forward?
    There are the -s (forward) and -S (back) options.
    If you are listening the cd in normal mode (1,2,3,4,5....) and while you are listening to track #2 you run:
    $ jac -s2
    jac will stop for a second and the will start playing track #4.
    If you are listening a playlist or a random generated playlist jac will skip n tracks forward (back is the same) according to the playlist.
    In the number of tracks forward (or back) goes out of bounds this option will have no effect.
    CAUTION: -S1 will skip to the beginning of the active track.


    3n) How can I keep jac in foreground?
    You can have jac in foreground with the -F option.
    This has no meaning as jac won't print or make anything different while in foreground. Just keep a console busy. It's up to you.
    ATTENTION: This option is OBSOLETE and has been substituted by the -console option (see [3t])


    3o) What is and how does it work the crazy feature?
    The crazy feature allows to listen the CD in a 'different way'.
    With the crazy feature the CD is considered a "ONE TRACK CD". This track goes from the first second of music to the last.
    And jac will let you listen some second of music randomly selected inside the CD. And after that, it will select another few seconds of music somewhere else in the CD and will let you listen and so on. Until you stop it. (see [3s]).
    The default for crazy is 30 seconds.
    That means that running:
    $ jac -z
    you will listen '30seconds song' choosen randomly inside the CD.
    You can also set the number of seconds you prefere for the crazy playing.
    The number of seconds can't be smaller than 5 nor greater the 300.
    Try it. You will like it. ;-)


    3p) How can I download CD data from Cd Database servers?
    You just have tu run jac with the -C option for CDDB and -X option for CdIndex. The default option of jac (after installation) is -C.
    You can leave the -C or -X or both option also if you've already dowloaded CD data.
    You can run jac with -C1 or -X1 which will force jac to search for data at Cddb (-C1) or CdIndex (-X1), even if data are already been dowloaded (almost useless!).
    Once jac will start, it will check for CD data for the CD. If not found it will try to establish a connection with CD Database Server, else it will read CD data from your filesystem without any connection attempt.
    CD data can be stored whereever you want on your Hard Disk, setting the directory with the 'cddbdir' directive in the jac.config file. (see [2a]).
    If cddbdir is not specified the .jac subdir of your home directory will be used.
    Using a different directory may be useful if you have other CDDB data downloaded with other CD player or you have more than one account on the same machine.
    jac will also write in the same directory a file named 'cddblist' which contain the Disc ID and Disc Title. It is written just after the Cddb data downloading is finished. This may be useful to find out wich files is relative to a certain CD. Data downloaded from CdIndex are now written using CDDB file format. In next release this may change.


    3q) How can I eject Cds?
    With:
    $ jac -e


    3r) How can I set the volume?
    You can use the -v option. The volume level goes from 1 to 128. On startup the volume level is set to 64.


    3s) How can I stop playing?
    just typing:
    $ jac -k
    If you are running jac with some options and want to change this options (without changing CD), you don't have to stop jac and rerun jac.
    Just run jac with the now options. jac will understand your intention, and will stop the previous selection and will start the new ones.


    3t) What is the jac Console?
    The jac console is the latest jac's feature.
    For those who doesn't love to run anytime jac from the shell prompt, giving the new options, now the jac console is born.
    You have to run:
    $ jac -console
    and you will get the jac prompt:
    jac 0.14>
    from there you can execute commands or set variables value.
    The available commands can be obtained just typing help from the jac prompt.
    You can, in any case, play the Cd, set the playlist, the repeat flag, the volume, see the status of the cd, stop playing etc.


    Enjoy,
    Cosimo Vagarini
    < vaga@dada.it >


    jac is hosted by