Ripping thoughts

CD
I got myself a nice new CD today (American Saxophone Music, Alex Mitchell), and this provided me a bit of an excuse to revisit audio ripping on Windows.

Picking codecs

With the wdespread availability of of high-quality lossy and lossless codecs, it makes no sense to rip to WAV files. I use two codecs as my defaults: FLAC for lossless compression and Windows Media for lossy compression. FLAC works about as well as any other lossless codec (apart from things like the generally unsupported Meridian Lossless Packing), and I love the fact that it’s an open source project. In fact, I am a big fan of open source in general. I routinely use open source software when it does what I need it to do–even if it may not be as smooth or efficient as a commercial or other closed alternative. I have even contributed a few open source programs, and not just for use in education. So FLAC floats my boat.

Then why, you are asking, do you use Windows Media as your default lossy codec? Especially when there are things like Ogg Vorbis around? Simple: at lower encoding rates, I find the damage done by WMA less distracting than the damage done by Ogg or MP3 at similar rates. This is a very subjective issue and one that is not the case (for me) for all music, all the time. But in general, WMA works for me. The fact that it’s supported on just about every DAP, media player, etc. also helps. (In all honesty, it’s been a few years since I have done any careful codec comparisons. It would probably be a good idea to re-do some tests to see if Ogg or MP3 encoding have improved.) I don’t really contemplate using aacPlus or other codecs. While aacPlus can do some amazing things at really low bitrates, it just doesn’t have enough support in hardware and software players to make it a viable alternative for general ripping. (However, I do use aacPlus as my default codec for remote steaming of my music collection, but that’s another story.)

Of course this assumes you are using a newer version of the WMA encoder. To do WMA encoding, I use the gratis command-line based Windows Media Encoder 9 Series tools. Many CD rippers incorporate older WMA tools, and these older tools limit the maximum bitrate, don’t give you options for constant/average bitrate, and probably don’t use the latest encoding models. (Microsoft claims, “[WMA 9’s] sound quality is 20 percent better than audio sampled with Windows Media Audio 8 at equivalent data rate.”) I should also mention that I won’t touch Windows Media Player with a ten foot pole. Not only do I find its interface maddening, it also takes control of your media collection by default, changing tags and cover art at will. Sure, you can turn this off, but the whole package just rubs me the wrong way.

Tagging tracks

Apart from encoding the audio data into your desired format, a CD ripper should also let you automatically add tags to ripped tracks. While there are a ton of standalone programs that let you do this, it’s always much better to take care of this from the start. There are two traditional sources of track information used by ripping software: Gracenote and freeDB.org. You can read about the history of the relationship between the two elsewhere, but in summary the technology and database that makes Gracenote got started as an open-source project. Over time, the technolgy was converted to a proprietary, for-profit deal, and that got some people riled up. Thus freeDB.org was born. The quality of data available from Gracenote tends to be better and more comprehensive, but I still prefer freeDB.org because it’s free and for the people and it provides some competition for Gracenote.

Ripper options

So, what this means for me is that my ideal CD ripper will

  • Rip FLAC out-of-the-box
  • Rip fully optioned Windows Media 9 (or better) out-of-the-box
  • Allow the use of external command-line tools for encoding if either of the above are lacking
  • Use freeDB.org for tagging data
  • Be open source

Sadly, such a ripper does not exist. So here is what I am using anyway.

Winamp (v5.52)

Winamp is a great-grand-daddy of media players. As it is asked to do more and more on top of an ageing codebase it’s getting pretty bloated. However, you can remove the bloating additions if you really want. It is my default audio player because it does ASIO via a thrid-party plugin and it has decent media library abilities. And it will play just about anything you can throw at it. The things I don’t like about Winamp are the previously stated bloat, a UI that is a bit maddening and not really attractive (but usable nonetheless), and it’s not open source.

Winamp also does CD ripping. It encodes to FLAC and Windows Media 9.2 out-of-the-box; however the freeware version of the program limits ripping speeds to 8x. It also uses Gracenotes for track data. While there is no facility for linking to external encoders (except perhaps through a third-party plugin) Winamp is professionally maintained–which means frequent updates of the endocers.

