Managing a Database for Audio-CD
If I get a new Audio-CD (CD-DA), I insert them in the CDROM-Drive of
my computer and start the Program kscd, which is part of KDE. This Player is CDDB-aware,
as are a great other number of CD-Players. Kscd then makes a automatic
lookup in the Freedb.
If it cannot encounter the CD, I manually enter the
required information and submit this information to the Online-Database
so that other users can access them.
Kscd maintains a local Database of all entered CD's, so the neat effect
of this is, that I have a Database of all my CD's. For every CD I have
there is one file with all entered information, here's an
example.
From these files I generate all the output which I will describe in the
following text.
This program is very useful for generating covers for an audio-cd. It
calculates the cddb-id of a CD, looks up the information in the Database
(first local, if the CD is not in the spool, it contacts the
online-database) and then generates a cover in a user-chosen
format.
I changed the program to generate two additional formats of
output.
- disc-cover -t mytex generates a file with
puts the data in some TeX-macros. The user can now define these
macros to achieve the kind of output he wishes. I used TeX here just as I
use it for all my writing; because it is a ASCII-format the files can
be manipulated with all the standard Unix-tools.
- disc-cover -t id3 generates a file which contains an
invocation of id3tag for every track on the CD. id3tag is a part of
lame for generating
ID3-tags.
This is an archive of disc-cover 1.0.1 with
all my modifications, and this is a file to patch the executable of the original
distribution.
makeInhalt
With this Shell-script I
generate a TeX-file for every CD in my database, a TeX-file for every
genre which contains at least one CD and finally a file called
inhalt.tex which includes all the genre-files and additionally files
called vorspann.tex and nachspann.tex. Writing different files
vorspann.tex one can now generate different forms of output.
I
have written two different formats:
- One line for every CD, which contains artist and title. This is
used to print a list of all my CD's.
Source
Output-example
- One subsection for every
CD. This format is not used to produce a print, but is transformed with
LaTeX2HTML to produce an online-version of
the database including all scanned images.
Source inhalt.html
The archive contains a README how
I invoce latex2html to produce the HTML and afterwards
htdig to index the newly created
pages. Nowadays I use
mnoGoSearch for this purpose, because it's
far better maintained.
Producing MP3-CDs
Because I own a MP3 capable portable CD-Player I'm producing
my own MP3-CDs. Always I copy whole CDs, every CD in it's own
subdirectory.
Of course I want
- ID3 tags for all songs and
- a decent cover for my CD.
This is how I manage this:
- Create a new directory.
- Create a subdirectory for every CD I want to compress.
- Go to this subdirectory and run:
- cdda2wav -B
- disc-cover -t id3
- disc-cover -t mytex
- Do the last two steps for every CD you want to encode.
- In the Directory run codeMp3 to produce the MP3-files. All Files are
with ID3-tags if you don't missed the disc-cover -t id3.
- Run makeMp3TexDatei.. This
produces a File inhalt.tex, which is pretty useless without two
additional tex-files, namely mp3vor.tex
and mp3mit.tex. They use the
package cd-cover to produce two bookletsheets and a backsheet.
This
is a download all the mentioned files in one archive.