Pegasus InfoCorp: Web site design and web software development company

XPlaycd (1)

X based audio cd player for cdrom drives

SYNOPSIS

    xplaycd [ -mixer ] [ -nomixer ] [ -v ] [ -display lt;displaygt; ] [ -fn lt;fontgt; ]

DESCRIPTION

    XPlaycd is a program to play audio cd's on a cdrom-drive. It runs on plain X. You don't need OpenWindows, Motif or whatever. XPlaycd features a database which holds cd and track titles of cds. Titles are displayed automagically as the cd plays. The program has its own editor which eases adding of new discs. The database is XMcd compatible, but XMcd needs Motif.

THE EDITOR

    To invoke the editor, press the right button anywhere inside the window and select edit from the menu. A new editor window will pop up. Fill in the fields then press close or apply to save your changes.

    The editor saves the database in files which have an eight digit hexadecimal number as filename, in a directory specified by the *cddb resource. The decimal number is the (hopefully) unique id of the cd and is used to find the file next time the cd is used again.

THE PLAYLIST

    You can program the order in which the tracks are played. The program shows a small button for each track and a button for begin and end of play respectively.

    Pressing the left mouse button on a track icon will immediately start playing this track.

    To change the playing order, press and hold the left mouse button on a track icon and drag the number to your preferred place.

    To double a track, i.e. to play it more than once, press and hold the middle mouse button on a track icon and drag, you will get a new icon to place at will while the old one stays in place.

    To delete a doubled icon, click on it with the middle button without dragging it.

    To change the beginning and end of play respectively, drag around the start/end icons. Using these icons, you can skip titles by moving them after the end mark.

    The top right button on the window can be used to endlessly repeat everything between the start and end marks.

    The button showing three question marks will shuffle the tracks inbetween the start and end marks. A second press of the shuffle button will sort the tracks back into order.

    You can save the playlist by pressing the right mouse button anywhere in the window and selecting save from the menu. This will save the playlist in the database together with the list of track titles.

MORE ABOUT INSERTING AND EJECTING CDS

    Whenever there is no cd in the drive, XPlaycd displays a stippled pictogram in the eject button symbolising that it is not able to close the disc tray itself (several drives aren't able to close automagically, and the kernel driver doesn't support it anyway).

    So if you put a new cd in the drive, you have to press the eject button to make XPlaycd detect it.

    There is an option however, which tells XPlaycd to detect a new disc automagically as soon as the drive is closed. Since this led to problems on most systems, the option is disabled by default since Version 2.0. Use the -emptypoll option on the command line or set the xplaycd*empyPoll: on resource. Please see the RESOURCES section for more information about resources. Problems reported have been flooding of the syslog with \'Please make sure there is a disc in the drive\' messages and cdrom drives making strange noises.

OPTIONS

    Options offered by XPlaycd are the following:

    -display lt;displaygt;

      Show the control window on the given display.

    -fn lt;fontgt;

      Use this font rather than the default. The given font should be about the same size like the default font. If not, the window may look ugly.

    -mixer

      Use /dev/mixer to adjust the playback volume rather than controlling the drive directly. Usually xplaycd will autodetect whether it should use this option.

    -nomixer

      Adjust playback volume by controlling the drive directly. Usually xplaycd will autodetect whether it should use this option.

    -emptypoll

      Continue polling the drive even if its empty. In that mode, XPlaycd will automagically detect when someone inserts a cd in the empty drive. However, polling an empty drive will flood the syslog with nasty warning messages on most systems, some drives will even make strange noises. For that reason this is disabled by default since Version 2.0 and you have to press eject after inserting a new disc.

    -v

      Print current version and exit.

RESOURCES

    XPlaycd understands a large number of X11 resources which are listed below. These system wide resources usually sit in a file called /usr/lib/X11/app-defaults/XPlaycd. Personal resources reside either in ~/.Xdefaults or ~/.Xresources depending on your installation. To put an XPlaycd resource into your personal resource file, prefix it with the word xplaycd. After editing your personal file, be sure to run xrdb ~/.Xresources or xrdb ~/.Xdefaults to make them work. There is no need for a prefix or an invocation of xrdb if you change the system wide file.