Summary: A reliable, configurable workhorse that is undermined by slow encoding. Works well, but not currently my first choice.

CDex (v1.70 beta 2, zip archive version)

I get the feeling that this open source project is floundering a bit. It’s popular alright, but its develpoment seems intermittent. It’s got all the basic features that you want in a ripper, and the interface is ok. The latest beta version does FLAC out-of-the-box, and it also does WMA–but the bitrate is limited to 160bps and you’re given no options other than bitrate, which makes me think they are using an older encoder. It does let you use external encoding tools, but I could not get WMA9 to work. It uses freeDB.org for tagging data.

Summary: Good for ripping FLAC. Ripping with external encoders is available but unreliable. My current choice for FLAC.

BonkEnc (v1.0.6)

This is another open source offering. Like CDex, this project seems a bit stalled, but the (one) developer makes it clear that devleoping this program isn’t a top priority in his life. It does FLAC out-of-the-box, but it supports neither WMA nor external codecs. However, the developer promises a plugin system in a future release that may address both issues. It uses freeDB.org for track data. The interface uses a toolkit I am not too familiar with, and while it’s aesthetically not unappealing, usablilty suffers a bit because the buttons, etc. are so tiny. A promising start that I would love to see mature some more.

Summary: Good for ripping FLAC. Ripping with external encoders is unavailable. Worth keeping an eye on.

Audiograbber (v1.83)

Audiograbber may be the most interesting of the bunch. This is an old shareware title that went freeware in 2004. It does not do FLAC out-of-the-box, and while it has WMA built-in, it is only version 8. However, it’s ability to use external encoders works–at least with Windows Media Encoder 9. (You can download a pdf of the enhanced batch file I am using that does tagging automatically here). It also works with FLAC. It uses freeDB.org for track data. The interface takes a bit of getting used to, but once you adjust to it, it’s quite usable. But if I can get external WMA encoding to work with CDex, I will probably retire this title. I really wish the owner of the code would open it up so that it could be updated because this has proven to be quite a solid workhorse.

Summary: Good for ripping WMA and FLAC via extenal encoder. Internal encoders are mostly obsolete, but support for external encoders is good. My current choice for WMA.

Untested

There are a couple possibilites that I have not yet thoroughly explored. First is foobar2000, a gratis audio media player that like Winamp supports ripping and has ASIO support built in. I’ve sometimes considered using foobar2000 instead of Winamp, but the thing that gives it power (i.e., tons of flexibility and configurability) is also its Achilles heel. Doing anything in foobar2000 is an exercise in the non-intuitive. And Winamp’s media library just works much better. I gotta say, using other media players really makes you appreciate how well Winamp’s media library database manager works. It updates very quickly, without the user’s intervention, and doesn’t get in your way when it’s doing so. All other similar things I have tried really blow in comparison. But I digress…

Finally, while this is probably totally in my head, I think Winamp–even in ASIO mode–sounds more correct than foobar2000. I really didn’t want to mention this until I had a chance to do bit-for-bit output comparisons and other testing, but I mentioned it anyway.

Still foobar2000 has a couple things going for it that make it hard to dismiss it altogether. One of those is that foobar2000’s support for external encoders appears quite good. Another is that the filetype icons are way cooler than Winamp’s.

The second option is Exact Audio Copy, a gratis ripper that claims to do a better job of reading your bits without error than anything else out there. They make a huge deal about this, but I have yet to find that any of the other ripping solutions mentioned here suffer from bit-reading issues of any kind. Maybe if you’ve got a really crappy drive or a marginal disk… Anyhoo, EAC is a bit of a bear to set up, but it seems to be active, so it’s also worth a closer look.

I’ll report back if I have any world-altering experiences with either foobar2000 or EAC.

Getting covered

Of course, once you’ve ripped your CD, you’ll want to put some cover art into the CD’s folder. There are all sorts of software titles to help you with this task, but I just Google around until I find what I’m looking for. In my opinion, anyone who says this isn’t fair use has a really warped view of the concept.