grip(1)

NAME
grip - A gtk-based cd-player and cd-ripper.

gcd - A gtk-based cd-player (used as part of grip, or alone).

SYNOPSIS
grip [-d <device>] [-s] [-l]
gcd [-d <device>] [-f] [-l]

DESCRIPTION
Grip is a gtk-based cd-player and cd-ripper. It has the ripping capabilities of cdparanoia builtin, but can also use external rippers (such as cdda2wav). It also provides an automated frontend for MP3 encoders, letting you take a disc and transform it easily straight into MP3s. The CDDB protocol is supported for retrieving track information from disc database servers. Grip works with DigitalDJ to provide a unified "computerized" version of your music collection. GCD is the cd- player only version of Grip.

Because Grip and GCD share much of their functionality, this file documents both of them. If you installed only GCD, you should ignore the bits that talk about "ripping" and "encoding" of tracks.

Grip is designed to work closely with DigitalDJ, my SQL-based mp3 jukebox system (although it does not require it).

OPTIONS
These are the command-line options for grip:

-d <device> Use <device> as the cd-rom device (default: /dev/cdrom).

-s  Launch grip in a "small" (cd-only) mode.

-l  "local" mode -- don't try to use CDDB.

--version
    Print version string, and exit.

-v  Verbose (debug) mode.

These are gcd's command-line options:

-d <device> Use <device> as the cd-rom device (default: /dev/cdrom).

-f  Launch gcd in "full" (track-display) mode.

-l  "local" mode -- Don't try to use CDDB.

-v  Verbose (debug) mode.

USAGE
The most handy way to launch Grip/GCD is from your window manager's doc. A dock icon (gripicon.tif/gcdicon.tif) is included with the distribution.

Grip's operation should be pretty self-explanatory. Tracks to rip are selected with the right mouse button. To select all tracks on the disc, click the "Rip" column label. When you select "Rip" or "MP3-encode" from the "Rip" page, Grip will rip or rip/encode the tracks you have selected. If you select "Rip partial track", only the current select of the current track will be ripped or encoded. Start/End sector values are ignored if partial track ripping is not enabled.

Grip and GCD used to be installed as setuid root. This was for several reasons. First, most people have their systems configured such that their user account does not have access to the cd drive. Secondly, cdparanoia requires access to both the cd device and (for SCSI drives) the generic SCSI device (usually /dev/sg<something>). Despite this, I no longer install the programs setuid root. This means that you will have to set the permissions correctly on the appropriate devices, or run the program as root.

CONFIGURATION
The "Config" menu allows you to configure your ripping program and your CDDB database. Rip/Encode/ID3 options are only available in Grip.

Here are the options:

CD options:

Don't interrupt playback on exit/startup
    If this is not selected, Grip will stop play when it starts and when it stops.

Rewind when stopped
    If selected, Grip will rewind to the first track when play is stopped.

Startup with first track if not playing
    If this is not selected, Grip will begin with whatever track the cd-player played last.

Reshuffle before each playback
    If selected, Grip will re-randomize the tracks each time playback begins when in shuffle-play mode.

Rip Options:

Ripper
    This allows you to select one of the preset rippers. This will fill in sensible default parameters for calling the ripper. If you select "grip (cdparanoia)", Grip will use its builtin version of cdparanoia (only available if paranoia has been compiled in). If the builtin ripper is selected, the following options are available:

Disable paranoia
    Disables all paranoia checking.

Disable extra paranoia
    Only cdda2wav-style overlap checking will be done.

Disable scratch detection
    Do not look for scratches.

Disable scratch repair
    Disable scratch repair (still detect)

Ripping executable
    This should be the full path to the program you want to use to rip tracks with.

Ripping command-line
    These are the arguments that will be passed to the ripping program. The '%' switches are translated as follows:

%t  Track to be ripped

%b  Begin sector to be ripped (0 is start of track)

%e  End sector of track

%f  Filename to put .wav data to

Rip file format
    This specifies the format of the filename to write ripped data to. The '%' switches are translated as follows:

%n  Name of track being ripped

%t  Number of track being ripped

%a  Artist of current track

%A  Artist of the current disc

%d  Name of current disc

%b  Begin sector to be ripped (0 is start of track)

%e  End sector of track

%c  cdrom device

%i  CDDB discid in hex format

%g  ID3 genre tag as a number

%G  ID3 genre tag as a word

Adding a '*' between the '%' and the switch will cause underscoring of the field to be skipped.

Rip 'nice' value
    The 'nice' (priority) level to run the rip at.

Max non-encoded .wav's
    The maximum number of non-encoded .wav files Grip will keep around before pausing ripping.

Auto-rip on insert
    If selected, Grip will automatically select all tracks and begin ripping when a new (ie: no local disc data) disc is inserted.

Auto-eject after rip
    If selected, Grip will automatically eject the disc when ripping is finished.

Wav filter command
    This command will be run after ripping but before encoding. It can be used to call a program to manipulate the .wav file in some way (such as doing normalization). It accepts a single switch, %f, which translates as the ripped .wav file.

Encode options:

