Warning: this is an htmlized version!
The original is here, and
the conversion rules are here.
#######
#
# E-scripts about cdrom drives (mainly the Acer 4x4x32 CD-RW)
#
# Note 1: use the eev command (defined in eev.el) and the
# ee alias (in my .zshrc) to execute parts of this file.
# Executing this file as a whole makes no sense.
# An introduction to eev can be found here:
#
#   (find-eev-quick-intro)
#   http://angg.twu.net/eev-intros/find-eev-quick-intro.html
#
# Note 2: be VERY careful and make sure you understand what
# you're doing.
#
# Note 3: If you use a shell other than zsh things like |&
# and the for loops may not work.
#
# Note 4: I always run as root.
#
# Note 5: some parts are too old and don't work anymore. Some
# never worked.
#
# Note 6: the definitions for the find-xxxfile commands are on my
# .emacs.
#
# Note 7: if you see a strange command check my .zshrc -- it may
# be defined there as a function or an alias.
#
# Note 8: the sections without dates are always older than the
# sections with dates.
#
# This file is at <http://angg.twu.net/e/cdrom.e>
#           or at <http://angg.twu.net/e/cdrom.e.html>.
#        See also <http://angg.twu.net/emacs.html>,
#                 <http://angg.twu.net/.emacs[.html]>,
#                 <http://angg.twu.net/.zshrc[.html]>,
#                 <http://angg.twu.net/escripts.html>,
#             and <http://angg.twu.net/>.
#
#######





# «.mkisofs_slinkb1»	(to "mkisofs_slinkb1")
# «.mkisofs-options»	(to "mkisofs-options")
# «.cdparanoia_src»	(to "cdparanoia_src")
# «.cdparanoia_smileys»	(to "cdparanoia_smileys")
# «.cdparanoia_acer»	(to "cdparanoia_acer")
# «.audio»		(to "audio")
# «.cdrecord»		(to "cdrecord")
# «.cdrdao»		(to "cdrdao")
# «.jack»		(to "jack")
# «.cddb»		(to "cddb")
# «.exact-copy-of-iso9660CD»	(to "exact-copy-of-iso9660CD")
# «.cdrecord-on-k26»	(to "cdrecord-on-k26")
# «.abcde»		(to "abcde")
# «.genisomage»		(to "genisomage")
# «.dirsplit»		(to "dirsplit")
# «.wodim»		(to "wodim")
# «.cdrtools»		(to "cdrtools")
# «.sound-juicer»	(to "sound-juicer")
# «.ripit»		(to "ripit")
# «.xorriso»		(to "xorriso")
# «.xorriso-live-build»	(to "xorriso-live-build")
# «.pacpl»		(to "pacpl")
# «.ripperx»		(to "ripperx")



Related pages:
  (find-es "dvd")


https://wiki.debian.org/Ripping
https://www.maketecheasier.com/rip-audio-cd-in-linux/
https://wiki.archlinux.org/index.php/Rip_Audio_CDs
https://help.ubuntu.com/community/CDRipping


ripperx
pacpl
abcde

apti abcde
apti eyed3





#####
#
# Preparing an iso9660 image for a Slink CD
# 2000may12
#
#####

# «mkisofs_slinkb1»  (to ".mkisofs_slinkb1")

# (find-vldifile "cdrecord.list")
# (find-fline "/usr/doc/cdrecord/")
# (find-vldifile "mkisofs.list")
# (find-fline "/usr/doc/mkisofs/")

# (find-htetfile "CD-Writing-HOWTO.gz")
# (find-htetfile "CD-Writing-HOWTO.gz" "mkisofs  -r")

# (find-htetfile "mini/RedHat-CD.txt.gz" "mkisofs -v")
# (find-es "hw-cdrw" "mkisofs-options")

# mkisofs -v -R -T -J -V "Red Hat 6.0" -b images/boot.img -c boot.cat -o /tmp/redhat.img .

-v, -verbose                Verbose
-R, -rock                   Generate Rock Ridge directory information
-T, -translation-table   Gen trnsl tables for syss tht dnt ndrstnd long fnames
-J, -joliet                 Generate Joliet directory information
-V ID, -volid ID            Set Volume ID
-b FILE, -eltorito-boot FILE Set El Torito boot image name
-c FILE, -eltorito-catalog FILE Set El Torito boot catalog name
-o FILE, -output FILE       Set output file name

# (find-man "mkisofs" "like the -R option")

# Estimate size (in number of of 2K chunks?)
# (find-man "mkisofs" "^ *-print-size")
cd /hdc6/bin1/
mkisofs -print-size -r -T -J -V "Slink bin 1 (Edrx 00may12)" \
  -b boot/resc1440.bin -c boot/boot.catalog \
  -o /dev/null . \
  |& l -S

# Estimate again, but now with du
cd /hdc6/bin1/
du -c -s


# Make the image!
#
cd /hdc6/bin1/
mkisofs -r -T -J -V "Slink bin 1 (Edrx 00may12)" \
  -b boot/resc1440.bin -c boot/boot.catalog \
  -o /hdc5/slinkb1.iso . \
  |& tee ~/o


# Test it.
# (eeman "8 mount" "THE LOOP DEVICE")
mount -t iso9660  /hdc5/slinkb1.iso /L  -o loop
cd /L
laf
#
umount /L


# (find-es "hw-cdrw" "cdrecord")

/etc/init.d/cron stop

cdrecord -scanbus
cdrecord -dummy dev=0,0,0 -v  /hdc5/slinkb1.iso

cdrecord        dev=0,0,0 -v  /hdc5/slinkb1.iso

/etc/init.d/cron start






#####
#
# options for mkisofs-1.12 (edited and reordered)
# 2000may12
#
#####

# «mkisofs-options»  (to ".mkisofs-options")
# (eeman "mkisofs")
mkisofs -h  >& ~/o


