10 Jan 2014 movement   » (Master)

Ripping vinyl on Linux

 I've been ripping a lot of stuff from vinyl to FLAC recently. Here's how I do it.

I have an Alesis I/O 2, which works well and seems fairly decent quality.

First, most important, step, is to stop trying to use Audacity. It's incredibly broken and unreliable. Go get ocenaudio instead. It's fairly new, but it works reliably.

After monitoring your levels, record the whole thing into ocenaudio.

First trim the lead-in and lead-out, and the time when you turned over the record. Then you can delete the few samples for any loud clicks. ocenaudio doesn't seem to have a "draw sample" function yet, the only thing I miss from Audacity, but deleting just a few samples is usually fine.

Normalise everything.

Then, zooming into the breaks, add a marker with control-K.

You'll see references to using zero-crossing finders to split tracks. This is always a bad idea - it's simply not reliable enough, especially with an old crackly record, isopropyl'd or not.

Zoom all the way out again, make sure the number of tracks is right.

Then Edit->Split Audio At Markers.

Save all the parts. I just save them out as WAV first, with the default file names, as it's quicker.

Then it's conversion to FLAC time:

$ for i in untitled* ; do flac "$i" -o "$i.flac"; done
$ cat ~/bin/dotag
#!/bin/bash

#usage: dotag "The Birthday Party" "Junk Yard" tracklist.txt untitled*.flac

artist=$1
shift
album=$1
shift

#echo "args $*"
tlist=$1
shift
echo tlist is $tlist
nr=1
cat $tlist | while read track; do
echo "$1: $artist - $album - $nr $track"
#id3tag -a"$artist" -A"$album" -s"$track" -t$nr "$1"
metaflac --remove-all "$1"
metaflac --set-tag="ARTIST=$artist" --set-tag="ALBUM=$album" \
--set-tag="TRACKNUMBER=$nr" --set-tag="TITLE=$track" "$1"
nr=$((nr + 1))
shift
done

$ dotag "The Fall" "Dragnet" tracks untitled\ 8.flac untitled\ 9.flac untitled\ 1*.flac

After that, use easytag to rename the files into a proper directory, and we're done.  

Syndicated 2014-01-10 11:53:00 (Updated 2014-01-10 11:53:52) from John Levon

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!