Command Line Apps ripit

ripit audio converter
From the man page.

A Perl script that makes it a lot easier to create "mp3" files from an audio CD. RipIT supports Flac, Lame, Oggenc, Faac, mp4als and Musepack. Artist and song titles are retrieved either with the CDDB_get.pm from freedb.org or using  WebService::MusicBrainz.pm from MusicBrainz.org. It is possible  to  submit  and edit CDDB entries at freedb.org, submission of MusicBrainz data need a login. Hidden tracks and ghost songs are detected and split into chunks of sound, a toc or inf files permit to burn the WAV files with text and no gaps in DAO mode. Several encoder formats and qualities can be used at the same time and encoded into different directories.

EXAMPLES:

To specify a CD device, type

ripit --device /dev/sr1

To specify the output directory, type

ripit --outputdir /foo/paths/

To rip and encode a special track selection, type

ripit 1,3-6,8-11

To use several encoders in the same run, type

ripit --coder 1,0,2 --quality 3,5,6

To use Lame with variable bitrate (VBR), type

ripit --vbrmode new --bitrate 0

Note, one should reset the --bitrate to 0 (zero) if the -b option of Lame is not desired. According to VBR mode in Lame, use "new" or "old". It is recommended to use the preset switches for Lame, (see Lame man-page) and specify fast encoding with  --vbr‐mode new (use --vbrmode old to switch off the fast encoding)

ripit --preset extreme --vbrmode new

To pass options related to the encoder use the according encoder option switch: e.g. to use the managed mode with oggenc:

ripit -c 1 --oggencopt "--managed -b 192 -M 224 -m 96" --quality "off"

Normalize your wave-files prior to encoding:

ripit --normalize

Normalize your files to -18dB using "mix mode" (see normalize documentation)

ripit --normalize --normopt "-m -a -18dB"

To define a directory template where the sound files should go, type

ripit --dirtemplate '"$artist - $year"'

To create 2 directory levels, as used in other environments, type

ripit --dirtemplate '"$artist/$album"'

To save a config file in ~/home/.ripit/ with options: to use Lame and Oggenc, don't create a m3u file, archive the CDDB entry files in ~/.cddb/"category"/ and to eject CD when done, type

ripit --coder 0,1 --playlist 0 --archive --eject --save

To do the job without any interaction, type

ripit --nointeraction

To use a network for encoding, make sure that the output paths are equal on all machines!

ripit --sshlist sun,saturn,earth

where sun,  saturn and earth are remote machines on which a user can login via ssh without entering a password or passphrase! Note that the paths must be equal for the user on all remote machines! If the login is different  on some machines, try

ripit --sshlist login1@sun,login2@saturn,login3@earth

If there is "no" identical path on the remote machines, then the user might enter e.g. /tmp/ as output directory. If the file-system is not mounted on each remote machine, one can try to copy the wavs  to  the  remote  machines using option --scp.

ripit --sshlist sun,saturn,earth --scp

Check for ghost songs and trim very long lead-in/out:

ripit --ghost --prepend 1.0 --extend 1.0

Rip only first 30 seconds of each track (useful for testing)

ripit --span 0-30

Encode the same format in 2 qualities, at low quality for a portable, at high quality for home:

ripit --dirtemplate '"cbr/$artist/$year ‐ $album"' \ --dirtemplate '"preset/$artist ‐ $album"' \ --coder 0,0 --bitrate off --quality off,off \ --lameopt "-b 128 -q 2;--preset extreme"

Force RipIT to use one and the same directory for all sound files:

ripit --dirtemplate '"/"' --outputdir="/media/sound" \ --resume