UPDATE: February 9th, 2012:
Version 2! Overhauled and better than ever!
Pillage. The Introduction.
Most people that use Mac OS X rip their CDs using iTunes. Most people are happy doing that. If you have perfect CDs and flawless CD/DVD drives in your computer, and iTunes is set to use error correction, you are golden - right? Wrong.
Our friends using the Linux operating system have an excellent programs for ripping proper, secure (read: glitch/error/pop free) sound files from their CDs: CDParanoia. While not the prettiest program in the world (the application runs via a shell, with no real graphical user interface [gui]), it does the job...and very well.
Windows users also have great applications for secure ripping: EAC and CDex (which uses the CDParanoia program). Doesn't really help us Mac users, though.
While there is currently one application on OS X that uses CDParanoia, I wanted something simplier. Enter Tobias Sargeant, who ported the Linux version of CDParanoia to OS X, and Stefan Schüßler, who wrote an installer for Mr Sargeant's OS X port. These two men, putting hard work into getting CDParanoia ported onto OS X, made it possible for me to create Pillage.
As a DJ who uses ScratchLive when I spin, I need all of my music on my hard drive. Unlike some of my fellow DJ's, I go for quality in my files. Instead of mp3 files, I only spin AIFF files (can't put iTunes tags in a WAV file). When I ripped a CD, I always used iTunes error correction. I thought this was fine, until I started playing back some of the rips I did using the stock drives in my Macs. Glitch. Pop. Error. This would not be good while spinning at a club. I had ripped over 400 gig before I became too frustrated with bad rips, and looked into a better solution. Little did I know that I would have to write a program myself!
Essentially, the purpose of Pillage is to be the be-all, end-all solution for CD ripping. I wrote Pillage originally just to rip my entire CD library. For DJ'ing, as well as for production use, I wanted to have my entire CD library immediately accessible, in perfect quality (mp3's can bite me). After seeing a need for this type of program online, I made Pillage publicly available. If you are an audio purist, a radio/production guy "vaulting" a load of CDs, or any other person who is creating a media center, Pillage is for you! Even if you are an audio novice who wants to explore a world outside of inferior mp3 sound quality, try out Pillage.
Apple's Xcode, weeks of coding, lack of sleep, and a strong desire to get a truly GUI version of CDParanoia. The ingredients that made Pillage!
Pillage. The Summary.
What this program essentially does is bypasses iTunes for ripping CDs. You put a CD into your Mac, and tag the tracks like you normally would in iTunes. Switch to Pillage, enter the remaining info in the "Rip CDs Here" panel, and "Rip the CD". When done, the program will put your CD rips into iTunes for you, rename the files properly, and delete the temporary rip files. Easy!
Pillage. The Requirements.
I tried to make this as easy and bulletproof as possible (well...as bulletproof as AppleScripting allows). To get Pillage running, you will need:
Pillage. A walk through (text).
Panel 1 - Start Here First
When you start up Pillage, the program will greet you with a list of all available hard drives. Simply choose the hard drive that holds your current iTunes Music Folder. This comes into play later, as Pillage will give you a "heads up" to how much space is left on the drive that holds your iTunes Music Folder. After you use the pulldown menu to select your hard drive, click the "Choose This Hard Drive" button.
Immediately after you click the "Choose This Hard Drive" button, Pillage runs through a pre-flight checklist. Let's run through that checklist.
Keyboard layout is "U.S.": Pillage can only operate with the keyboard layout set to "U.S.".
CDParanoia library installed: Pillage requires CDParanoia to be installed. Make sure you have properly installed Stefan Schüßler's CDParanoia application (included in the Pillage zip file).
GUI Scripting enabled: Pillage uses a number of GUI Scripting commands. If you don't have GUI Scripting enabled, Pillage will offer to enable GUI Scripting.
iTunes is running: Pillage needs iTunes running in order to work. If you do not have iTunes running, Pillage will offer to start up iTunes for you.
Terminal is running: Pillage needs the Terminal application running in order to work. If you do not have Terminal running, or do not even know where the Terminal application is located, don't worry. Pillage will offer to launch Terminal for you.
iTunes is v7.2 or better: Your version of iTunes must be version 7.2 or better. Pillage can not run with older versions of iTunes.
OS X is v10.3 or better: Your version of OS X must be version 10.3 or better. Pillage can not run with older versions of OS X.
iTunes smart playlist "Pillage" exists: Pillage uses a smart playlist in iTunes to help with the tagging of the ripped audio files. You do not need to create this playlist. Pillage will automatically check for the playlist each time you launch Pillage. If the special playlist is not found, Pillage will recreate the playlist. This is handy, in case you accidentally delete the playlist.
iTunes "copy files to iTunes Music folder" is enabled: This is essential. You must have this enabled in order to use Pillage. Pillage will offer to set this for you.
Also, upon each launch of Pillage, the program will create a folder in the root of your start hard drive called "Pillage_Temp_AIFF_Folder" (this has changed from your home folder in previous versions of Pillage). Do not delete this! Pillage needs this in order to run. If you delete the folder, simply relaunch Pillage, and another folder will be created.
Panel 2 - Rip CDs Here
Here we go. This is where you will spend most of your time.
To start, simply insert a CD. As soon as the CD is loaded into iTunes, look over the information supplied by the CDDB in the iTunes window (if you are online). If the data is not to your liking, or you are not online, take a moment and enter the correct information for the "Name" and "Artist" of each track. Then, move to Pillage. In Pillage, either by using the "Get iTunes Info" button to auto-fill the "Album Artist" and "Album Title" fields (and "Genre" and "Year" if you have the preference set - more on that later), or manually type the info in yourself. There are also additional fields for "Record Label", "Country", "Disc Format" (CD, CD Single, Promo CD, et cetera) and "CD Catalog Number" available, if you wish to enter this information as well.
There are two utilities included in Pillage, to aid you in tagging the songs within the CD Playlist. "Fix Mix Name Parenthesis" will change the "()" surrounding mix names to "". Example: "(Set Me Free) Remotivate Me (Release Mix)" would turn into "(Set Me Free) Remotivate Me [Release Mix]". "Add Text To End Of Song Name" is handy if you need to add the same line of text to the end of every song name in a CD Playlist (like "[Live, Universal Amphitheatre, August 1st, 1990]". For either feature, you can pre-select specific tracks within the iTunes CD Playlist window before hitting the buttons in Pillage, or simply let Pillage select all of the tracks in the CD playlist, and alter all accordingly.
Note that if you do not want to use the "Step 2" area of Pillage at all, you can simply tick the "Skip Step 2" checkbox, and Pillage will pull all information from iTunes without the enhanced Album text that Pillage offers.
After all the tag info the way you want it, simply click on "Rip The CD". Pillage will tell you how much space is available in both your scratch file folder (Pillage_Temp_File_AIFF), as well as your iTunes Music Folder. Important note: You must have one gig free on both, or else Pillage will not operate!
Pillage will now rip the CD (opening up the Terminal window), import the ripped tracks into iTunes, delete the temp AIFF files, tag the files within iTunes, and eject the CD! You are done! If, during the rip, you notice the "Rip The CD" button changes into "Rip The Copy Controlled or Enhanced CD", Pillage has correctly identified your CD as one of these types of discs, and is acting accordingly.
Panel 3 - Emergency Items
From time to time, you may encounter a CD that will not rip. You will be looking at the Terminal window, you will see the cursor animating, but the number display is not changing. This is a bad CD. This will not happen often, but it does happen. To fix this, simply click the "Hard Stop CDParanoia" button. This stops the rip, deletes the temp files, and ejects the CD. From there, examine the CD, and see if there are any imperfections (or dirt, fingerprints, et cetera) on the disc. The other button is "Remount CD". If ever you come to a time where you know there is a CD in your computer, but the disc is not mounted either on the desktop, or in iTunes, hitting this button should find the CD, and remount it.
Panel 4 - Preferences
Here you have one option:
"Use brackets instead of parenthesis for optional Album Title info: When you use all the tag available in Pillage, your CD "Album" credit will look like this: This Is My Truth Tell Me Yours (Epic Japan CD ESCA 7343). With this preference ticked, the "Album" credit will look like this: This Is My Truth Tell Me Yours [Epic Japan CD ESCA 7343]. A minor difference, but this is for the people who desire the option.
A quick run through of what you are seeing happen in the Terminal window.
CDParanoia is a shell (text only) application. Pillage puts a pretty face on CDParanoia, but still lets you see the guts of what is happening. During a rip, for example, you will see this:
(== PROGRESS == [ - - + e -- V ! ---> | 013422 01 ] == :-) 0 ==)
Within the progress bar, you will see a > character scroll across. That is the actual progress of the rip. Within the area the > scrolls, you will see the following (taken from the actual CDParanoia F.A.Q.):
"-" A hyphen indicates that two blocks overlapped properly, but they were skewed (frame jitter). This case is completely corrected by Paranoia and is not a cause for concern.
"+" A plus indicates not only frame jitter, but an unreported, uncorrected loss of streaming in the middle of an atomic read operation. That is, the drive lost its place while reading data, and restarted in some random incorrect location without alerting the kernel. This case is also corrected by Paranoia.
"e" An 'e' indicates that a transport level SCSI or ATAPI error was caught and corrected. Paranoia will completely repair such an error without audible defects.
"X" An "X" indicates a scratch was caught and corrected. CDParanoia wil interpolate over any missing/corrupt samples.
"*" An asterisk indicates a scratch and jitter both occurred in this general area of the read. CDParanoia wil interpolate over any missing/corrupt samples.
"!" A ! indicates that a read error got through the stage one of error correction and was caught by stage two. Many '!' are a cause for concern; it means that the drive is making continuous silent errors that look identical on each re-read, a condition that can't always be detected. Although the presence of a '!' means the error was corrected, it also means that similar errors are probably passing by unnoticed. Upcoming releases of CDParanoia will address this issue.
"V" A V indicates a skip that could not be repaired or a sector totally obliterated on the medium (hard read error). A 'V' marker generally results in some audible defect in the sample. What does this all boil down to for you? Spaces, "-" "!" or "+" are more or less ok, but anything else, and your CD is probably toast.
Pillage. The Notes.
Pillage has been tested on many PPC/Intel Macs, with various OS X operating systems and languages. As of version 1.2, all the bugs appear to be squashed. Thanks to the beta testers!
The only things I would recommend when using Pillage:
* Try not to do too much multi-tasking when running Pillage. As Pillage is a controller for both iTunes and Terminal, Pillage does a lot fo back and forth switching, automatically. If you decide to go and type an email, or surf the web, some of your keystrokes might conflict with Pillage. When using Pillage, just concentrate on the CD ripping. You can surf the web later. :)
* Pillage works best with only one CD mounted at a time. You may encounter serious errors if you try to "speed up the process", and mount more than one CD at a time.
* Allow a lot of time, and hard drive space. As of this version of Pillage, I have ripped 17204 songs into iTunes (51.6 days, 734.90 GB). That is almost one full terabyte hard drive, and I am 1/4th of the way through ripping my cds! Hard drives are cheap. Go buy a big one! Also, use a program like Carbon Copy Cloner to regularly clone (back up) your hard drive. You don't want to lose all those rips due to a hard drive failure, do you?
* To speed up the process, look into buying a cheap external CD burner. Make sure it is only a CD burner, and not a Superdrive, CD/DVD combo, DVD burner, Blu-Ray, et cetera. Simple CD burners rip MUCH faster than combo units. The $50 I spent at Fry's on a cheap little drive has increased my rips up to 10x! I highly recommend this, if you plan on using Pillage for many rips.
This program comes "as-is". There is no warrantly expressed or implied. I am not associated with xiph.org, or the CDParanoia library (which is a trademark of xiph.org). I am not associated with Apple Computer (whose Terminal, OS X operating system and iTunes applications are also trademarked). This is merely a program that controls "CDParanoia" within the OS X Terminal, and the OS X version of iTunes. The CDParanoia binary is not included within Pillage.
Pillage. The Download.
Before running pillage, you must install Stefan Schüßler's CDParanoia Installer for OS X. This is included in the Pillage zip file
• Version 2.0 (February 9th, 2012): A complete rewrite! No longer using the AXSort routine for renaming the files. Less code, less headache, a bit faster. Also have included the CDParanoia installer within the zip file (thanks to Stefan Schüßler for permission).
• Version 1.2.1 (April 8th, 2009): Dammit! In my rush to finally get Pillage out, I left in one bad line of code. Sorry. Be sure to grab v1.2.1!
• Version 1.2 (April 7th, 2009): Finally! A special "no thanks" to Apple for messing up how Pillage worked. Fixing this took way too long. Apologies to everyone who uses Pillage. It works now. Be happy again. :)
• Version 1.1 (August 24th, 2008): A massive overhaul to the code of the application, incorporating many requested features (auto Smart Playlist creation, Preference file, et cetera), and killing all known bugs! This is a necessary upgrade!
• Version 1.02 (May 13th, 2008): Additional English specific calls were removed. Also, calling the "CDParanoia" application uses a full path (/usr/local/bin/cdparanoia), instead of just typing "cdparanoia" at the prompt, to work more universally with alternate Terminal settings.
• Version 1.01 (May 7th, 2008): First paying customer Lenina points out the fact that the world does not exclusively use the English language (d'oh!). Application System Event menu calls converted to language nonspecific calls. Addressed an issue with the AXSortDirection of the playlist window in the latest version of iTunes (v7.6.2). And, I must say, I was tempted to make this v1.02, just so I didn't have a comparison to my day job.
• Version 1.00 (initial release - May 1st, 2008)
Pillage. Buy via Paypal.
The original CDParanoia is freeware. iTunes and Terminal come for free on your Mac. So - why should you pay for Pillage? Simple. I have put a lot of work into creating this application, and wouldn't mind a few dollars for my work. Seriously - I gave CDParanoia a GUI on OS X. That isn't worth $10 to you. :)
The software is being supplied as a fully functional application, instead of a feature-limited format. As such, you can get right to ripping. After you get used to the program, and notice how well your CD rips sound, I would ask that you send me a $10 thank you via Paypal. You could use it free forever, but then that isn't good Karma. Think about it. After all the hard work on this, I could have just kept the program to myself, but - no - I did not. I am sharing it with the internet. $10 ain't that bad. C'mon. While you are at it, send thank you emails to xiph.org, Tobias Sargeant and Stefan Schüßler for the hard work they put into the CDParanoia project. Also, a special thanks to Doug for looking over some of my code. I discovered a new way of doing something. Yay me! :)