(non-existent third party commentator) Hold up. Are you really going to spin 2000 words on ripping CD music? In 2020? In the middle of a global pandemic?

me: yes. Yes I am.

NETPC: Dude, just use iTunes/Windows Media Player/whatever.

me: Those apps use dithering and error correction on the music you’re ripping. They’re not bit accurate copies. You can lose detail. Also, there are no fine controls on the output format.

NETPC: bruh. you can’t hear that anyway. just use spotify.

me: . . . (ノ`Д)ノ

ahem.

I’ve been living in Windows without touching my old Mac Pro for going on five months now. For the most part, it’s been a great experience, but one constant source of irk is that anytime I need to lookup what people are using to do any particular task, the internet serves up page after page of, “Top $X Windows Apps to Do $Task”. They’re mostly terrible, often linking to questionable for-pay shareware, and occasionally even copied from other sites doing exactly the same thing.

So, since I’ve been locked away in my den of isolation, I thought, what better time to rip a bunch of our jazz back catalog from CD? I’ve come up with a set of tools to mostly replicate what I was doing on my Mac, using a process I’ve previously written about back in 2016. The process is a little more involved, but once setup, it’s mostly a three-click operation, uses AccurateRip for bit-accurate copies of your music. It’s the same encoding back-end I used on my Mac and the results are every bit as good.

If I’ve missed anything, or you have any improvements you’d like to see, feel free to drop me a note in the comments.

boxes of Compact Discs
boxes and boxes of compact discs in various states of rippedness.

The Software

While there are a number of tools available to rip discs to FLAC files, I’m using just one to do all the heavy lifting: Foobar2000. It’s weird. It’s open source. And it’s free.

The weird: Out of the box, after a fresh install, you won’t see much. That’s because Foobar2000 is modular and highly configurable. That makes it really powerful; a Swiss Army Knife of audio tools. The downside is that makes it hard to setup if you don’t know what you’re doing.

(Foobar2000’s instructions for Ripping CDs)

Here’s a screenshot of my installed components, though you’ll note that everything you need for ripping should already be installed.

foobar2000 installed components
foobar2000’s Preferences screen, Components.

I highly recommend installing ColumnsUI. It offers a more familiar, iTunes like browser interface instead of presenting all of your music in one single list.

The Process

Step 1: Put a disc in the tray and open it

Pretty straight-forward: Do what you need to do to get a disc in your disc drive and then select Open audio CD… from foobar2000’s File menu.

open audio disc

You’ll be presented with a small list of available drives. Select your CD drive and then “Rip” from the small dialog and you’ll be taken to the next step…

Step 2: ID the Disc with the freedb tagger

The default tagger for identifying discs without embedded CDTEXT information (which is all of them) is Musicbrainz. Depending on your source material, that may be just fine. I’ve found for jazz and classical music, the default tagger is inadequate. Fortunately, there’s another tagger called “freedb” which I’ve found to be pretty good at identifying most discs in my collection.

musicbrainz music not found
foobar2000’s musicbrainz tagger won’t recognize everything

Clicking “Lookup” with “freedb” in the Source drop-down yields better results. I have not found a way to use this tagger by default yet, so if you know the secret, drop me a comment below.

freedb gets much better results
foobar2000: freedb is much better

Step 3: Let ‘er rip

The first time you rip a CD, you’ll want to choose your preferred converter. This should be the one, true format, FLAC unless your personal ideology requires some other, inferior, format.

Now, it is worth pointing out that you should think about how you want your files organized. While iTunes did this very well with some sensible defaults, Foobar2000 is more configurable, and as a result, more complicated. Foobar has a number of File Operations utilities that will let you rename and organize your files, but it is a more manual affair and requires some research into the metadata scripting features included with Foobar2000. Getting this setup correctly before you start can save you a lot of headache in the future. My Converter screen looks like the following:

Converter Setup
foobar2000 converter settings

Each of those sections in Current Settings are selectable to make changes. You’ll note my Destination setup has a File name pattern of %artist%\%album%\%track% – %title%. This is using Foobar2000’s tagging language to insert those values into the path and filename of the ripped track. If you get this to your liking, your ripped tracks will end up where you expect them to be and you’ll have a nice consistent folder structure for your collection.

Once your converter setup is complete, hit “Convert” and the rip will begin.

For further discs, you can just select the “Last Used” options in the drop down and foobar2000 will reuse your most recent settings for rips. You can even save these as Presets if you have different music collections or requirements. It’s powerful stuff.

You might notice an extra dialog when the rip completes. Foobar2000 uses “Accurate Rip” which automatically compares checksums during the encoding process to verify against an external database.’

If it encounters an error, you’ll see something like this:

Source: "cdda://00E12DA7" / index: 1
Audio CD extraction setup: drive: "ASUS - BW-16D1X-U", sample offset: 0, security: standard
Destination: "E:\Music\Chet Baker\Embraceable You\01 - The Night We Called It a Day.flac"
Secure mode: CRC mismatch, retrying.
Secure mode: match found after 1 attempts.
Secure mode: CRC mismatch, retrying.
Secure mode: match found after 2 attempts.
Secure mode: CRC mismatch, retrying.
Secure mode: match found after 1 attempts.
Track converted with minor problems.
AccurateRip status: Accurately ripped with offsets: 3(10), 667(23), 667(10), 1486(19), 1486(7), 2150(41), 2150(23).

If you’re concerned about it, you can try cleaning your disc and reripping any flagged tracks. In most cases, you’ll see “Accurately ripped with offsets…” and that means your track is fine, despite a couple of hiccups along the way.

Step 4: Add Cover Art using Discogs

This is the one part of the process that requires leaving foobar2000 for some other app. In my case, I’ve been using Discogs in Firefox to lookup my entries and download the album cover art. It’s easy enough to do, find the release that most closely matches yours (or if you’re really picky, your exact issue from CD catalog number) and save the large version of the album art as “cover.jpg” in the ripped CD’s directory on your harddrive. Using the name “cover.jpg” is a cheat that most music software recognizes and will apply that art to the whole album, and avoids bloating the files’ tags with repeated artwork.

It’s also convenient if you’re a discogs user as it’s a good time to add the disc to your online catalog.

louis armstrong jazz in paris

And of course, there’s a discogs tagging component for Foobar2000 but I have yet to figure out how to use it well and it’s not available during ripping. It can download album art from discogs, but because there’s no indicator in the files themselves, you won’t know if you’re getting the correct image from your cover. Best to do it manually, or use the plugin and verify rather than batch a whole library at once.

Step 5: Enjoy

Go listen to some music.

If you’re an Audirvana user like me, you’ll want to rescan your library to pick up the new music.

Hardware

Just a quick note about the hardware I’m using to rip my music. I have an ASUS BW-16D1X-U External USB3 bluray disc reader / writer. The drive itself appears to be a Pioneer BD-XL. It’s a solid enough reader that also happens to play and rip Bluray discs, if that’s a thing you’re interested in doing.

My major beef is the annoying, hideously bright blue LED they encased in a triangular crystalline piece of perspex on the top of the lid. It will light a dark room at night and burn your eyes out of your skull if you’re foolish enough to look directly at it. The other bit of bad ergonomics are both switches. The inaccessible and awkward to use sliding rear power switch at the rear and the slim eject disc button on the right of the drive itself that seems to defy easy pressing when the tray is open. I’m about 50/50 on opening and closing accuracy. I literally had to do an internet search to figure out how to turn the thing on.

Otherwise, it works well but sounds like a small jet engine on my desk when in use.

List of Installed foobar2000 Components

Core (2019-12-31 11:36:40 UTC)
foobar2000 core 1.5.1
foo_albumlist.dll (2019-12-31 11:35:58 UTC)
Album List 4.7
foo_cdda.dll (2019-12-31 11:35:56 UTC)
CD Audio Decoder 3.0
foo_converter.dll (2019-12-31 11:36:04 UTC)
Converter 1.5.4
foo_discogs.dll (2020-04-11 05:21:32 UTC)
Discogs Tagger 2.23
foo_dsp_eq.dll (2019-12-31 11:35:54 UTC)
Equalizer 1.2.1
foo_dsp_std.dll (2019-12-31 11:35:54 UTC)
Standard DSP Array 1.5.1
foo_fileops.dll (2019-12-31 11:35:58 UTC)
File Operations 1.5.1
foo_freedb2.dll (2019-12-31 11:36:08 UTC)
Online Tagger 0.7
foo_hdcd.dll (2017-02-03 18:14:18 UTC)
HDCD decoder 1.19
foo_input_std.dll (2019-12-31 11:36:20 UTC)
FFmpeg Decoders 3.4.6-0ac9001
Standard Input Array 1.5.1
foo_playcount.dll (2019-03-07 13:45:28 UTC)
Playback Statistics 3.0.3
foo_quicksearch.dll (2015-10-13 09:26:30 UTC)
Quick Search Toolbar 3.6
foo_rgscan.dll (2019-12-31 11:36:04 UTC)
ReplayGain Scanner 2.3
foo_ui_columns.dll (2020-01-13 20:02:38 UTC)
Columns UI 1.4.0-beta.1
foo_ui_std.dll (2019-12-31 11:36:08 UTC)
Default User Interface 1.5.1
foo_unpack.dll (2019-12-31 11:35:56 UTC)
ZIP/GZIP/RAR Reader 1.8