This is pretty cool, it's like a Python and *nix version of Exact Audio Copy (EAC) for Windows. I enjoy the ritual of perfectly ripping a CD. I can spend an hour or two scanning the artwork, verifying the track names, performing the rip, losslessly compressing (I prefer FLAC), generating .cue files, checksuming everything, then sitting down to experience the best possible digital copy of a physical item I can self produce.
Years ago, I had most of my music ripped to AAC in iTunes, easily accessible, browsable, and shuffleable.
I now rip each of my CDs to a single FLAC and cue sheet (using XLD on Mac), on the theory that it's the most accurate way to archive a disc. However, I haven't found anything that offers the same accessibility to such a collection as iTunes did. I look through folders, and drag a few cue sheets at a time into Foobar 2000.
I found Swinsian[1] after I ditched iTunes, It works quite good and I’m very happy with it.
While I rip all tracks separately the FAQ states: „Swinsian also supports albums ripped as a single file together with a cue file, and FLAC, Ogg Vorbis and WavPack files with embedded cue information„.
Very promising: supports macOS 10.8 and later, last updated in 2021, and it read my whole CD collection in just a couple of minutes. Thank you for the suggestion.
I wonder if it's still being developed. It's concerning that it's still an Intel-only build instead of a Universal build that can run natively on Apple Silicon hardware.
I recently contacted the developer about this. He replied that the only reason he hasn’t released a native Apple Silicon build is that he doesn’t have an Apple silicon Mac yet. I was tempted to fund raise and send him one!
My understanding is one can build a Universal app on either platform. Debugging the Apple Silicon side does require an Apple Silicon Mac but a well-developed app with a constrained feature set might "just work." They could make a Universal build and offer it as a beta to those who wish to try.
I don't know where they're located but a refurbished Mac mini from Apple is $589. AWS EC2 M1 Mac instances are ~$16/day ($0.65/hour, 24-hour minimum).
The developer is regularly putting out beta releases [1] for the 3.0; With the other comments I found, I assume it's a single person development - probably in spare time - and only using an Intel mac.
"... on the theory that it's the most accurate way to archive a disc ..."
I won't argue with this but I think there needs to be a qualifier - the most accurate way to archive a disc while using compression ...
Given that an audio cd is encoded in WAV/PCM and we have a WAV file specification, I think ripping to a WAV file remains the gold standard:
"... digital audio extraction software can be used to read CD-DA audio data and store it in files. Common audio file formats for this purpose include WAV and AIFF, which simply preface the LPCM data with a short header ..." [1]
I like the idea that ripping to a WAV file means I never have to rip that disc again.
FLAC is lossless, so there shouldn't be any difference in accuracy between the WAV and the FLAC. Of course, this is why people often choose FLAC for archival of ripped CDs.
Edit: I only mention this because I can't think why the extra "while using compression" qualifier is relevant except for information loss during compression.
Does FLAC preserve the exact bytestream of the CD tracks? (As an analogy, PNG is "lossless," but it won't natively preserve the metadata of a raw digital camera image.) The audio will be preserved but there might be interesting details on the CD like easter eggs, copyright text, etc. and I'm not sure FLAC would capture those.
> Does FLAC preserve the exact bytestream of the CD tracks? (As an analogy, PNG is "lossless," but it won't natively preserve the metadata of a raw digital camera image.)
No, but if that is the definition being used, neither does WAV store that data either.
> The audio will be preserved but there might be interesting details on the CD like easter eggs, copyright text, etc. and I'm not sure FLAC would capture those.
Flac does allow for storing a lot of metadata in the flac file itself, including: CUE sheet, a picture (image file), and arbitrary tags (key value pairs). So much of those could be stored in the flac file, but obtaining them (Easter eggs and the like) is dependent upon the program ripping the CD, not the file format storing the result of the rip (flac does not do CD ripping itself).
Audio CDs have less error correction than CD-ROMs. When you rip an audio CD, the drive is doing the error correction, and may give you PCM data different from what was written on it. Software like ExactAudioCopy tries the best it can, but that’s exactly that. Reading CD-ROM data is different. You can get an iso image of a data cd, but not an audio one.
This was done to both increase play time and discourage copying.
So since you’ll never get the raw redbook data off a cd, there is no reason to prefer WAV over FLAC for CD audio.
> This was done to both increase play time and discourage copying.
I doubt copying figured into the decision process (at least not a deliberate "anti-piracy" thought process).
The CD was released in 1982 [1]. This was only one year after IBM had released the original IBM PC, which came with one or two 320KB 5.25 inch floppy drives. The IBM PC did not have an official "hard drive" variant from IBM until the PC XT [3] released in 1983 (one year after the CD) and the hard drive option was a whole 10MB. When the target was replacement of the Vinyl LP player and compact cassette deck, and when their target customer base might have had 10-20MB of total storage in their personal computers (if they even had a personal computer), it would seem unbelievable to Sony and Phillips that those customers might even be capable of copying a disk holding somewhere upwards of 850-950MB of digital audio data.
And of course in the above I am overlooking that in order to "copy a CD" (as in make a digital copy) one first requires a CD drive that can interface with a PC in a digital way, and such drives did not appear until some years after the CD's release.
So with an amount of data on each disk that exceeds end users available storage by orders of magnitude, and no "CD drives interfaced digitally to computers" at the same time it seems unlikely that Sony or Phillips ever even considered that end users would be able to digitally copy CD disks.
I found that some Easter eggs weren't archived by EAC due to the fact they subly broke the CD spec. An example would be the first song of some versions of White Ladder by David Gray have a song "before" the first song. You press play then press "rewind" and the timer goes to -0:01 ... -3:45 or whatever and a song plays before the regular song at 0:00. I was tricky to hear it with a CD player because the rewind behavior was kind of undefined.
An audio CD can be done in a way that your wav will not represent the full data on the disc. If you want an exact copy, you need to do a disc image with preserve empty space or something similar. The CD can contain both audio tracks and data tracks. Some audio tracks can be hidden from normal play and a ripper might miss those too.
So if you really want to save an exact copy of the CD, you will have to find something better than wav to save the data. There are a few programs that can do an image to ISO format, that might be what you want. I guess it's a bit harder to find a player that can handle the audio tracks from an ISO though.
(Memory is a bit vague on formats and names but this is the general idea.)
You can use foobar to index your music files and assign a hotkey to run a search of your music library. I have found that foobar is faster at locating files than browsing my [excessively large] music collection.
hate to say, but this is my way... EAC to flac and leave it on a NAS, then XLD to apple lossless on my macbook and sync to my iPhone... working great for me so far
Why not use ALAC and individual tracks? It's lossless and compatible with iTunes/Music.app and iOS devices (as well as basically any hardware or software player worth using).
Using whole files rather than individual tracks is just asking for problems with mainstream players in my opinion.
However if you're serious about your music library I recommend Roon. Not cheap but a great solution.
cmus [1] is the closest I found to foobar2000. It is my main music player now, after years of disappointment. It supports FLAC and they claim they support CUE sheets, although I haven't tested your particular scenario. The way I use it is I have all my library in it at once, iTunes style. It has good search & playlists, but no drag&drop, since it's just command line...
For your setup-- if I do original CD -> accrual's rip -> burned CD, does burned CD == original CD for all values of original CD?
I'm mostly thinking of those interstitial lead-in thingies on live and concept albums. E.g., if you let a CD play from track 1 to track 2, there may be 5 seconds of crowd noise leading in to track 2. CD players would show this as track 2 at timing "-5", then count down to zero to get to the actual beginning of track 2.
If the user skipped directly to track two, this interstitial thingy wouldn't be played.
Edit: wording
Also: same question for what.cd ripping process. IIRC they broke the tracks down into different files.
Single file + CUE sheet solves lead-in thingie problem, by storing both timestamps (time when player should start showing 'Track 2', and time which servers as zero for track-relative timestamps)
It pretty much mirrors actual CD structure of TOC (containing all necessary timestamps and metadata) and continuous sequence of frames with audio data
Cdrdao preserves all lead-in data for rips in DAO mode. I split tracks to separate files with lead-in of the following track included at the end. Combined with Lame's gapless encoding support you can have seamless playback of CDs that blend tracks.
> For your setup-- if I do original CD -> accrual's rip -> burned CD, does burned CD == original CD for all values of original CD?
I was curious about this as well, and the answer was "no". I meticulously followed EAC setup guides for three drives in EAC, I used the recommended gap settings, the results were completely verified by AccurateRip, I was storing the results as a CUE sheet and single WAVE file, all drives would produce the same file, I was using EAC to burn the CUE sheet and WAVE file back to new Verbatim CD-Rs, re-ripping was done with the same setup in EAC, and the files still didn't match. I've been meaning to dig deeper and compare the files in binary, but haven't gotten around to it.
While not all has been lost, I strongly feel that every time the community migrates from one platform to another, the long tail of small time users gets cut off. Ties are severed, people fall out of reach, etc. I initially joined a few sites that popped up after What, but since I didn't find any of the users there that I used to talk to regularly, I don't visit much ever anymore.
Not only that, it’s almost a certainty that not every little rarity alike to ‘bootleg of local ska band from the 80s that never released an album’ makes the jump each time.
Of course, those are mostly oddities that virtually no one cares about in a sonic sense, but it’s still a piece of musical history.
Kind of makes me wish whoever sued what.cd offered them a sort of clemency deal: keep the site up until everything has been archived by a legit third party (that wouldn’t share it, but so everything has at least been preserved), then shut it down.
Instead they burned down the musical library of Alexandria..
Woah Oink. I had forgotten what it was called, but I learned so much about digital quality and was exposed to so much new music that I still listen to today.
> This is pretty cool, it's like a Python and * nix version of Exact Audio Copy (EAC) for Windows.
And it's now packaged with many Linux distro. At some point it wasn't packaged with Debian and I simply couldn't get it to build so... For a while I ran Fedora on an old PC only to get whipper! Nowadays whipper* ships on even Debian / Devuan so life is good.
It’s also the only tool that private torrent trackers will accept. It’s been rigorously tested and accepted to be pretty much perfect, complete software.
Orpheus will rate appropriate XLD and whipper logs as 100% fwiw
Also I could be wrong, but don't most trackers still accept rips that they consider inferior, but then they could be trumped by someone else that made an EAC rip?
From my experience an XLD rip can be equal to an EAC rip in terms of rating on the site (RED and OPS). I've always been ripping this way and always had a perfect score; It's not easy though. There is a lot of nuances that influence the score, so you need to do a lot of reading and checking.
I suggest looking, maybe, at ALAC as well, even though it is generally slept on.
It is open source now just like FLAC, and actually has built-in support in Windows and many Linux music players despite being an Apple format, making it somewhat more universally compatible than FLAC (which isn’t supported in iOS or macOS).
In my school days I was able to add FLAC support to an iPod Touch 4th gen with a quick Cydia module(?) download. I'm skeptical of your claim that macOS doesn't support FLAC. I'm sure mpv and other programs can play it fine. Do you just mean support in the default-installed macOS software? That seems like pretty limiting criteria. I wouldn't expect something like Windows Media Player to cover all that much either.
Storage is cheap, hurray! Another solution: you can archive a music CD using cdrdao and play the result using mplayer.
# $1 = output file
# /dev/sr0 is assumed
cdrdao disk-info
cdrdao read-cd --with-cddb --device /dev/sr0 --read-raw --datafile $1.cdrdao.bin $1.toc
dd conv=swab if=$1.cdrdao.bin of=$1.bin
# To play the BIN: mplayer -demuxer rawaudio BIN"
I'm not an "audiophile" (perfectionist seeker of equipment) but I enjoy listening to classical and (some) jazz compositions and performances as they were conceived, not as "tracks".