Add pre-generated html documentation
authorHugo Villeneuve <hugo@hugovil.com>
Wed, 26 Mar 2014 01:36:46 +0000 (21:36 -0400)
committerHugo Villeneuve <hugo@hugovil.com>
Wed, 26 Mar 2014 22:53:54 +0000 (18:53 -0400)
doc/Makefile.am
doc/generate-html.sh [new file with mode: 0755]
doc/hvgrip.html [new file with mode: 0644]

index ecb6880..ca3e3e7 100644 (file)
@@ -3,9 +3,11 @@ SUBDIRS = images
 @PACKAGE@_helpdir = $(docdir)
 
 @PACKAGE@_help_DATA =  \
+        @PACKAGE@.html \
         @PACKAGE@.xml
 
 EXTRA_DIST =           \
+       @PACKAGE@.html  \
        @PACKAGE@.xml
 
 CLEANFILES = *~
diff --git a/doc/generate-html.sh b/doc/generate-html.sh
new file mode 100755 (executable)
index 0000000..7d9cd8e
--- /dev/null
@@ -0,0 +1,6 @@
+#!/bin/bash
+
+XSLTPROC_OPTS=/usr/share/xml/docbook/xsl-stylesheets-/xhtml/docbook.xsl
+
+xsltproc ${XSLTPROC_OPTS} grip.xml > grip.html
+
diff --git a/doc/hvgrip.html b/doc/hvgrip.html
new file mode 100644 (file)
index 0000000..082c053
--- /dev/null
@@ -0,0 +1,412 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Grip User's Guide</title><meta name="generator" content="DocBook XSL Stylesheets V1.75.2" /></head><body><div xml:lang="en" class="article" title="Grip User's Guide" lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="grip"></a>Grip User's Guide</h2></div><div><div class="authorgroup"><div class="author"><h3 class="author"><span class="firstname">Mike</span> <span class="surname">Oliphant</span></h3><div class="affiliation"><div class="address"><p><br />
+            <code class="email">&lt;<a class="email" href="mailto:grip@nostatic.org">grip@nostatic.org</a>&gt;</code><br />
+          </p></div></div></div></div></div><div><p class="copyright">Copyright © 2004 Mike Oliphant</p></div><div><div class="legalnotice" title="Legal Notice"><a id="id289073"></a><p>This documentation 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.</p><p>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.</p><p>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., 59 Temple Place, Suite 330, Boston,
+        MA 02111-1307 USA</p><p>For more details see the file COPYING in the source
+        distribution of GNOME.</p></div></div></div><hr /></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="#intro">Introduction</a></span></dt><dt><span class="sect1"><a href="#cdplayer">Playing CDs with Grip</a></span></dt><dd><dl><dt><span class="sect2"><a href="#id289226">CD Player Controls</a></span></dt><dt><span class="sect2"><a href="#sect-trackmode">Track Mode Selector</a></span></dt></dl></dd><dt><span class="sect1"><a href="#ripping">Ripping CDs with Grip</a></span></dt><dd><dl><dt><span class="sect2"><a href="#id310617">Selecting Tracks To Rip</a></span></dt><dt><span class="sect2"><a href="#id310630">Ripping CDs</a></span></dt><dt><span class="sect2"><a href="#rip-perform">Increasing Ripping Performance</a></span></dt><dt><span class="sect2"><a href="#sect-scsi">Using a SCSI drive</a></span></dt></dl></dd><dt><span class="sect1"><a href="#configure">Configuring Grip</a></span></dt><dd><dl><dt><span class="sect2"><a href="#cdconfig">The "CD" config tab</a></span></dt><dt><span class="sect2"><a href="#ripconfig">The "Rip" config tab</a></span></dt><dt><span class="sect2"><a href="#mp3config">The "Encode" config tab</a></span></dt><dt><span class="sect2"><a href="#id3config">The "ID3" config tab</a></span></dt><dt><span class="sect2"><a href="#discdbconfig">The "DiscDB" config tab</a></span></dt><dt><span class="sect2"><a href="#proxyconfig">The "Proxy" config tab</a></span></dt><dt><span class="sect2"><a href="#miscconfig">The "Misc" config tab</a></span></dt><dt><span class="sect2"><a href="#gripswitches">Configuration (%) switches</a></span></dt></dl></dd><dt><span class="sect1"><a href="#faq">FAQ</a></span></dt><dt><span class="sect1"><a href="#morehelp">Getting More Help</a></span></dt><dt><span class="sect1"><a href="#bugs">Reporting Bugs / Sumitting Patches</a></span></dt><dt><span class="sect1"><a href="#cddb">CDDB notes</a></span></dt><dt><span class="sect1"><a href="#license">License and Disclaimer</a></span></dt><dt><span class="sect1"><a href="#acknowledge">Acknowledgments</a></span></dt></dl></div><div class="sect1" title="Introduction"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="intro"></a>Introduction</h2></div></div></div><div class="mediaobject"><img src="images/grip-logo.png" /></div><p>Grip is a cd-player and cd-ripper for the Gnome desktop. 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 (and other audio format) encoders, letting you take a
+      disc and transform it easily straight into MP3s. Internet disc lookups
+      are supported for retrieving track information from disc database
+      servers. Grip works with DigitalDJ to provide a unified "computerized"
+      version of your music collection.</p></div><div class="sect1" title="Playing CDs with Grip"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="cdplayer"></a>Playing CDs with Grip</h2></div></div></div><p>Grip functions as a full-featured CD player, as can be seen in
+      <a class="xref" href="#cdplayerfull" title="Figure 1. Grip as a CD Player">Figure 1, “Grip as a CD Player”</a>. Tracks can be selected by clicking on
+      them with the left mouse button. Double-clicking will select the track,
+      and begin playing it.</p><div class="figure"><a id="cdplayerfull"></a><p class="title"><b>Figure 1. Grip as a CD Player</b></p><div class="figure-contents"><div class="screenshot"><div class="mediaobject"><img src="images/cdplayer.png" alt="Grip as a CD Player" /></div></div></div></div><br class="figure-break" /><div class="sect2" title="CD Player Controls"><div class="titlepage"><div><div><h3 class="title"><a id="id289226"></a>CD Player Controls</h3></div></div></div><p>Underneath the "LCD" display is a panel of buttons that allow
+        you to control CD playing in Grip. These buttons function as
+        follows:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><div class="mediaobject"><img src="images/playpause.png" /></div><p>
+            <span class="guilabel">Play/Pause</span> — Causes the selected track
+            to play if it is stopped or paused. If a track is currently
+            playing, it will go into pause mode.</p></li><li class="listitem"><div class="mediaobject"><img src="images/rewind.png" /></div><p>
+            <span class="guilabel">Rewind</span> — While this button is held
+            down, Grip will move backward in the currently playing track.
+          </p></li><li class="listitem"><div class="mediaobject"><img src="images/ffwd.png" /></div><p>
+            <span class="guilabel">FastForward</span> — While this button is
+            held down, Grip will more forward in the currently playing
+            track.</p></li><li class="listitem"><div class="mediaobject"><img src="images/prevtrk.png" /></div><p>
+            <span class="guilabel">Previous track</span> — If a track is
+            currently playing near the beginning of a track, this will
+            rewind to the beginning. Otherwise, it will skip to the previous
+            track.
+          </p></li><li class="listitem"><div class="mediaobject"><img src="images/nexttrk.png" /></div><p>
+            <span class="guilabel">Next track</span> — This will skip to the next
+            track.</p></li><li class="listitem"><div class="mediaobject"><img src="images/progtrack.png" /></div><p>
+            <span class="guilabel">Track Mode</span> — This brings up the track
+            mode interface, described in <a class="xref" href="#sect-trackmode" title="Track Mode Selector">the section called “Track Mode Selector”</a>.
+          </p></li><li class="listitem"><div class="mediaobject"><img src="images/stop.png" /></div><p>
+            <span class="guilabel">Stop</span> — Stops track playback.</p></li><li class="listitem"><div class="mediaobject"><img src="images/eject.png" /></div><p>
+            <span class="guilabel">Eject</span> — Opens or closes the cdrom
+            tray.</p></li><li class="listitem"><div class="mediaobject"><img src="images/cdscan.png" /></div><p>
+            <span class="guilabel">Scan disc contents</span> — Causes Grip to
+            force a scan of the current CD as if it were just inserted (useful
+            if you have polling for a new disc turned off).</p></li><li class="listitem"><div class="mediaobject"><img src="images/volume.png" /></div><p>
+            <span class="guilabel">Volume</span> — Toggles display of the
+            volume control slider interface.</p></li><li class="listitem"><div class="mediaobject"><img src="images/trkedit.png" /></div><p>
+            <span class="guilabel">Track Edit</span> — This brings up the track
+            editing interface described in ...</p></li><li class="listitem"><div class="mediaobject"><img src="images/discdb.png" /></div><p>
+            <span class="guilabel">DiscDB</span> — This initiates lookup of the
+            CD over the network, or aborts a disc lookup currently in
+            progress.</p></li><li class="listitem"><div class="mediaobject"><img src="images/minmax.png" /></div><p>
+            <span class="guilabel">Min/Max</span> — Toggles between the "full"
+            and "cd-only" (shown in <a class="xref" href="#cdplayersmall" title="Figure 2. Grip in &quot;cd-only&quot; mode.">Figure 2, “Grip in "cd-only" mode.”</a>) display
+            modes.</p><p>
+            </p><div class="figure"><a id="cdplayersmall"></a><p class="title"><b>Figure 2. Grip in "cd-only" mode.</b></p><div class="figure-contents"><div class="screenshot"><div class="mediaobject"><img src="images/cdplayersmall.png" alt="Grip in &quot;cd-only&quot; mode." /></div></div></div></div><p><br class="figure-break" />
+          </p></li><li class="listitem"><div class="mediaobject"><img src="images/quit.png" /></div><p>
+            <span class="guilabel">Quit</span> — Exits Grip.</p></li></ul></div></div><div class="sect2" title="Track Mode Selector"><div class="titlepage"><div><div><h3 class="title"><a id="sect-trackmode"></a>Track Mode Selector</h3></div></div></div><p>
+        </p><div class="figure"><a id="modeinterface"></a><p class="title"><b>Figure 3. The Play Mode Interface</b></p><div class="figure-contents"><div class="screenshot"><div class="mediaobject"><img src="images/modeinterface.png" alt="The Play Mode Interface" /></div></div></div></div><p><br class="figure-break" />
+      </p><p>The track mode selection interface (shown in <a class="xref" href="#modeinterface" title="Figure 3. The Play Mode Interface">Figure 3, “The Play Mode Interface”</a>) allows you to control how Grip plays the
+        tracks on a CD. The following options are available:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><div class="mediaobject"><img src="images/playnormal.png" /></div><p>
+            <span class="guilabel">Normal Mode</span> — In this mode,
+            tracks will be played in normal, numbered order.</p></li><li class="listitem"><div class="mediaobject"><img src="images/playrandom.png" /></div><p>
+            <span class="guilabel">Random Mode</span> — In this mode,
+            tracks will be played in a random order.</p></li><li class="listitem"><div class="mediaobject"><img src="images/playplaylist.png" /></div><p>
+            <span class="guilabel">Playlist Mode</span> — In this mode,
+            track will be played in an order you specify. In the text
+            entry box, entry a list of comma separated list of the
+            tracks you wish to play.</p></li><li class="listitem"><div class="mediaobject"><img src="images/playloop.png" /></div><p>
+            <span class="guilabel">Loop Mode</span> — In loop mode, when
+            playback finishes it will then resume at the beginning
+            again.</p></li><li class="listitem"><div class="mediaobject"><img src="images/playonce.png" /></div><p>
+            <span class="guilabel">Single Play Mode</span> — In this mode,
+            when playback finishes it will not begin again.</p></li></ul></div></div></div><div class="sect1" title="Ripping CDs with Grip"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="ripping"></a>Ripping CDs with Grip</h2></div></div></div><p>Playing CDs is great, but what Grip is really designed for is
+      ripping CDs and creating encoded versions of the tracks.</p><div class="sect2" title="Selecting Tracks To Rip"><div class="titlepage"><div><div><h3 class="title"><a id="id310617"></a>Selecting Tracks To Rip</h3></div></div></div><p>Before ripping, you need to select the tracks that you would
+        like to rip. This can be done by right-clicking on tracks in the
+        "Tracks" tab, or left clicking on a track when your mouse is under the
+        "Rip" column. In addtion, you can quickly select/deselect all tracks
+        for ripping by clicking on the "Rip" column label.</p></div><div class="sect2" title="Ripping CDs"><div class="titlepage"><div><div><h3 class="title"><a id="id310630"></a>Ripping CDs</h3></div></div></div><div class="figure"><a id="rip-interface"></a><p class="title"><b>Figure 4. The ripping interface</b></p><div class="figure-contents"><div class="screenshot"><div class="mediaobject"><img src="images/ripping.png" alt="The ripping interface" /></div></div></div></div><br class="figure-break" /><p>There are number of buttons in the interface under the "Rip"
+        tab. They function as follows:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p><span class="guilabel">Rip+Encode</span> — This will cause Grip
+            to rip and then encode all selected tracks.</p></li><li class="listitem"><p><span class="guilabel">Rip Only</span> — This will cause Grip
+            to rip all selected tracks, but not encode them.</p></li><li class="listitem"><p><span class="guilabel">Abort Rip and Encode</span> — Clicking
+            this button will abort all active rip and encode
+            processes.</p></li><li class="listitem"><p><span class="guilabel">Abort Ripping Only</span> — Clicking
+            this button will abort ripping, but will leave encoding
+            running.</p></li><li class="listitem"><p><span class="guilabel">DDJ Scan</span> — Clicking this button
+            will insert all track information for the current disc into
+            DigitalDJ's database (if it is installed)</p></li><li class="listitem"><p><span class="guilabel">Rip partial track</span> — If selected,
+            Grip will configured to rip a portion of a single track (as
+            specified by the "Start sector" and "End sector" values). The
+            "Play" button can be used preview the selected portion.</p></li></ul></div><p>In the bottom portion of the interface, Grip displays progress
+        bars for the rip and encode processes. It also computes the speed of
+        the processes as a function of normal playback speed (so 2.0x, for
+        example, means that processing is running twice as fast as normal
+        playback, on average). In addition, if Grip is using builtin
+        cdparanoia to rip, there will be a "smilie" indicator next to the
+        progress bar that reflects how much trouble Grip is having ripping
+        the CD. The meaning of the different smiles are as follows:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><div class="mediaobject"><img src="images/smile1.png" /></div><p>Normal operation, low/no jitter</p></li><li class="listitem"><div class="mediaobject"><img src="images/smile2.png" /></div><p>Normal operation, considerable jitter</p></li><li class="listitem"><div class="mediaobject"><img src="images/smile3.png" /></div><p>Read drift</p></li><li class="listitem"><div class="mediaobject"><img src="images/smile4.png" /></div><p>Unreported
+            loss of streaming in atomic read operation</p></li><li class="listitem"><div class="mediaobject"><img src="images/smile5.png" /></div><p>Finding
+            read problems at same point during reread; hard to correct</p></li><li class="listitem"><div class="mediaobject"><img src="images/smile6.png" /></div><p>SCSI/ATAPI transport error</p></li><li class="listitem"><div class="mediaobject"><img src="images/smile7.png" /></div><p>Scratch detected</p></li><li class="listitem"><div class="mediaobject"><img src="images/smile8.png" /></div><p>Gave up trying to perform a correction</p></li></ul></div><p>In addition to the individual track rip/encode progress bars,
+        Grip displays overall progress bars that indicate the overall progress
+        of a multi-track rip.</p><p>Grip also places an indicator for both ripping and encoding the
+        the LCD display. They show progress in %25 intervals, as can be seen
+        in this example of Grip in "small" mode. In this case, we are almost
+        finished ripping a track, and have encoded about a quarter of a
+        track.</p><div class="figure"><a id="rip-small"></a><p class="title"><b>Figure 5. Ripping in "small" mode</b></p><div class="figure-contents"><div class="screenshot"><div class="mediaobject"><img src="images/ripsmall.png" alt="Ripping in &quot;small&quot; mode" /></div></div></div></div><br class="figure-break" /></div><div class="sect2" title="Increasing Ripping Performance"><div class="titlepage"><div><div><h3 class="title"><a id="rip-perform"></a>Increasing Ripping Performance</h3></div></div></div><p>If you are using an IDE CDrom drive, using SCSI emulation can
+        give a significant performance increase. Apparently, dma is not used
+        by the IDE driver (at least in 2.4 kernels). To enable SCSI
+        emulation, add "hdx=ide-scsi" (where the "x" in "hdx" is is replaced
+        with the appropriate letter for your CDRom device) to end of the
+        "kernel" line in /etc/grub.conf (if you are using grub), or as a
+        line after "root=/dev/something" in /etc/lilo.conf (if you are using
+        lilo)</p><p>You can also disable paranoia to get approximately a 2x
+        speedup. This is not recommended, however, unless you are very
+        confident in the ability of your drive to do rock-solid CDDA
+        extraction (or unles you enjoy having pops in your audio)</p></div><div class="sect2" title="Using a SCSI drive"><div class="titlepage"><div><div><h3 class="title"><a id="sect-scsi"></a>Using a SCSI drive</h3></div></div></div><p>If you are using a SCSI drive, or an IDE drive under SCSI
+        emulation, Grip needs to access the generic scsi device in
+        addition to the cdrom device. On most systems, the generic scsi
+        device will be /dev/sgx, where 'x' is a number. Unless you have
+        multiple scsi devices, the device would be /dev/sg0. Ensure that
+        your user account has access to this device, and that this device
+        is specified in your rip configuration (see <a class="xref" href="#ripconfig" title="The &quot;Rip&quot; config tab">the section called “The "Rip" config tab”</a>).</p></div></div><div class="sect1" title="Configuring Grip"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="configure"></a>Configuring Grip</h2></div></div></div><p>The "Config" tab gives you access to a series of sub-tabs that
+      allow you to configure the various functions of Grip. Each of these
+      sub-tabs is described in detail in the following sections.</p><div class="sect2" title="The &quot;CD&quot; config tab"><div class="titlepage"><div><div><h3 class="title"><a id="cdconfig"></a>The "CD" config tab</h3></div></div></div><div class="figure"><a id="cdconfig-image"></a><p class="title"><b>Figure 6. The "CD" config tab</b></p><div class="figure-contents"><div class="screenshot"><div class="mediaobject"><img src="images/cdconfig.png" alt="The &quot;CD&quot; config tab" /></div></div></div></div><br class="figure-break" /><p>This tab allows to you configure options associated with your
+        cdrom device and CD playback. The options are:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p><span class="guilabel">CDRom device</span> — Specifies the
+            CDRom device to be used for CD playback.</p></li><li class="listitem"><p><span class="guilabel">Don't interrupt playback on
+              exit/startup</span> — If this option is checked, Grip
+            will not stop a playing track when it is shut down. Also, if a CD
+            is already playing when Grip starts, it will keep playing.</p></li><li class="listitem"><p><span class="guilabel">Rewind when stopped</span> — If this
+            option is checked, Grip will rewind to the beginning of the disc
+            whenever playback is stopped.</p></li><li class="listitem"><p><span class="guilabel">Startup with first track if not playing</span>
+            — If this option is checked, Grip will always make the first
+            track on the CD the current track if the CD is not currently
+            playing. Otherwise, Grip will start with whatever track is
+            currently set with the CDRom device.</p></li><li class="listitem"><p><span class="guilabel">Reshuffle before each playback</span> —
+            If this option is checked, randomized playback will be
+            re-randomized each time playback is restarted. Otherwise, the same
+            random sequence will be reused.</p></li><li class="listitem"><p><span class="guilabel">Work around faulty eject</span> — If
+            this option is set, Grip will not rely on querying the open/closed
+            status of the CDRom tray.</p></li><li class="listitem"><p><span class="guilabel">Poll disc drive for new disc</span> — If
+            this option is set, Grip will poll the disc drive to check if a
+            new disc has been inserted.</p></li><li class="listitem"><p><span class="guilabel">Poll interval</span> — This specifies
+            the number of seconds Grip waits between checks for a new
+            disc.</p></li></ul></div></div><div class="sect2" title="The &quot;Rip&quot; config tab"><div class="titlepage"><div><div><h3 class="title"><a id="ripconfig"></a>The "Rip" config tab</h3></div></div></div><p>This tab allows to you configure Grip's ripping
+        capabilities.</p><div class="figure"><a id="ripconfig-image"></a><p class="title"><b>Figure 7. The "Rip" config tab</b></p><div class="figure-contents"><div class="screenshot"><div class="mediaobject"><img src="images/ripconfig.png" alt="The &quot;Rip&quot; config tab" /></div></div></div></div><br class="figure-break" /><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p><span class="guilabel">Ripper</span> — This allows you to
+            select from various presets configured for various Rippers. By
+            default, "grip (cdparanoia)" is used, which rips with Grip's
+            builtin version of cdparanoia.</p></li><li class="listitem"><p><span class="guilabel">Disable paranoia</span> — If this option
+            is checked, Grip will disable cdparanoia's verification
+            system. This will make ripping approximately twice as fast, but
+            can result in errors. Unless you are very confident that your
+            drive is rock solid, it is recommended that you do not select this
+            option.</p></li><li class="listitem"><p><span class="guilabel">Disable extra paranoia</span> — If this
+            option is selected, Grip will only do overlap checking to ensure
+            proper alignment of reads. It will not verify reads for
+            errors.</p></li><li class="listitem"><p><span class="guilabel">Disable scratch detection / repair</span>
+            — These options allow you to determine whether Grip attempts
+            to detect scratches on the CD, and whether or not it attempts to
+            repair the scratches it detects.</p></li><li class="listitem"><p><span class="guilabel">Calculate gain adjustment</span>
+            — If this option is checked, Grip will calculate a suggested
+            gain adjustment for tracks as it rips. Computed values can then be
+            passed to external programs via the '%r' and '%R' switches.</p></li><li class="listitem"><p><span class="guilabel">Rip file format</span> — This allows to
+            you configure the filename and path that Grip rips files to. The
+            list of available switches can be found in <a class="xref" href="#gripswitches" title="Configuration (%) switches">the section called “Configuration (%) switches”</a>.</p></li><li class="listitem"><p><span class="guilabel">Generic SCSI device</span> — If you are
+            using a SCSI drive, or an IDE drive under SCSI emulation, you need
+            to specify the generic SCSI device to be used. Form more
+            information on using a SCSI drive, see <a class="xref" href="#sect-scsi" title="Using a SCSI drive">the section called “Using a SCSI drive”</a>
+          </p></li></ul></div><p>If you select a ripper other than Grip's builtin cdparanoia, the
+        configuration dialog will look slightly different:</p><div class="figure"><a id="ripconfig2-image"></a><p class="title"><b>Figure 8. Configuring an external ripper</b></p><div class="figure-contents"><div class="screenshot"><div class="mediaobject"><img src="images/ripconfig2.png" alt="Configuring an external ripper" /></div></div></div></div><br class="figure-break" /><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p><span class="guilabel">Ripping executable</span> — This is the
+            full path to the executable to be used for ripping</p></li><li class="listitem"><p><span class="guilabel">Rip command-line</span> — This is the
+            command-line to be passed to the ripping program. The list of
+            available switches can be found in <a class="xref" href="#gripswitches" title="Configuration (%) switches">the section called “Configuration (%) switches”</a>.</p></li></ul></div><p>The second sub-tab contains addition options that you can
+        specify to configure the ripping process.</p><div class="figure"><a id="ripconfig3-image"></a><p class="title"><b>Figure 9. Additional ripping options</b></p><div class="figure-contents"><div class="screenshot"><div class="mediaobject"><img src="images/ripconfig3.png" alt="Additional ripping options" /></div></div></div></div><br class="figure-break" /><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p><span class="guilabel">Rip 'nice' value</span> — This allows
+            you to set the 'nice' level to run the ripping process at. This
+            changes the scheduling priorty of the process. The range goes from
+            -20 (highest priority) to 19 (lowest).</p></li><li class="listitem"><p><span class="guilabel">Max non-encoded .wav's</span> — This
+            allows you to specify the maximum number of ripped wave files that
+            can accumulate if ripping is proceding faster than encoding can
+            keep up. It is useful to keep unencoded .wav files from taking up
+            too much disk space.</p></li><li class="listitem"><p><span class="guilabel">Auto-rip on insert</span> — If this
+            option is checked, Grip will automatically begin ripping all
+            tracks on a disc when it is inserted.</p></li><li class="listitem"><p><span class="guilabel">Beep after rip</span> — If this option
+            is checked, Grip will emit a beep when ripping is finished.</p></li><li class="listitem"><p><span class="guilabel">Auto-eject after rip</span> — If this
+            option is checked, Grip will eject the disc after ripping is
+            finished.</p></li><li class="listitem"><p><span class="guilabel">Auto-eject delay</span> — This allows
+            you to specify a delay (in seconds) before auto-ejection will
+            happen. This is useful on some drives that need time to spin down
+            before ejection can occur.</p></li><li class="listitem"><p><span class="guilabel">Delay before ripping</span> — If this is
+            selected, grip will delay 5 seconds before starting to rip. This
+            can help with some drives (particularly some dvd drives) that take
+            a while to spin up.</p></li><li class="listitem"><p><span class="guilabel">Stop cdrom drive between tracks</span> —
+            If this is selected, grip will spin down the cdrom drive between
+            ripping tracks.</p></li><li class="listitem"><p><span class="guilabel">Wav filter command</span> — This allows
+            you to specify a program (full path to executable, followed by
+            the command-line) to run after a file has been ripped, but
+            before it is encoded. This is useful for such tasks as
+            normalization. The list of available switches can be found in
+            <a class="xref" href="#gripswitches" title="Configuration (%) switches">the section called “Configuration (%) switches”</a>.</p></li><li class="listitem"><p><span class="guilabel">Disc filter command</span> — This
+            operates much like the Wav filter command, except that it is run
+            once after an entire disc has finished ripping.</p></li></ul></div></div><div class="sect2" title="The &quot;Encode&quot; config tab"><div class="titlepage"><div><div><h3 class="title"><a id="mp3config"></a>The "Encode" config tab</h3></div></div></div><p>This tab allows to you configure Grip's encoding
+        capabilities.</p><div class="figure"><a id="mp3config-image"></a><p class="title"><b>Figure 10. The "Encode" config tab</b></p><div class="figure-contents"><div class="screenshot"><div class="mediaobject"><img src="images/mp3config.png" alt="The &quot;Encode&quot; config tab" /></div></div></div></div><br class="figure-break" /><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p><span class="guilabel">Encoder</span> — This allows
+            you to select an encoder preset.</p></li><li class="listitem"><p><span class="guilabel">Encoder executable</span> — This specifies
+            the full path to the executable program you wish to use for
+            encoding.</p></li><li class="listitem"><p><span class="guilabel">Encoder command-line</span> — This is the
+            command-line to be passed to the encoding program. The list of
+            available switches can be found in <a class="xref" href="#gripswitches" title="Configuration (%) switches">the section called “Configuration (%) switches”</a>.</p></li><li class="listitem"><p><span class="guilabel">Encode file format</span> — This allows to
+            you configure the filename and path that Grip encodes to. The
+            list of available switches can be found in <a class="xref" href="#gripswitches" title="Configuration (%) switches">the section called “Configuration (%) switches”</a>.</p></li></ul></div><p>The second sub-tab contains addition options that you can
+        specify to configure the encoding process.</p><div class="figure"><a id="mp3config2-image"></a><p class="title"><b>Figure 11. Additional encoding options</b></p><div class="figure-contents"><div class="screenshot"><div class="mediaobject"><img src="images/mp3config2.png" alt="Additional encoding options" /></div></div></div></div><br class="figure-break" /><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p><span class="guilabel">Delete .wav after encoding</span> — If
+            this option is checked, Grip will delete wav files after it has
+            finished encoding them.</p></li><li class="listitem"><p><span class="guilabel">Insert info into SQL database</span> — If
+            this option is checked, Grip will insert track meta-data into the
+            DigitalDJ database (if it is installed).</p></li><li class="listitem"><p><span class="guilabel">Create .m3u files</span> — If
+            this option is checked, Grip will create .m3u playlist listing the
+            tracks on a CD when it is ripped.</p></li><li class="listitem"><p><span class="guilabel">Use relative paths in .m3u files</span>
+            — If this option is checked, filename is .m3u files will be
+            relative to the directory the .m3u file is in (otherwise, full
+            paths will be used).</p></li><li class="listitem"><p><span class="guilabel">M3U file format</span> — This specifies
+            the filename format to be used when writing .m3u files. The list
+            of available switches can be found in <a class="xref" href="#gripswitches" title="Configuration (%) switches">the section called “Configuration (%) switches”</a>.</p></li><li class="listitem"><p><span class="guilabel">Encoding bitrate</span> — This is the
+            encoding bitrate (kilobits per second) to be used. This value is
+            passed to the encoder using the '%b' switch.</p></li><li class="listitem"><p><span class="guilabel">Number of CPUs to use</span> — On
+            SMP systems, Grip can encode using multiple processors. This value
+            specifies the number of simultaneous encode processes to run. Grip
+            needs to be restarted for a change to take effect.</p></li><li class="listitem"><p><span class="guilabel">Encode 'nice' value</span> — This allows
+            you to set the 'nice' level to run encoding at. This changes the
+            scheduling priorty of the process. The range goes from -20
+            (highest priority) to 19 (lowest).</p></li><li class="listitem"><p><span class="guilabel">Encode filter command</span> — This allows
+            you to specify a program (full path to executable, followed by
+            the command-line) to run after a file has been encoded. The list
+            of available switches can be found in <a class="xref" href="#gripswitches" title="Configuration (%) switches">the section called “Configuration (%) switches”</a>.</p></li></ul></div></div><div class="sect2" title="The &quot;ID3&quot; config tab"><div class="titlepage"><div><div><h3 class="title"><a id="id3config"></a>The "ID3" config tab</h3></div></div></div><p>This tab allows to you customize Grip's use of ID3 tags.</p><div class="figure"><a id="id3config-image"></a><p class="title"><b>Figure 12. The "ID3" config tab</b></p><div class="figure-contents"><div class="screenshot"><div class="mediaobject"><img src="images/id3config.png" alt="The &quot;ID3&quot; config tab" /></div></div></div></div><br class="figure-break" /><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p><span class="guilabel">Add ID3 tags to encoded files</span> —
+            If this option is checked, Grip will add ID3v1 tags to the files
+            it encodes. ID3 tags are used to put song meta-data into an
+            encoded file. You will want to disable this if you are encoding
+            with a format other than MP3.</p></li><li class="listitem"><p><span class="guilabel">Add ID3v2 tags to encoded files</span> —
+            This option is only displayed if Grip has been compiled with ID3v2
+            support. If it is checked, Grip will add ID3v2 tags to the files
+            it encodes. ID3v2 tags remove the 20-character field length
+            limitation imposed by ID3v1.</p></li><li class="listitem"><p><span class="guilabel">ID3 comment field</span> — This allows
+            you to specify the format of the ID3 comment field. The list of
+            available switches can be found in <a class="xref" href="#gripswitches" title="Configuration (%) switches">the section called “Configuration (%) switches”</a>.</p></li><li class="listitem"><p><span class="guilabel">ID3v1 Character set encoding</span> —
+          The character encoding to be used for ID3v1 tags. ISO_8859_1 is
+          recommended.</p></li><li class="listitem"><p><span class="guilabel">ID3v2 Character set encoding</span> —
+          The character encoding to be used for ID3v1 tags. ISO_8859_1 or UTF-8
+          are the most likely options.</p></li></ul></div></div><div class="sect2" title="The &quot;DiscDB&quot; config tab"><div class="titlepage"><div><div><h3 class="title"><a id="discdbconfig"></a>The "DiscDB" config tab</h3></div></div></div><p>This tab allows to you customize how Grip talks to disc
+        information servers (such as freedb) to obtain disc meta-data.</p><div class="figure"><a id="discdbconfig-image"></a><p class="title"><b>Figure 13. The "DiscDB" config tab</b></p><div class="figure-contents"><div class="screenshot"><div class="mediaobject"><img src="images/discdbconfig.png" alt="The &quot;DiscDB&quot; config tab" /></div></div></div></div><br class="figure-break" /><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p><span class="guilabel">Primary/Secondary Server</span> — Grip
+            allows you to configure a primary and secondary disc database
+            server. If information cannot be found using the primary server,
+            Grip will then try using the secondary server.</p></li><li class="listitem"><p><span class="guilabel">DB server</span> — This is the http
+            address of the disc database server.</p></li><li class="listitem"><p><span class="guilabel">DB server</span> — This is the path to
+            the CGI to be used on the disc database server. It is generally
+            "~cddb/cddb.cgi".</p></li><li class="listitem"><p><span class="guilabel">DB Character set encoding</span> — The
+          character encoding to use when tranferring data to/from the
+          server. This should generally be set to UTF-8.</p></li><li class="listitem"><p><span class="guilabel">DB Submit email</span> — This allows you
+            to specify the email address to send disc database submissions
+            to.</p></li><li class="listitem"><p><span class="guilabel">Use freedb extensions</span> — If
+            checked, Grip will make use of extensions to the disc database
+            format used by freedb. Otherwise, it will use an older
+            format.</p></li><li class="listitem"><p><span class="guilabel">Perform disc lookups automatically</span>
+            — If this option is checked, Grip will automatically query
+            the disc database server when a disc is inserted that does not
+            already have meta-data stored.</p></li></ul></div></div><div class="sect2" title="The &quot;Proxy&quot; config tab"><div class="titlepage"><div><div><h3 class="title"><a id="proxyconfig"></a>The "Proxy" config tab</h3></div></div></div><p>This tab allows to you configure Grip to communicate through a
+        proxy server.</p><div class="figure"><a id="proxyconfig-image"></a><p class="title"><b>Figure 14. The "Proxy" config tab</b></p><div class="figure-contents"><div class="screenshot"><div class="mediaobject"><img src="images/proxyconfig.png" alt="The &quot;Proxy&quot; config tab" /></div></div></div></div><br class="figure-break" /><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p><span class="guilabel">Use proxy server</span> — Indicates
+            whether or not Grip should do disc lookups via a proxy server.
+          </p></li><li class="listitem"><p><span class="guilabel">Get server from 'http_proxy' env. var</span>
+            — If this option is checked, Grip will check the
+            'http_proxy' environment variable, and use its value as the name
+            of the proxy server.
+          </p></li><li class="listitem"><p><span class="guilabel">Proxy server</span> — The name of the
+            proxy server to use.
+          </p></li><li class="listitem"><p><span class="guilabel">Proxy port</span> — The port to use on
+            the proxy server (usually 8000).
+          </p></li><li class="listitem"><p><span class="guilabel">Proxy username</span> — Some proxies
+            require user authentication. This field is the username you wish
+            to authenticte with.
+          </p></li><li class="listitem"><p><span class="guilabel">Proxy password</span> — This is the
+            password that goes along with the username for proxy
+            authentication.
+          </p></li></ul></div></div><div class="sect2" title="The &quot;Misc&quot; config tab"><div class="titlepage"><div><div><h3 class="title"><a id="miscconfig"></a>The "Misc" config tab</h3></div></div></div><p>This tab allows contains various additional configuration
+        options.</p><div class="figure"><a id="msicconfig-image"></a><p class="title"><b>Figure 15. The "Misc" config tab</b></p><div class="figure-contents"><div class="screenshot"><div class="mediaobject"><img src="images/miscconfig.png" alt="The &quot;Misc&quot; config tab" /></div></div></div></div><br class="figure-break" /><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p><span class="guilabel">Email address</span> — A valid email
+            addres where you can be reached. This is used with disc database
+            submissions to allow the disc database server to contact you if
+            there are problems with a submission.
+          </p></li><li class="listitem"><p><span class="guilabel">CD update program</span> — This allows
+            you to specify a program (full path to executable, followed by
+            the command-line) to run when a new disc is inserted. This is
+            useful for such tasks as normalization. The list of available
+            switches can be found in <a class="xref" href="#gripswitches" title="Configuration (%) switches">the section called “Configuration (%) switches”</a>.
+          </p></li><li class="listitem"><p><span class="guilabel">Do not lowercase filenames</span> — By
+            default, Grip lowercases the strings used when translating the '%'
+            switches. If this option is checked, it will not do this.
+          </p></li><li class="listitem"><p><span class="guilabel">Allow high bits in filename</span> — By
+            default, Grip strips high-bit characters in the strings used when
+            translating the '%' switches. If this option is checked, it will
+            not do this.
+          </p></li><li class="listitem"><p><span class="guilabel">Do not change spaces to underscores</span>
+            — By default, Grip replaces spaces with underscores in the
+            strings used when translating the '%' switches. If this option is
+            checked, it will not do this.
+          </p></li><li class="listitem"><p><span class="guilabel">Characters to not strip in filenames</span>
+            — Grip strips all non-alphanumeric characters in the
+            strings used when translating the '%' switches. Any characters
+            entered here will explicity not be stripped.
+          </p></li></ul></div></div><div class="sect2" title="Configuration (%) switches"><div class="titlepage"><div><div><h3 class="title"><a id="gripswitches"></a>Configuration (%) switches</h3></div></div></div><p>Here is a list of the '%' switches used in command-lines.</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p><span class="guilabel">b</span> — The bitrate that files
+            are being encoded at.  </p></li><li class="listitem"><p><span class="guilabel">c</span> — The CDrom device
+            being used.  </p></li><li class="listitem"><p><span class="guilabel">C</span> — The generic scsi
+            device being used (note that this will be substituted with the
+            CDrom device if no generic scsi device has been
+            specified).</p></li><li class="listitem"><p><span class="guilabel">w</span> — The filename of the
+            wave file being ripped.  </p></li><li class="listitem"><p><span class="guilabel">m</span> — The filename of the
+            file being encoded.  </p></li><li class="listitem"><p><span class="guilabel">t</span> — The track
+            number,beginning at 1, and zero-filled (ie: '03' for the third
+            track).  </p></li><li class="listitem"><p><span class="guilabel">s</span> — The start sector of
+            the track.  </p></li><li class="listitem"><p><span class="guilabel">e</span> — The end sector of the
+            track.  </p></li><li class="listitem"><p><span class="guilabel">n</span> — The name of the
+            track.  </p></li><li class="listitem"><p><span class="guilabel">a</span> — The artist name for
+            the track.  </p></li><li class="listitem"><p><span class="guilabel">A</span> — The artist name for
+            the disc.  </p></li><li class="listitem"><p><span class="guilabel">d</span> — The name of the disc.
+          </p></li><li class="listitem"><p><span class="guilabel">i</span> — The disc database id
+            (in hex) for the disc.  </p></li><li class="listitem"><p><span class="guilabel">y</span> — The year of the disc.
+          </p></li><li class="listitem"><p><span class="guilabel">g</span> — The ID3 genre id of
+            the disc.  </p></li><li class="listitem"><p><span class="guilabel">G</span> — The ID3 genre string
+            of the disc.  </p></li><li class="listitem"><p><span class="guilabel">r</span> — The recommended
+            replay gain for the track (in dB). Note that this is only applicable
+            if you have enabled gain calculation. You can find more information
+            on this gain adjustment at <a class="ulink" href="http://www.replaygain.org" target="_top">www.replaygain.org</a></p></li><li class="listitem"><p><span class="guilabel">R</span> — The recommended
+            replay gain for the entire album (in dB). This value is only valide
+            after an entire disc has been ripped (it is designed to be used with
+            the disc filter command).</p></li><li class="listitem"><p><span class="guilabel">x</span> — The encoded file
+        extension (ie "mp3")</p></li></ul></div><p>Any of the '%' switches can optionally be preceded by a '*' or
+        '!' modifier (for example, '%*a'). '*' prevents Grip from doing any
+        stripping of characters from the string. '!' forces Grip to strip
+        characters from the string. If neither modifier is used, Grip will
+        do what it thinks is best (generally, it will only munge strings if
+        it knows they are part of a filename).</p></div></div><div class="sect1" title="FAQ"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="faq"></a>FAQ</h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Q: When I try to rip a track, I get X I/O errors. What
+          gives?</p><p>A: This seems to be a problem with non-thread-safe
+          systems. Make sure your system is safe for threads. This often
+          seems to be associated with libc5.</p></li><li class="listitem"><p>Q: I just get a message saying that the program can't
+          access my drive. This makes it hard to do much. Help!</p><p>A: Your user account must have access to the cdrom device.
+        </p></li><li class="listitem"><p>Q: I can play cd's fine, but my ripper can't access
+          the drive. Why not?</p><p>A: On scsi systems, rippers (cdparanoia, at least) need access
+          to the generic scsi device as well.</p></li><li class="listitem"><p>Q: The progress bar doesn't seem to be completely
+          accurate when encoding. Why can't it get it right?</p><p>A: The progress bar is done based on the size of the output
+          file. If you have the kbits/sec set properly, Grip should estimate
+          the size properly. Note that if you use variable bitrate encoding
+          (supported by encoders like LAME and xing) Grip has no way to
+          accurately guess the file size.</p></li><li class="listitem"><p>Q: When I try to rip, Grip skips some of the tracks I
+          have selected. That's not nice -- how can I make it stop?</p><p>A: Some drives (particularly some dvd drives) take a while to
+          spin up, and get confused if ripping starts before they are
+          ready. Try enabling the "Delay before ripping" setting in <a class="xref" href="#ripconfig" title="The &quot;Rip&quot; config tab">the section called “The "Rip" config tab”</a>.</p></li><li class="listitem"><p>Q: When I encode tracks, the progress bar never
+          does anything. What happened to progress?</p><p>A: If your encoder doesn't accept an output filename (like
+          BladeEnc), or you haven't passed it one on the command-line, then
+          it might not be outputting to the file Grip expects. Make sure
+          that your encoded file format is set to what your encoder is
+          actually producing.</p></li><li class="listitem"><p>Q: When Grip looks up disc information, it works, but
+          says "Error saving disc data". Why?</p><p>A: Grip saves local copies of disc track information in the
+          directory "~/.cddb". It must be able to create or access this
+          directory.</p></li><li class="listitem"><p>Q: How come I don't get any scrollbars in the track
+          display?</p><p>A: You are using a version of Grip compiled for gtk+ v1.0.x on
+          a system that has gtk+ v1.2.x installed. You need to either get a
+          binary compiled for the development series of gtk+, or compile
+          Grip yourself.</p></li><li class="listitem"><p>Q: When my buddy runs Grip, he gets those nifty LCD
+          icons showing rip/encode/DiscDB status, but I don't. What makes him
+          so special?</p><p>A: He's using a more recent version of gtk+ than you are. Due
+          to bugs in gtk+ v1.0.x, I don't support the icons under
+          it. Upgrade your gtk+!</p></li><li class="listitem"><p>Q: I can't get Grip to rip any tracks! This makes it
+          less than useful...</p><p>A: Grip won't rip tracks unless you tell it what to rip. Use
+          the right mouse button to select tracks for
+          ripping.</p></li><li class="listitem"><p>Q: I was listening to a CD in Grip and it sounded
+          horrible! What's up?</p><p>A: Perhaps you are listening to country
+          music...</p></li></ul></div></div><div class="sect1" title="Getting More Help"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="morehelp"></a>Getting More Help</h2></div></div></div><p>If you need more help with Grip,
+      your best resource is the Grip mailing list. You will find it <a class="ulink" href="http://lists.sourceforge.net/mailman/listinfo/grip-users" target="_top">
+        here</a>. Be sure to check the mailing list archives for answers to
+      any questions you may have.</p></div><div class="sect1" title="Reporting Bugs / Sumitting Patches"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="bugs"></a>Reporting Bugs / Sumitting Patches</h2></div></div></div><p>To report a bug with Grip, or to submit a patch. Please do so at
+      the <a class="ulink" href="http://sourceforge.net/projects/grip" target="_top">Grip
+        section</a> on sourceforge.net.</p></div><div class="sect1" title="CDDB notes"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="cddb"></a>CDDB notes</h2></div></div></div><p>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 freedb.org.</p></div><div class="sect1" title="License and Disclaimer"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="license"></a>License and Disclaimer</h2></div></div></div><p>Grip is Copyright
+      &amp;copy 2002 by Mike Oliphant. Grip 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.</p><p>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.</p><p>You should have received a copy of the GNU General Public License
+      along with this distribution; if not, write to the Free Software
+      Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111,
+      USA.</p></div><div class="sect1" title="Acknowledgments"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="acknowledge"></a>Acknowledgments</h2></div></div></div><p>Thanks go to:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Everyone involved in GTK development for a wonderful
+          GUI</p></li><li class="listitem"><p>Tony Arcieri, for libcdaudio, which formed the basis
+          of Grip's low-level cd control and disc database access
+          routines</p></li><li class="listitem"><p>Monty, for cdparanoia and the paranoia
+          library</p></li><li class="listitem"><p>Heiko Eissfeldt for cdda2wav</p></li><li class="listitem"><p>Mike Cheng, Mark Taylor and all the others who have
+          worked on LAME</p></li><li class="listitem"><p>Tord Jansson for BladeEnc</p></li><li class="listitem"><p>Michael Kaiser and everyone else who has helped out
+          with freedb</p></li><li class="listitem"><p>Ti Kan, for the xmcd button bitmaps, many of which I
+          use in modified form (shame on you for the cddb fiasco,
+          however)</p></li><li class="listitem"><p>mp3.com for hosting nostatic.org</p></li><li class="listitem"><p>David Robinson and Glen Sawyer for
+          ReplayGain</p></li><li class="listitem"><p>Everyone else who has given me feedback, contributed
+          code, and helped test Grip (see the ChangeLog and CREDITS for
+          specific contributions)</p></li></ul></div></div></div></body></html>