Tag Archives: audio

Farewell Grip, hello Sound Juicer

For probably over a decade, I’ve been using Grip to rip all my audio CDs to MP3, Ogg Vorbis, and (for the last few years), FLAC. I admit that it’s not the easiest ripper to use these days, but its flexibility is unparalleled.

Unfortunately, it is no longer maintained, and the last stable release was from 2005. Due to this, many major distributions (including Debian) have removed it from the official repositories… which means compiling. What joy. :)

I brought home a new CD today. It might have been possible to buy it online, but I’m increasingly becoming disappointed with digital download audio purchases. Unexpected censoring/editing, poor audio quality, lack of high-quality/complete album artwork, having to rename tracks when purchasing from different online music stores to meet preferred naming convention requirements, inconsistent tag naming conventions and tag types between stores, and a price that’s still very similar to the physical disc version have been steering me away from them. If I happen to be down the street near a local CD store, it’s more convenient to duck in and get the real thing rather then purchasing some downloadable hacked imitation later which will also involve more work in the long run.

As soon as I arrived home, I threw the disc in my laptop’s external USB DVD drive to rip it (because seriously – who uses a CD player to play music on these days?) and up pops Sound Juicer. That’s normally my cue to start compiling Grip, but this time I paused – it had been a long time since I had investigated alternatives, and GStreamer is the future (which is what Sound Ripper apparently uses) so I decided I’d spend a few moments to see if I could get Sound Ripper to rip the disc in the exact way I like it.

My music naming convention is as follows:
<lowercase_artist_name>/<lowercase_album_name>/<zero-padded_track_number>-<lowercase_filename>.flac

I don’t use white-space or special characters in file names (I replace them with underscores) – there’s no point since getting the names exact is supposed to be what tagging information is for – and this convention is extremely easy to parse. Since track names are always in album order due to the padded track number, I can always play an album with mplayer *.flac or gst123 *.flac – which is how I generally play my music. It’s also uncommon in *NIX to see upper-case in file-names, so I keep everything lower-case too for consistency. Additionally, tags should be in native FLAC format – not id3v2 or something. I only require the band, album, album release year, track name and track number tags be set, but am not fussy if others are included.

Okay – so what’s Sound Juicer got? Clicking on Edit -> Preferences provides the following screen:

Hmm… doesn’t look too promising. The drop-down boxes don’t provide the exact configuration I want, but I can get pretty close. If only I could create my own custom settings! I quickly fired up gconf-editor to take a look at behind-the-scenes configurable options, and found three relevant keys:

  • /apps/sound-juicer/path_pattern
  • /apps/sound-juicer/file_pattern
  • /apps/sound-juicer/strip-special

Clicking them provides a complete description of all the available parameters these can take, so I tweaked them as per the following screen shot:

Changes seem to be applied instantly, so I hit the bit Sound Juicer Extract button, and lo and behold:

So far so good… but what about tagging information?

~/Music/Flac/killswitch_engage/alive_or_just_breathing$ lltag -S 01-numbered_days.flac
01-numbered_days.flac:
ARTIST=Killswitch Engage
TITLE=Numbered Days
ALBUM=Alive or Just Breathing
NUMBER=1
GENRE=Metalcore
DATE=2002-01-01
TRACKTOTAL=12
DISCID=9a0a860c
MUSICBRAINZ_DISCID=JakXtKdQUlm1n5i3sr9KRBqxIy4-
ARTISTSORT=Killswitch Engage
~/Music/Flac/killswitch_engage/alive_or_just_breathing$

Perfect!

Grip has served me well for a long time, and given me so many fond memories of spending hours ripping my entire collection… but now it seems it’s finally time to say goodbye – and hello Sound Juicer.