STANDARD RESOURCES

    Standard X11 resources with their defaults are shown here. For an explanation of the standard resources please see the X11 dcumentation.

    Standard resources are:

    *title: XPlaycd

    *geometry: no default!

    *iconic: off

    *background: gray80

    *foreground: black

    *font: -b&h-lucida-medium-r-normal-sans-*-120-*-*-p-*-*-*

    *reverseVideo: off

    *synchronize: off

SPECIAL RESOURCES

    Special XPlaycd resources are:

    *brightBorder: gray94

    *darkBorder: gray40

    *hilightColor: gray72

      These settings are responsible for the 3D-look-and-feel of the program. Just play with the values to see what they do.

    *emptyPoll: off

      Please see -emptypoll commandline option above.

    *useMixer: auto

      This setting actually has three states:

    on

      use the mixerDevice to control the volume This works only if your drive is connected to a soundcard.

    auto

      Works like 'on' if mixerDevice is available, works like off if not. (This is the default)

    off

      Control the volume directly at the drive. Some drives do not support this (e.g. Mediavision CDR-H93MV).

    *mixerDevice: /dev/mixer

      The mixer device, this is only needed if you define *useMixer to on \, but auto will not work if this is not set.

    *cdromDevice: /dev/cdrom

      This is the devicename of your cdrom. Please use exactly the same devicename you use for mounting the drive. If you chose another name for mounting than for playback, XPlaycd will not be able to detect when a CD is mounted and may crash. (For example, don't use a symbolic link for mounting and the real device name for playback or vice versa.)

    *scsiDevice:

      If you don't have a scsi cdrom, please ignore this resource.

    Some scsi cdroms support tray loading under software control. With one of those, you may load the tray by pressing eject when the tray is open. To use this feature, enable generic scsi support in the linux kernel and set this resource to the generic device name of the cdrom. For the first scsi device, this is /dev/sga, the second is /dev/sgb and so on. WARNING! GIVING WORLD ACCESS TO A GENERIC SCSI DEVICE MAY BE A SECURITY RISC. For security reasons, your cdrom should have the highest scsi id of all your scsi devices. Imagine what would happen if you have an id 0 cdrom and an id 1 harddisk. Should the cdrom break and not be detected during boot, suddenly the harddisk becomes /dev/sga and thus prone to hacking.

    *cddb: /usr/local/lib/cddb

      The path where xplaycd expects the database. XPlaycd searches this directory and all subdirectories of it. You are encouraged to change this to some place where you have write access.

    *systemCddb: /usr/local/lib/public-cddb

      This is an additional read-only database, which may be maintained by someone else. XPlaycd searches this directory and all subdirectories of it.

TROUBLESHOOTING

    Q:

      It quits with 'xplaycd: Can't open /dev/cdrom: No such file or directory'

    A:

      As root, create a symbolic link from /dev/cdrom to your cdrom device. For a scsi cdrom, usually this works: cd /dev ln -s cdrom sr0

    Q:

      It starts up and says 'No disk' even if there is a disk in the drive.

    A:

      Hm, this may have many reasons, check if you have made the right link in /dev.

    Q:

      The volume control doesn't work, it is just an empty bar.

    A:

      You told XPlaycd to use the mixerdevice for volume control and you don't have such a device or you used the wrong name for it. To use the mixerdevice, you must have a soundcard.

    Q:

      I don't have the default font, so the program always tells me an annoying message that it uses a fixed font, how can i get rid of this?

    A:

      Call it as 'xplaycd -fn fixed' or change the font name in the default file. The default file is usually /usr/lib/X11/app-defaults/XPlaycd

TODO

    The editor should support putting cd's in separate categories.

    It should be possible to edit a cd without having to insert it into the drive. This would be possible only for cd's which have been at least once in the drive and have been saved before, though.

    Much more...

SEE ALSO

AUTHOR

    Olav Woelfelschneider (wosch@rbg.informatik.th-darmstadt.de)

COPYING

    Copyright (C) 1994 Olav Woelfelschneider (wosch@rbg.informatik.th-darmstadt.de)

    This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

    '\" t