Encoder
    This allows you to select one of the preset rippers. This will fill in sensible default parameters for calling the encoder.

MP3 executable
    This should be the full path to the program you want to use to MP3-encode tracks with.

MP3 command-line
    These are the arguments that will be passed to the MP3 encoder. The '%' switches are translated as follows:

%b  Encode bitrate (kbits/sec)

%f  Filename of the .wav data to be encoded

%o  Filename to save mp3 data to

MP3 file format
    This specifies the format of the filename to write MP3 data to. The '%' switches are the same as those used in the rip file format.

Delete .wav after encoding?
    If selected, this option will (surprise!) delete the ripped .wav file after encoding.

Insert into SQL database
    If selected, and DigitalDJ is installed, Grip will place the song information into DigitalDJ's song database.

Number of CPUs to use
    This is the number of simultaneous encode processes allowed. If you have an SMP system, increase this number to use more processes. Note that Grip must be restarted for changes in this option to take effect.

MP3 'nice' value
    The 'nice' (priority) level to run the MP3 encode at.

ID3 options:

ID3 Executable
    The full path to the program that will add ID3 tags to an MP3 file

ID3 Command-line
    The arguments to be passed to the ID3 program. The % switches are translated as:

%n  Name of track

%t  Number of track

%a  Artist of current track

%A  Artist of the current disc

%d  Name of current disc

%g  ID3 genre tag as a number

%G  ID3 genre tag as a word

%y  Year of track

%f  Name of the MP3 file

Add ID3 tags
    If selected this option will cause ID3 tags to be added to each MP3 file after it is encoded.

CDDB options:

Primary/Secondary CDDB server
    These are your servers for looking up disc information over the net. If the disc is not found on the primary server, the secondary server will be checked.

DB server
    The address of the CDDB server you wish to use.

DB CGI path
    The path to the script on the server that handles HTTP requests. This is generally "~cddb/cddb.cgi" or "cgi-bin/cddb.cgi".

Perform CDDB lookup automatically
    If selected, Grip will always try to look up an unknown disc. If not selected, lookup must be initiated manually.

Proxy options:

Use proxy server
    If selected, CDDB requests will be sent through an HTTP proxy (useful for people behind firewalls).

Get server from 'http_proxy' env. var:
    If set, Grip will try to read the http server/port information from the environment variable "http_proxy", which should take the form "http://server:port".

Proxy server
    The address of the HTTP proxy server to be used.

Proxy port
    The port to talk to the proxy on.

Misc options:

Output directory
    The directory to place WAV and MP3 files in. The same '%' switches as in the rip/encode filenames can be used.

Convert spaces to underscores
    If selected, this will cause all spaces in filenames to underscores.

Also underscore
    A list of characters to replace with underscores when constructing filenames.

Email address
    The email address to be used as a reply address when submitting CDDB entries and bug reports.

CD update program
    This program will be run whenever a disc is put in the drive. All sensible '%' switches can be used. I use this to call a program that generates a web page that tells what CD I'm currently playing.

Keep application minimum size
    If selected, Grip will always try to keep its window a the minimum size possible.

CDDB notes
I have declined to sign a license agreement with Escient, the company who owns "www.cddb.com" and runs the CDDB server "us.cddb.com". Their license would (among other things) have required me to place advertisements in Grip and restrict you, the user, to use only their databases. I am against this commercial use of the track information submitted by users such as yourself. For this reason, I encourage you to use free servers, such as "freecddb.freecddb.org".

License and Disclaimer
Grip and GCD are Copyright (c) 1998 by Mike Oliphant. Grip and GCD may be used and distributed under the terms of the GNU General Public License. All other brand and product names are trademarks, registered trademarks or service marks of their respective holders.

These programs are 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 in a file named COPYING along with this distribution; if not, you can contact the Free Software Foundation, Inc., https://www.fsf.org/.

Acknowledgments
Thanks go to:

*   Everyone involved in GTK development for a wonderful GUI

*   Tony Arcieri, for libcdaudio, which formed the basis of Grip's low-level cd control and CDDB access routines

*   Monty, for cdparanoia and the paranoia library

*   Heiko Eissfeldt for cdda2wav

*   Tord Jansson for BladeEnc

*   Mike Cheng, Mark Taylor and all the others who have worked on LAME

*   Ti Kan, for the xmcd button bitmaps, many of which I use in modified form

*   Everyone that has contributed code to Grip (see the CREDITS and ChangeLog files)

*   Everyone else who has given me feedback and helped test Grip

BUGS
If you have trouble with Grip or GCD, read the "FAQ" section in the built in manual. If you still have a question after reading through this document carefully, or have a feature request, feel free to send an email to the mailinglist, or open a bug repport on the bug tracker. Do read the file TODO first and skim through the feature request bug tracker, to check whether it's already on my list.

CHANGES
See the ChangeLog file that came with the source code.

AUTHOR
Grip and GCD written by Mike Oliphant (oliphant@gtk.org)
Documentation formatting by Aaron Sherman (ajs@ajs.com)
Project manager: Johnny A. Solbu (johnny@solbu.net)