-a, -all-files              Process all files (don't skip backup files)
-exclude-list FILE          File with list of file names to exclude
-m GLOBFILE, -exclude GLOBFILE  Exclude file name
-path-list FILE             File with list of pathnames to process
-x FILE, -old-exclude FILE  Exclude file name(depreciated)

-print-size                 Print estimated filesystem size and exit

-b FILE, -eltorito-boot FILE Set El Torito boot image name
-c FILE, -eltorito-catalog FILE Set El Torito boot catalog name
-B FILES, -sparc-boot FILES Set sparc boot image names
-sparc-label label text     Set sparc boot disk label
-G FILE, -generic-boot FILE Set generic boot image name
-hard-disk-boot             Boot image is a hard disk image
-no-emul-boot               Boot image is 'no emulation' image
-no-boot                    Boot image is not bootable
-boot-load-seg #            Set load segment for boot image
-boot-load-size #           Set numbers of load sectors
-boot-info-table            Patch boot image with info table

-hide GLOBFILE              Hide ISO9660/RR file
-hide-list FILE             File with list of ISO9660/RR files to hide
-hide-joliet GLOBFILE       Hide Joliet file
-hide-joliet-list FILE      File with list of Joliet files to hide
-hide-joliet-trans-tbl      Hide TRANS.TBL from Joliet tree
-hide-rr-moved              Rename RR_MOVED to .rr_moved in Rock Ridge tree
-J, -joliet                 Generate Joliet directory information
-l, -full-iso9660-filenames Allow full 32 character filenames for iso9660 names
-L, -allow-leading-dots     Allow iso9660 filenames to start with '.'
-N, -omit-version-number    Omit version number from iso9660 filename
-no-rr                    Inhibit reading of Rock Ridge attrs from prev session
-r, -rational-rock       Generate rationalized Rock Ridge directory information
-R, -rock                   Generate Rock Ridge directory information

-T, -translation-table   Gen trnsl tables for syss tht dnt ndrstnd long fnames
-table-name TABLE_NAME      Translation table file name

-f, -follow-links           Follow symbolic links
-no-split-symlink-components Inhibit splitting symlink components
-no-split-symlink-fields    Inhibit splitting symlink fields

-o FILE, -output FILE       Set output file name
-split-output               Split output into files of approx. 1GB size

-help                       Print option help
-version                    Print the current version

-log-file LOG_FILE          Re-direct messages to LOG_FILE
-quiet                      Run quietly
-v, -verbose                Verbose

-abstract FILE              Set Abstract filename
-A ID, -appid ID            Set Application ID
-biblio FILE                Set Bibliographic filename
-copyright FILE             Set Copyright filename
-P PUB, -publisher PUB      Set Volume publisher
-V ID, -volid ID            Set Volume ID
-p PREP, -preparer PREP     Set Volume preparer
-sysid ID                   Set System ID
-volset ID                  Set Volume set ID
-volset-seqno #             Set Volume set sequence number
-volset-size #              Set Volume set size

-C PARAMS, -cdrecord-params PARAMS  Magic paramters from cdrecord
-M FILE, -prev-session FILE Set path to previous session to merge

-d, -omit-period            Omit trailing periods from filenames
-U, -untranslated-filenames Allow Untranslated filenames (for HPUX & AIX). Forces on -d, -l, -L, -N
-D, -disable-deep-relocation  Disable deep directory relocation

-gui                        Switch behaviour for GUI
-i ADD_FILES                No longer supported





######
#
# cdparanoia source
# 00feb07
#
######

# «cdparanoia_src»  (to ".cdparanoia_src")

pdsc /big/slinks2/dists/slink/main/source/sound/cdparanoia_3a9-1.dsc
cd /usr/src/cdparanoia-3a9/

# «cdparanoia_smileys»  (to ".cdparanoia_smileys")
# (code-c-d "cdpa" "/usr/src/cdparanoia-3a9/")
# (find-cdpafile "")
# (find-cdpafile "main.c" "smilie=\" :^D\"")
# (find-cdpafile "main.c" "'+'")

cdparanoia -v 6 floorshow_detmold.wav

(/ (- 108032 86440) 287.0)
Cerca de 75 stores por segundo.

cd /mp3s/MINE/WAV/
anonftp ifigenia 'cd /hda1/' 'mget *.wav' 'quit'

# (find-udfile "cdparanoia/FAQ.txt.gz" "  The progress meter:")
# (find-udfile "cdparanoia/FAQ.txt.gz" "   Legend of\n   smilies")






#####
#
# cdparanoia-III src
# 00feb08
#
#####

# From the homepage:
#
#   This alpha release is stable code; its status as 'alpha' is because
#   the library interface (Paranoia III) is soon to be replaced (by
#   Paranoia IV) and as such, will not be supported after Paranoia IV's
#   release.

#*
rm -Rv /usr/src/cdparanoia-III-alpha9.7/
cd /usr/src/
tar -xvzf $S/http/www.xiph.org/paranoia/download/cdparanoia-III-alpha9.7.src.tgz
cd /usr/src/cdparanoia-III-alpha9.7/

#*
./configure	|& tee oc
make		|& tee om
make LIBDIR=/usr/lib install	|& tee omi

# (find-fline "~/EXPECT/ripmp3")
# (code-c-d "cdpa3" "/usr/src/cdparanoia-III-alpha9.7/")

# (find-cdpa3file "")
# (find-cdpa3file "main.c" "smilie=\" :^D\"")
# (find-cdpa3file "main.c" "'+'")






#####
#
# cdparanoia on the Acer CDRW drive
# 99jan27
#
#####

# «cdparanoia_acer»  (to ".cdparanoia_acer")

# We need both the SCSI-CDROM interface and the generic SCSI device
# interface. Note: this is for the 2.2.xx kernels.

rmmod ide-cd

cd /boot/angg22/
# depmod *.o | sort | uniq
insmod cdrom.o
insmod scsi_mod.o
insmod ide-scsi.o
insmod sr_mod.o
insmod sg.o

# ln -sf hdd  /dev/cdrom
ln -sf scd0 /dev/cdrom
laf /dev/cdrom

# (find-k22file "Documentation/devices.txt" "SCSI CD-ROM")
# (find-k22file "Documentation/devices.txt" "generic SCSI access")
# (find-k22file "Documentation/Configure.help" "SCSI CDROM support")
# (find-k22file "Documentation/Configure.help" "\nSCSI generic support")

# The "sg"s are not default on Slink
cd /dev/
laf sg*
MAKEDEV sg
laf sg*

# (code-c-d "cdpa" "/usr/src/cdparanoia-3a9/")
# (find-cdpafile "FAQ.txt" "generic")
# (find-cdpafile "README" "generic")
# (eeman "cdparanoia" "--force-generic-device")

cd /tmp/
cdparanoia -v 26 toada_e_mambo_e_tango_e_etc.wav

# Seems that "-g /dev/sg0" is unneccessary.



cd /tmp/
/usr/src/bladesrc-081/bladeenc \
  toada_e_mambo_e_tango_e_etc.wav \
  toada_e_mambo_e_tango_e_etc.mp3





#####
#
# cdrecord 1.8a40 (comes with mkisofs)
# 00feb10
#
#####

# (code-c-d "cdrec" "/usr/src/cdrecord-1.8a40/")

pdsc $SDEBIAN/dists/potato/main/source/otherosfs/cdrecord_1.8a40-1.dsc
cd /usr/src/cdrecord-1.8a40/
debian/rules binary	|& tee odrb
# Always the dh_link problem...

cd /usr/src/cdrecord-1.8a40/
make install	|& tee omi
grep INSTALL omi

# NOTE: I'm overwriting the slink version with the new version!
#
cd /opt/schily/
cp -dpPvR * /usr/ \
  |& tee /usr/src/cdrecord-1.8a40/omi2
rm -Rv /opt/schily/

# (find-cdrecfile "")
# (find-cdrecfile "odrb")
# (find-cdrecfile "debian/rules")
# (find-cdrecfile "Gmake.linux")
# (find-cdrecfile "Makefile")
# (find-cdrecfile "RULES/")
# (find-cdrecfile "INSTALL" "opt/schily")

# (find-cdrecfile "omi")





#####
#
# mkisofs
# 00feb09
#
#####

# (eeman "mkisofs" "ownership")
# Note: I have to add md5sums in the future...

rm -Rv /tmp/cd
mkdir /tmp/cd/
cd /big/
cp -dipPvR [9A-j]* /tmp/cd/

mkisofs -r -o /tmp/cdimage /tmp/cd	|& tee ~/om
laf /tmp/cdimage


# another image:

mkisofs -r -o /tmp/cdimage /mp3s/spider
laf /tmp/cdimage


# another:

mkisofs -r -J -o /tmp/cdimage /mp3s/CD/
laf /tmp/cdimage


# To test an image:

# (find-angg ".zshrc" "loop_device")
insmod /boot/angg22/loop.o
mountloop0L /tmp/cdimage
laf /L
mount

cd /L
laf

umountloop0





#####
#
# recording audio CDs
# 2002sep11
#
#####

# «audio»  (to ".audio")
# (find-htetfile "CD-Writing-HOWTO.gz")
# (find-man "1 cdrecord")
# (find-man "1 cdrecord" ".wav")
# (find-man "1 cdrecord" "   -pad   ")




#####
#
# cdrecord: writing CDs
# 00feb10
#
#####

# «cdrecord»  (to ".cdrecord")

# (find-vldifile "cdrecord.list")
# (find-fline "/usr/doc/cdrecord/")
# (find-fline "/usr/doc/cdrecord/README.multi.gz")
# (find-cdrecfile "README.multi")
# (find-man "cdrecord")
# (find-man "cdrecord" "fixated")
# (find-man "cdrecord" "speed")

# (code-c-d "sht" "$S/ftp/sunsite.unc.edu/pub/Linux/docs/HOWTO/")
# (find-htetfile "CD-Writing-HOWTO.gz")
# (find-htetfile "CD-Writing-HOWTO.gz" "cdrecord-1.6")
# (find-htetfile "CD-Writing-HOWTO.gz" "620 MB")
# (find-htetfile "CD-Writing-HOWTO.gz" "  How to create a multi-session CD?")
# (find-htetfile "CD-Writing-HOWTO.gz" "specify the parameter blank=fast")

# (find-man "cdrecord" "driver=")
cdrecord driver=help


# (find-man "cdrecord")
# (find-man "cdrecord" "-dummy")
# (find-man "cdrecord" "-multi")
# (find-man "cdrecord" "DIAGNOSTICS")
# (find-fline "~/ocdr")
# (find-cdrecfile "csi-bsd.c" "retryable")

# (find-cdrecfile "libscg/scsi-bsd.c" "retryable")
# (find-cdrecfile "libscg/scg/scgcmd.h" "retryable")
# (find-cdrecfile "libscg/scsitransp.c" "retryable")

cdrecord -scanbus
cdrecord -dummy -v -multi speed=4 dev=0,0,0 /tmp/cdimage	|& tee ~/ocdr
cdrecord        -v -multi speed=2 dev=0,0,0 /tmp/cdimage
cdrecord        -v        speed=2 dev=0,0,0 /tmp/cdimage

cdrecord -msinfo dev=0,0,0
# I'm getting errors here...
# ops - errors are OK on non-multi-session CDs.
# (find-man "cdrecord" "-msinfo")


/etc/init.d/cron stop

cdrecord -scanbus
cdrecord -dummy dev=0,0,0 -v /tmp/cdimage
cdrecord -dummy speed=4 dev=0,0,0 -v /tmp/cdimage

/etc/init.d/cron start




#####
#
# cdrecord errors
# 00may12
#
#####

# I always get this (AFAIR) when I start a write:

cdrecord -dummy dev=0,0,0 -v  /hdc5/slinkb1.iso
Cdrecord 1.8 (i686-pc-linux-gnu) Copyright (C) 1995-2000 J÷rg Schilling
TOC Type: 1 = CD-ROM
scsidev: '0,0,0'
scsibus: 0 target: 0 lun: 0
Using libscg version 'schily-0.1'
atapi: 1
Device type    : Removable CD-ROM
Version        : 0
Response Format: 1
Vendor_info    : 'ATAPI   '
Identifikation : 'CD-R/RW 4X4X32  '
Revision       : '3.DR'
Device seems to be: Generic mmc CD-RW.
Using generic SCSI-3/mmc CD-R driver (mmc_cdr).
Driver flags   : SWABAUDIO
Drive buf size : 374784 = 366 KB
FIFO size      : 4194304 = 4096 KB
Track 01: data  594 MB
Total size:     682 MB (67:37.50) = 304313 sectors
Lout start:     682 MB (67:39/38) = 304313 sectors
cdrecord: Input/output error. start/stop unit: scsi sendcmd: retryable error
CDB:  1B 00 00 00 01 00
status: 0x2 (CHECK CONDITION)
Sense Bytes: 70 00 04 00 00 00 00 0A 00 00 00 00 44 00 00 00
Sense Key: 0x4 Hardware Error, Segment 0
Sense Code: 0x44 Qual 0x00 (internal target failure) Fru 0x0
Sense flags: Blk 0 (not valid)
cmd finished after 0.001s timeout 40s
cdrecord: Input/output error. start/stop unit: scsi sendcmd: retryable error
CDB:  1B 00 00 00 01 00
status: 0x2 (CHECK CONDITION)
Sense Bytes: 70 00 04 00 00 00 00 0A 00 00 00 00 44 00 00 00
Sense Key: 0x4 Hardware Error, Segment 0
Sense Code: 0x44 Qual 0x00 (internal target failure) Fru 0x0
Sense flags: Blk 0 (not valid)
cmd finished after 0.001s timeout 40s
Current Secsize: -1
  ATIP start of lead in:  -11580 (97:27/45)
  ATIP start of lead out: 333226 (74:05/01)
Disk type: Short strategy type (Phthalocyanine or similar)
Manuf. index: 9
Manufacturer: Kodak Japan Limited
Blocks total: 333226 Blocks current: 333226 Blocks remaining: 28913
RBlocks total: 343358 RBlocks current: 343358 RBlocks remaining: 39045
Starting to write CD/DVD at speed 4 in dummy mode for single session.
Last chance to quit, starting dummy write in 1 seconds.
Waiting for reader process to fill input buffer ... input buffer ready.
Starting new track at sector: 0
Track 01: 133 of 594 MB written (fifo 100%).

# but maybe these errors are as normal as the ones I get when I do
# "cdrecord -msinfo" on non-multi-session disc.




#####
#
# cdrdao
# 2002nov18
#
#####

# «cdrdao»  (to ".cdrdao")

cdrdao jack libao2 libcurl2 libogg0 libvorbis0 python-cddb python-id3
python-pyogg python-pyvorbis vorbis-tools

# (find-fline "/usr/share/doc/cdrdao/")
# (find-fline "/usr/share/doc/cdrdao/README.gz" "Example for composing")
# (find-fline "/usr/doc/jack/examples.txt" "drdao read-cd --datafile data.cdr")
# (find-status "cdrdao")
# (find-vldifile "cdrdao.list")

# (find-progoutput "cdrdao --help" "Paranoia DAE library - (C) Monty")

# (find-man "1 cdrdao")
# (find-man "1 cdrdao" "  read-cd")

# (find-progoutput "cdrecord -scanbus")
lynx $S/http/cdrdao.sourceforge.net/drives.html
# YAMAHA CRW3200 1.0d generic-mmc o o o

cd /hdd3/tmp/
cdrdao read-cd -v 2 \
       --device 0,0,0 --driver generic-mmc \
       --datafile data2.cdr data2.toc

cd /hdd3/tmp/
cdrdao write -v 2 \
       --device 0,0,0 --driver generic-mmc \
       --datafile data.cdr data.toc

# Copying audio tracks 1-16: start 00:00:00, length 53:05:33 to "data.cdr"...
# Track 1...
# Found ISRC code.
# probable hardware bug: clock timer configuration lost - probably a VIA686a.
# probable hardware bug: restoring chip configuration.
# probable hardware bug: clock timer configuration lost - probably a VIA686a.
# probable hardware bug: restoring chip configuration.
# Track 2...
# (...)
# Track 16...
# Found pre-gap: 00:01:00
# Found ISRC code.
# Found 1413 Q sub-channels with CRC errors.
# Found disk catalogue number.

cd /hdd3/tmp/
less -z10 data.toc


# (find-fline "/usr/doc/cdparanoia/")
# (find-fline "/usr/doc/libcdparanoia0/")
# (find-status "cdparanoia")
# (find-status "libcdparanoia0")
# (find-vldifile "cdparanoia.list")
# (find-vldifile "libcdparanoia0.list")


# (find-htetfile "")
# (find-htetfile "CD-Writing-HOWTO.gz")
# (find-htetfile "CD-Writing-HOWTO.gz" "  3.2.2.  DAO")




#####
#
# jack
# 2002nov19
#
#####

# «jack»  (to ".jack")
# (find-status   "jack")
# (find-vldifile "jack.list")
# (find-udfile   "jack/")
# (find-udfile "jack/examples.txt" "WAV files")
# (find-udfile "jack/examples.txt" "drdao read-cd --datafile data.cdr")

# (find-man "1 jack")

# (find-man "1 jack" "--keep-wavs")
# (find-man "1 jack" "-O, --only-dae")
# (find-man "1 jack" "--todo")

# (find-sh "jack -h")
# (eev "jack -h | tee /tmp/ojack-h")
# (find-fline        "/tmp/ojack-h")

# (find-fline "~/.jackrc")
# (find-fline "~/jack/")

cd /hdd3/tmp/
jack -w . -O -t 1-7

cd /hdd3/tmp/
jack -w . -O

# (find-fline "/hdd3/tmp/")
# (find-fline "/hdd3/tmp/DBaB/")
# (find-fline "/hdd3/tmp/MG/")
# (find-fline "/hdd3/tmp/RG/")

# (find-fline "/hdd3/tmp/DBaB/jack.toc")
# (find-fline "/hdd3/tmp/MG/jack.toc")
# (find-fline "/hdd3/tmp/RG/jack.toc")
# (find-man "1 cdrdao" "TOC FILES")
# (find-man "1 cdrdao" "TOC FILES" "<length> is omitted")
# (find-man "1 cdrdao" "two channel audio, no ISRC code.")

# (find-fline "/hdd3/tmp/lkj.toc")

cd /hdd3/tmp/
cdrdao show-toc  lkj.toc
cdrdao read-test lkj.toc
cdrdao simulate -v 5 --device 0,0,0 --driver generic-mmc lkj.toc
cdrdao write    -v 5 --device 0,0,0 --driver generic-mmc lkj.toc

cd /hdd3/tmp/
cdrdao read-toc  -v 2 --device 0,0,0 --driver generic-mmc sample.toc

cd /hdd3/tmp/
# Pink Flag:
jack -w . -O -Q -t 1,4,5,10,13,15-17,19,20,21
# Chairs Missing:
jack -w . -O -Q -t 1,8,9,11,14-18
# 154:
jack -w . -O -Q -t 2,4,5-8,12,13

# Horses:
jack -w . -O -Q -t 1-4,8
# Radio Ethiopia:
jack -w . -O -Q -t 1,2,4,5
# Easter:
jack -w . -O -Q -t 3,4,8,11
# Wave:
jack -w . -O -Q -t 2,3,8,9
# Smells like children:
jack -w . -O -Q -t 6,13,15

# Drum:
jack -w . -O -t 1-6,8-9

# (find-fline "~/.jackrc" "rename_fmt")
# (find-fline "~/.jackrc" "# Edrx" "rename_fmt")
rename_fmt = "%n - %t"

# (find-angg ".zshrc" "makecdrdaotoc")




#####
#
# cddb
# 2002nov25
#
#####

# «cddb»  (to ".cddb")
# (progn (find-available "jack") (ee-isearch "cddb"))
# (find-progoutput "grep-available -i cddb")

libcdaudio0
cdindex-client
libfreedb-perl

# (find-status "cddb")
# (find-vldifile "cddb.list")
# (find-fline "/usr/doc/cddb/")
# (find-man "1 cddbcmd")

# (find-status "python-cddb")
# (find-vldifile "python-cddb.list")
# (find-fline "/usr/doc/python-cddb/")

# (find-fline "/usr/lib/python2.1/site-packages/")
# (find-fline "/usr/lib/python2.1/site-packages/CDDB.py")
# (find-fline "/usr/lib/python2.1/site-packages/DiscID.py")
# (find-fline "/usr/share/doc/python-cddb/")
# (find-fline "/usr/share/doc/python-cddb/examples/")
# (find-fline "/usr/share/doc/python-cddb/examples/cddb-info.py")
# (find-fline "/usr/share/doc/python-cddb/README.gz")

cd /usr/share/doc/python-cddb/examples/
python cddb-info.py

python /usr/share/doc/python-cddb/examples/cddb-info.py



#####
#
# making an exact copy of an iso9660 CD
# 2002dec27
#
#####

# «exact-copy-of-iso9660CD»  (to ".exact-copy-of-iso9660CD")
#*
inscd
mount /cdrom
#*
cd /hdd3/tmp/
rm -Rv lacan/
mkdir  lacan/
cd     lacan/
cd /cdrom/
cp -diPpvR * /hdd3/tmp/lacan/
#*
cd /hdd3/tmp/
cat < /dev/cdrom > lacan.iso
#*
# (find-man "mount" "THE LOOP DEVICE")
mkdir /tmp/iso
mount /hdd3/tmp/lacan.iso /tmp/iso -t iso9660 -o loop
find /tmp/iso
#*
cdrecord -scanbus
cdrecord -dummy dev=0,0,0 -v -v -v /hdd3/tmp/lacan.iso
cdrecord        dev=0,0,0 -v -v -v /hdd3/tmp/lacan.iso
#*
cd /hdd3/tmp/
cat < /dev/cdrom > lacan2.iso
cmp lacan.iso lacan2.iso
#*
umount /tmp/iso
umount /cdrom
rm -v /hdd3/tmp/lacan.iso
rm -v /hdd3/tmp/lacan2.iso
#*




#####
#
# playing CDs
# 2000may06
#
#####

# (find-vldifile "cdcd.list")
# (find-fline "/usr/doc/cdcd/")

Pgrepp m/CD/
Pgrepp m/WAV/

# (find-vldifile "groovycd.list")
# (find-fline "/usr/doc/groovycd/")






#####
#
# cdrecord and cdrdao on linux-2.6
# 2004dec20
#
#####

# «cdrecord-on-k26»  (to ".cdrecord-on-k26")
# (find-htetfile "")
# (find-k26file "")
# (find-sh "dmesg | grep ^hd" "hdd: YAMAHA CRW3200E, ATAPI CD/DVD-ROM drive")
# (find-udfile   "cdrtools-doc/cdrecord/README.gz" "YAMAHA CRW")

# (find-status   "cdrtools")
# (find-vldifile "cdrtools.list")
# (find-udfile   "cdrtools/")

# (find-status   "cdrtools-doc")
# (find-vldifile "cdrtools-doc.list")
# (find-udfile   "cdrtools-doc/")
# (find-udfile   "cdrtools-doc/cdrecord/")
# (find-udfile   "cdrtools-doc/cdrecord/README.audio")
# (find-udfile   "cdrtools-doc/cdrecord/README.audio" "cdrecord -dao")

# (find-k26docfile "post-halloween-2.6.txt")
# (find-k26docfile "post-halloween-2.6.txt" "\nCD Recording")
# (find-k26docfile "post-halloween-2.6.txt" "cdrecord -dev=/dev/hdX -inq")

# (find-man "1 cdrecord")
# (find-sh "sudo cdrecord --help")
# (find-sh "sudo cdrecord -dev=/dev/hdd -inq")

# This is a typical command line for linux-2.6 (working, 2004dec20):
cdrdao write -v 5 --device /dev/hdd --driver generic-mmc toc.toc

# For linux-2.4 things used to be like this:
cdrdao write -v 5 --device ATA:1,1,0 --driver generic-mmc toc.toc

# Note that the output of (find-sh "sudo cdrecord -scanbus")
# and of                  (find-sh "sudo cdrecord dev=help")
# are no longer very helpful - they don't mention "--device /dev/hdd".

#*

# (find-available "burn")





#####
#
# abcde
# 2006jul21 / 2020jul04
#
#####

# «abcde»  (to ".abcde")
# (find-status   "abcde")
# (find-vldifile "abcde.list")
# (find-udfile   "abcde/")
# (find-fline "/etc/abcde.conf")
# (find-fline "/usr/bin/abcde")
# (find-fline "/usr/bin/abcde" "do_cddbstat ()")
# (find-fline "/usr/bin/abcde" "do_cddbread ()")
# (find-fline "/usr/bin/abcde" "do_cddbedit ()")
# (find-fline "/usr/bin/cddb-tool")

# (find-udfile "abcde/examples/abcded")
# (find-udfile "abcde/examples/abcde.init")
# (find-udfile "abcde/FAQ.gz")
# (find-udfile "abcde/TODO")
# (find-udfile "abcde/copyright")
# (find-udfile "abcde/README.gz")
# (find-udfile "abcde/changelog.gz")
# (find-udfile "abcde/changelog.Debian.gz")

# (find-man "1 abcde")
# (find-man "1 abcde" "/etc/abcde.conf and $HOME/.abcde.conf")

# (find-man "1 cddb-tool")

# (find-status   "cd-discid")
# (find-vldifile "cd-discid.list")
# (find-udfile   "cd-discid/")
# (find-man  "1 cd-discid")
# (find-udfile "cd-discid/README")

# (find-status   "eyed3")
# (find-vldifile "eyed3.list")
# (find-udfile   "eyed3/")

* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
# (find-fline "/tmp/abcde/")
rm -Rv /tmp/abcde/
mkdir  /tmp/abcde/
cd     /tmp/abcde/
EDITOR=emacs abcde -o flac

# https://www.discogs.com/Hugo-Largo-Drum/release/1142835

TTITLE0=Grow Wild
TTITLE1=Eskimo Song
TTITLE2=Fancy
TTITLE3=Harpers
TTITLE4=Scream Tall
TTITLE5=Country
TTITLE6=Eureka
TTITLE7=Second Skin
TTITLE8=My Favourite People

https://www.discogs.com/Nau-Nau/release/4531692

DTITLE=Nau / Nau
DYEAR=1986
DGENRE=Rock
TTITLE0=Bom Sonho
TTITLE1=Calculos Astronomicos
TTITLE2=Linha Esticada
TTITLE3=O Que Eu Quero E Voce
TTITLE4=Balada
TTITLE5=Diva
TTITLE6=Corpo Vadio
TTITLE7=Barcas
TTITLE8=As Ruas
TTITLE9=Novos Pesadelos
TTITLE10=Nada
TTITLE11=Madame Oraculo
TTITLE12=Sofro
TTITLE13=Madame Oraculo - ao vivo
TTITLE14=Ontem Estou
TTITLE15=Pes no Vazio
TTITLE16=Rosto Humano
TTITLE17=Longe Demais
TTITLE18=Teu Coracao
TTITLE19=Ceu Escuro
TTITLE20=Ilha Urbana
TTITLE21=Jovens Ateus



#####
#
# genisoimage (replaces mkisofs) and dirsplit
# 2007dec09 / 2012mar12
#
#####

# «genisomage»  (to ".genisomage")
# «dirsplit»  (to ".dirsplit")
# (find-status   "genisoimage")
# (find-vldifile "genisoimage.list")
# (find-udfile   "genisoimage/")
# (find-status   "wodim")
# (find-vldifile "wodim.list")
# (find-udfile   "wodim/")

# (find-man "1 genisoimage")
# (find-man "1 genisoimage" "   -J")
# (find-man "1 genisoimage" "   -R")

# (find-man "1 dirsplit")




#####
#
# backup with dirsplit and wodim (not working)
# 2007dec09
#
#####

cd
mkdir /hda6/tosampa/
mkdir /hda6/tosampa/snarf/
mkdir /hda6/tosampa/snarf/http/
A=(
NICOTINE/
PLURALL/
)
cd
cp -av $A /hda6/tosampa/ |& tee ~/o

A=(
.psne.log
AGENDA/
LOGS/
TODO
oinstalleddebs
tmp/
books/
)
cd
cp -av $A /hda6/tosampa/ |& tee ~/o
# (find-fline "/hda6/tosampa/")

# (find-fline "~/oinstalleddebs")
# (find-angg ".zshrc" "installeddebs")
# (find-fline "/etc/apt/")
# (find-sh "cp -v /etc/apt/sources.list ~/tmp/")

# (find-fline "/etc/apt/sources.list")

cd /hda6/tosampa/NICOTINE/
dirsplit -p /tmp/vol_ . |& tee ~/o

# (find-es "cdrom" "dirsplit")
# (find-man "1 dirsplit")
# (find-sh "dirsplit -H" "mkisofs -D -r --joliet-long -graft-points -path-list CATALOG")

cd /hda6/tosampa/
dirsplit -p /tmp/vol_ $(ls -a . | grep -v NICOTINE) NICOTINE/* |& tee ~/o

cd /hda6/tosampa/
mkisofs -D -r --joliet-long -graft-points -o ../tosampa1.iso -path-list /tmp/vol_1.list
mkisofs -D -r --joliet-long -graft-points -o ../tosampa2.iso -path-list /tmp/vol_2.list
mkisofs -D -r --joliet-long -graft-points -o ../tosampa3.iso -path-list /tmp/vol_3.list

# (find-fline "/tmp/")

talvez o home sem o src e sem o snarf
celular e carregador

# (find-sh "cd ~/NICOTINE/; du -c .")
# (find-esgrep "grep -nH -e dirsplit *")
# (find-sh "dirsplit -h")
# (find-sh "dirsplit -H")

# (find-man "1 wodim")
# (find-sh "wodim")
# (find-sh "wodim -help")
# (find-sh "wodim dev=help")
# (find-sh "wodim --devices")
# (find-sh "wodim --scanbus")
# (find-sh "dmesg")
# (find-sh "dmesg" "hdc: TSSTcorpCD/DVDW SH-W162D, ATAPI CD/DVD-ROM drive")

wodim -v dev=/dev/hdc /hda6/tosampa1.iso |& tee ~/o
wodim -v dev=/dev/hdc /hda6/tosampa2.iso |& tee ~/o
wodim -v dev=/dev/hdc /hda6/tosampa3.iso |& tee ~/o

wodim -v /hda6/tosampa1.iso |& tee ~/o
wodim -v dev=/dev/hdc /hda6/tosampa2.iso |& tee ~/o
wodim -v dev=/dev/hdc /hda6/tosampa3.iso |& tee ~/o





#####
#
# wodim
# 2008feb18
#
#####

# «wodim»  (to ".wodim")

# (find-man "1 cdrecord")
# (find-man "1 wodim")
# (find-man "1 wodim" "-v ")
# (find-man "1 wodim" "blank=type")

# (find-man "1 wodim" "dev=target")
# (find-man "1 wodim" "--devices\n")
# (find-sh "sudo wodim --devices")
# wodim: Overview of accessible drives (2 found) :
# 0    dev='/dev/hdc'   rwrw-- :  'TSSTcorp'  'CD/DVDW SH-W162D'
# 1    dev='/dev/hdd'   rwrw-- :  'HL-DT-ST'  'CD-RW GCE-8526B'

* (eexterm "A")
R
cd ~/tmp
wodim dev='/dev/hdd' ~/tmp/netbsd_i386cd-4.0.iso

# (find-man "1 wodim" "speed=#")




#####
#
# cdrtools
# 2009apr12
#
#####

# «cdrtools»  (to ".cdrtools")
# http://cdrecord.berlios.de/private/cdrecord.html
# ftp://ftp.berlios.de/pub/cdrecord/alpha/cdrtools-beta.tar.gz
# ftp://ftp.berlios.de/pub/cdrecord/alpha/cdrtools-2.01.01a58.tar.gz

#*
rm -Rfv ~/usrc/cdrtools-2.01.01/
tar -C  ~/usrc/ -xvzf \
  $S/ftp/ftp.berlios.de/pub/cdrecord/alpha/cdrtools-beta.tar.gz
cd      ~/usrc/cdrtools-2.01.01/

/tmp/schily/bin/smake INS_BASE=/tmp/schily install  |& tee om

#*

# make    |& tee om
# smake     |& tee om
rm -Rv /tmp/schily/
mkdir  /tmp/schily/
smake INS_BASE=/tmp/schily install  |& tee om

#*
# (code-c-d "cdrtools" "~/usrc/cdrtools-2.01.01/")
# (find-cdrtoolsfile "")
# (find-cdrtoolsfile "BUILD")
# (find-cdrtoolsfile "BUILD" "smake install")
# (find-cdrtoolsfile "BUILD" "smake INS_BASE=/usr/local install")
# (find-cdrtoolsfile "COMPILE")
# (find-cdrtoolsfile "INSTALL")
# (find-cdrtoolsfile "" "README")
# (find-cdrtoolsfile "README")
# (find-cdrtoolsfile "READMEs/")
# (find-cdrtoolsfile "READMEs/README.gmake")
# (find-cdrtoolsfile "READMEs/README.linux")
# (find-cdrtoolsfile "om")
# (find-fline   "/tmp/schily/")
# (find-sh "find /tmp/schily/ | sort")


* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
cd      ~/usrc/cdrtools-2.01.01/

# make    |& tee om
smake     |& tee om


# (find-zsh "dmissing align.h")
# (find-zsh "dmissing /align.h")



;; ftp://ftp.berlios.de/pub/smake/alpha/smake-1.2a41.tar.gz
;; (find-sh "cd $S/ftp/ftp.berlios.de/pub/smake/alpha/ && zcat smake-1.2a41.tar.gz | ps2pdf - smake-1.2a41.tar.gz.pdf")
(code-ps        "smake" "$S/ftp/ftp.berlios.de/pub/smake/alpha/smake-1.2a41.tar.gz")
(code-pdftotext "smake" "$S/ftp/ftp.berlios.de/pub/smake/alpha/smake-1.2a41.tar.gz")
;; (find-smakepage 1)
;; (find-smaketext)


#####
#
# smake-1.2
# 2009apr12
#
#####

# ftp://ftp.berlios.de/pub/smake/alpha/smake-1.2a41.tar.gz
# (find-status   "smake")
# (find-vldifile "smake.list")
# (find-udfile   "smake/")
#*
rm -Rfv ~/usrc/smake-1.2/
tar -C  ~/usrc/ -xvzf \
  $S/ftp/ftp.berlios.de/pub/smake/alpha/smake-1.2a41.tar.gz
cd      ~/usrc/smake-1.2/

# make   |& tee om
rm -Rfv /tmp/schily/
mkdir   /tmp/schily/
make INS_BASE=/tmp/schily install  |& tee omi


#*
# (code-c-d "smake" "~/usrc/smake-1.2/")
# (find-smakefile "")
# (find-smakefile "BOOTSTRAP")
# (find-smakefile "INSTALL")
# (find-sh "find /tmp/schily/ | sort")
# (find-fline "/tmp/schily/bin/")




#####
#
# Sound Juicer
# 2013may05
#
#####

# «sound-juicer» (to ".sound-juicer")
# (find-status   "sound-juicer")
# (find-vldifile "sound-juicer.list")
# (find-udfile   "sound-juicer/")
# (find-man "1 sound-juicer")
# (find-fline "~/Music/Unknown Artist/Unknown Title/")






#####
#
# Ripit
# 2013nov01
#
#####

# «ripit» (to ".ripit")
# (find-status   "ripit")
# (find-vldifile "ripit.list")
# (find-udfile   "ripit/")
# http://www.suwald.com/ripit/news.php

# (find-man "1 ripit")
# (find-udfile "ripit/changelog.Debian.gz")
# (find-udfile "ripit/changelog.gz")
# (find-udfile "ripit/README.gz")
# (find-udfile "ripit/copyright")
# (find-udfile "ripit/README.Debian")
# (find-fline "/usr/bin/ripit")
# (find-fline "/etc/ripit/config")




#####
#
# xorriso
# 2018jun03
#
#####

# «xorriso» (to ".xorriso")
# (find-es "live" "live-build-xorriso")
# (find-zsh "installeddebs | sort | grep xorriso")
# (find-zsh "availabledebs | sort | grep xorriso")
# (find-status   "xorriso")
# (find-vldifile "xorriso.list")
# (find-udfile   "xorriso/")

# (find-man "1 xorrecord")
# (find-man "1 xorrisofs")
# (find-man "1 xorriso")
# (find-man "1 osirrox")
# (find-udfile "xorriso/README.gz")
# (find-udfile "xorriso/README.Debian")

# https://dev.lovelyhq.com/libburnia/web/wikis/home
# https://dev.lovelyhq.com/libburnia/web/wikis/Xorriso
# https://dev.lovelyhq.com/libburnia/libisoburn/raw/HEAD/xorriso/README_gnu_xorriso
# https://dev.lovelyhq.com/libburnia/web/wikis/Reading
# https://lists.gnu.org/mailman/listinfo/bug-xorriso
# http://lists.gnu.org/archive/html/bug-xorriso/
# https://www.gnu.org/software/xorriso/xorriso_eng.html
# https://dev.lovelyhq.com/libburnia/web/wikis/ReportSystemArea ***



#####
#
# How live-build calls xorriso
# 2018jun05
#
#####

# «xorriso-live-build» (to ".xorriso-live-build")

# (find-fline "/home/live/binary/live/")
# (find-fline "/home/live/binary/.disk/mkisofs")
# (find-fline "/home/live/binary/.disk/mkisofs" "xorriso")

xorriso \
  -as mkisofs -R -r -J -joliet-long -l -cache-inodes \
  -iso-level 3 \
  -isohybrid-mbr /usr/lib/ISOLINUX/isohdpfx.bin \
  -partition_offset 16 \
  -A "Debian Live" \
  -p "live-build 1:20180411; https://debian-live.alioth.debian.org/live-build" \
  -publisher "Live Systems project; https://debian-live.alioth.debian.org/; debian-live@lists.debian.org" \
  -V "Debian stretch 20180521-20:36" \
  --modification-date=2018053016053300 \
  -b isolinux/isolinux.bin \
  -c isolinux/boot.cat \
  -no-emul-boot \
  -boot-load-size 4 \
  -boot-info-table \
  -eltorito-alt-boot \
  -e boot/grub/efi.img \
  -no-emul-boot -isohybrid-gpt-basdat -isohybrid-apm-hfsplus \
  -o live-image-amd64.hybrid.iso \
  binary




#####
#
# pacpl
# 2020jul04
#
#####

# «pacpl»  (to ".pacpl")
# (find-status   "pacpl")
# (find-vldifile "pacpl.list")
# (find-udfile   "pacpl/")




#####
#
# ripperx
# 2020jul04
#
#####

# «ripperx»  (to ".ripperx")
# (find-status   "ripperx")
# (find-vldifile "ripperx.list")
# (find-udfile   "ripperx/")

# (find-fline "/sda1/home/CDs/Pink_Industry_-_Retrospective/")
# (find-fline "/sda1/home/edrx/")
# (find-fline "/sda1/etc/")
# (find-fline "/sda5/home/edrx/")
# (find-fline "/sda5/home/edrx/.ripperXrc")
# (find-fline "/sda5/etc/")

apti sox cdtool mpg321 flac toolame
apti sox cdtool mpg321 flac



# (find-man "1 wodim" "This will try to copy track indices")
# (find-man "1 icedax")




# HINT: use dvd+rw-mediainfo from dvd+rw-tools for information extraction.
# http://fy.chalmers.se/~appro/linux/DVD+RW/
# http://fy.chalmers.se/~appro/linux/DVD+RW/tools/?M=D

https://wiki.debian.org/Ripping

apti ripperx
apti xcfa
# (find-sh "locate CDs")

https://news.ycombinator.com/item?id=33499646 Audio CD ripping – optical drive accuracy listing (pilabor.com)
https://news.ycombinator.com/item?id=34140080 Documentary heritage: fungal deterioration in Compact Discs (springeropen.com)
https://news.ycombinator.com/item?id=34380388 Whipper: Accurate Audio CD Ripping (github.com/whipper-team)








#  Local Variables:
#  coding:               utf-8-unix
#  ee-anchor-format:     "«%s»"
#  End: