Batch CD ripping on macOS

May I trespass on your, @Geoff_Coupe, or anyone else’s, patience and time, please, to go into this a little more deeply?

I definitely don’t want to create ‘liabilities’ in the way Roon handles multi-CD sets.

But what about this nine-CD set of Alfred Brendel’s Beethoven Piano Sonatas?

It’s a (re-)distribution of recordings he made in the 1960s on Turnabout and Vox of the individual 32 sonatas, licensed half a century later by Brilliant Classics.

Brilliant presumably worked out how to get the ADD recordings onto nine CDs, probably using an algorithm that had then take up the least space.

The track order across these nine CDs bears no resemblance at all to the order in which Beethoven composed his 32 piano sonatas, which is largely chronologically… now numbered, 1,2,3,4,5 etc.

MusicBrainz lays it all out here where they appear on the nine CDs in the order 29, 32, 28, 30…16, 17, 18, 20, 21 etc.

Beethoven’s complete cycle is usually performed in one of three ways:

  1. strictly chronologically: 1, 2, 3… 30, 31, 32
  2. one sonata from each of Beethoven’s three conventionally-accepted ‘Early’, ‘Middle’, ‘Late’ periods: so, for example sonatas 1, 21, 30; sometimes even then performed (in this case), say 21, 1, 30
  3. a more random order reflecting the pianist’s preference.

My question: would it be a sin (=asking for trouble when imported into Roon) for me to aggregate the roughly 150 individual ripped FLAC tracks (all the 32 sonatas’ individual movements) into chronological numerical order and import them into Roon that way?

Maybe even as one giant virtual ‘album’?

This is slightly different from @Jayson_Chung’s suggestion.

It also has the disadvantage that there would - if I dispensed with the numbers of the nine box sets - be no indication for Roon to work with to identify actual ‘products’.

I’m not wedded to trying to subvert Roon’s best practice for importing. Just curious to know if it is possible to order a composer’s works in this way.

TIA for any guidance.

Yes indeed, Gary! I’ve now settled on dBpoweramp and it’s working flawlessly :slight_smile: .

You load - in my case - three CDs into three drives and dBpoweramp recognizes them all, opens three windows (and sometimes a fourth, which appears to be a ‘duplicate’ and is a little confusing, but no matter!) each of which is edited and ripped to perfection. I have a profile set up per these configurations.

Thanks.

1 Like

If you created the giant virtual album by renaming the tracks and changing the cd and trace meta data to match, the it would certainly work for playback and play the tracks in the desired order but you would probably lose Roons ability to search online for the cover notes.

You would also have to choose an appropriate cover art image and save it to the album folder as cover.jpg.

Thanks Wade,

I could live with that, for sure. After all - at least in this case - the Brilliant ‘compilation’ is already somewhat ‘distant’ from the Turnabout/Vox originals.

Is my concern justified, though, that Roon would otherwise ‘object’ - say in some future release -because the entire contents of the album no longer correspond to anything it knows and can identify?

@Mark_Sealey I would not recommend that. FWIW, it doesn’t look like even the originals of these albums, e…g.: https://www.discogs.com/release/17762134-Ludwig-van-Beethoven-Alfred-Brendel-Sonata-No-23-No-26-No-27 were strictly chronological either.

I would therefore import the discs as currently distributed, which would give you a box set entry that — however controversial box sets are in Roon - that is organized per AllMusic | Music Search, Recommendations, Videos and Reviews. From there, I would create a playlist to present them in the order in which you desire to have them presented.

Thanks, @DDPS

What you’re saying is that it’s wise to allow Roon to pair what it sees in its database with (at least one) recognized - and supposedly authoritative - online sources; and only locally (e.g. by use of a playlist) customize it - in this case its (= my preferred, chronological) order - for my own use, isn’t it?

So that’s a good principle to live by?

I did actually wonder about that. Is the only way to order a Playlist’s items manually to drag them; I have yet to use Playlists?

Another county heard from! :smile: I say go ahead and give it a try. You can always wipe the slate clean if it doesn’t work.

So you don’t spend a whole lot of time unnecessarily, I would start with a small subset of the whole set—just a CD or two’s worth of material, for example. In my experience, Roon is fairly aggressive in making associations between files and its database. And as a small test of that, I just removed the two-disc (LP, actually) album of For The Last Time, by Bob Wills and his Texas Playboys, from my music folder and had Roon rescan and clean the library data.

What I put back in my music folder was the album folder, same name as before, with only the first three tracks of the first CD. I had even set the disc tags for these tracks to 1 out of 1. In Roon’s Library/Import settings, I chose “file” for the track title, number, and media number. All else was “Roon,” notably the album preferences. I rescanned, and my new shrimpy version of For The Last Time appeared with metadata intact—artwork, complete credits…everything, as far as I can tell. That includes the track file tags for the three tracks. (The only off-note was Roon displaying the CD release artwork rather than the LP cover, but that’s not surprising, and I overlooked choosing “file” for the artwork import setting)

What I didn’t think of doing that would have been relevant to your situation is to scramble the order of the tracks and select discontiguous tracks. With the radical reordering you would be doing, I wonder if Roon would correctly retrieve track metadata? I don’t know how much that would matter in the case of that recording.

The success of my little example aside, if you tried your plan out with a small sample of tracks/CDs and it didn’t work in terms of Roon supplying the contextual metadata, that of course wouldn’t rule out your full “virtual” set working. But you don’t lose anything but a few minutes starting out small. And if it did work, bingo!

Edit: Thought I’d add that since the album I used for my example was an LP converted to digital and not a CD, there may have been even less than normal metadata for Roon to use for matching with its database.

1 Like

Thanks, Jayson - all noted.

I think I’m learning that the safest course of action (if for no other reason than future-proofing Roon) is to try and ensure that Roon does have a recognized source to compare what it sees in the Library with.

And that local ‘manipulation’ - e.g. with Playlists - is perhaps a better way to ‘burn my own’ :slight_smile: .

I thought of the playlist approach, too, as a good alternative. So, OK…if you, who seems like a tinkerer, can resist giving it a try. I assume you would keep a copy of your original rips if you did create your own virtual version. So, you could resort to a more orthodox approach at any time. :smiling_imp:

Dragging them is an option, but you can sort them by any visible criteria by clicking on headings.

Jayson,

Always :slight_smile:

I see what you’re suggesting; thanks!

DDPS,

Thanks. Time for me to learn Playlists…

Personally, I adhere to the KISS principle wherever possible - I certainly wouldn’t faff about with trying to rearrange tracks and CDs into a completely new order.

A) the result would certainly not be recognised by Roon, so B) you would then be completely dependent on the accuracy of your newly-created file metadata to get the results you wanted.

As has been suggested, use Playlists to get the order of playing the sonatas to how you want it and leave the ripped CDs as they were created by Brilliant Classics. Roon seems to know about at least some of their releases, judging by what I have in my collection…

1 Like

Thanks, Geoff; that’s really clear and helpful. It’s how I shall proceed.

The only snag is that - in this case, for instance, all 32 Beethoven Piano Sonatas or 100 tracks - I can’t see a way to drag all three movements of each sonata (in order) together so that I only have to re-arrange 33 items in my Playlist.

Yup - being able to drag multiple items in Playlists has been asked for, but up until now, we’ve been disappointed…

1 Like

Thanks, Geoff; at least I know what I have to do :slight_smile:

I’m going to reference my go-to post here (A Roon on (Synology) NAS Primer) and mention that, on the filesystem where you keep your music, you can create an m3u playlist that Roon will import as a “Shared” playlist during any scan of your library. You can create and edit these in any text editor, and all you have to do is get the paths right.

Let’s say you add a “playlists” folder at the top level of your music library folder. In there, you might have a file called “MyMusic.m3u” and its contents would look like the below (in Unix parlance, “../” means “up a directory, then follow from there”) - so, my “Non-Classical” and “Classical” folders are at the same level as my “playlists” folder, wherein I keep my .m3u files.

#EXTM3U
../Non-Classical/Lost Brothers, The/Halfway Towards A Healing/03 - Come Tomorrow.flac
../Non-Classical/Men At Work/Cargo (Remastered)/07 - High Wire.flac
../Non-Classical/Electric Light Orchestra/A New World Record/01 - Tightrope.flac
../Non-Classical/Tennessee Ernie Ford/Tennessee Ernie Ford_ Portrait Of An American Singer [Disc 1]/1-16 Slow Down.aif
../Non-Classical/Paul McCartney/Press To Play/06 - Press.aiff
../Non-Classical/Journey/Departure/04 - People And Places.flac
../Non-Classical/Various Artists/Stax '68; A Memphis Story/Disc 4/04 - Johnnie Taylor - Who's Making Love.aiff
../Non-Classical/Journey/Frontiers/04 - After The Fall.flac
../Non-Classical/Orielles, The/Silver Dollar Moment/07 - I Only Bought It For The Bottle.flac
../Non-Classical/Led Zeppelin/Presence/Disc 2/03 Led Zeppelin - 10 Ribs & All-Carrot Pod Pod (Pod) [Reference Mix].aif

Thanks, @DDPS

Actually very helpful for another reason entirely: I’m seriously switching from half a dozen (and more!) OWC external drives, RAID 1 and otherwise, to a Synology NAS; so all noted.

which is Nucleus, at its root, isn’t it?

I ask because I can see no m3u files there - even though I did create a Playlist to experiment with this Beethoven piano sonatas import.

[Original post edited]

I actually exported the Playlist which I created in Roon earlier and edited it in BBEdit.

This page has some useful info.

But I did run into two snags:

1 - After importing the nine-CD set, I merged the nine into one in Roon. That kept the individual volumes as just discussed above. I suspect that may be defeating the naming I need for the playlist - even though I have followed the naming used in the export.

2 - I must be making some error with my paths. On my Nucleus (the watch folder) I have subdirectories for era: ‘Ancient’, ‘Mediaeval’, ‘Renaissance’ etc. Beethoven is in ‘C19’. I created a ‘Playlists’ folder at root on the Nucleus and into it I put the edited .m3u file So the path to the Beethoven Sonatas album (with the merge caveat above) in that text file ought to be:

../C19/filenames

oughtn’t it?

But the actual filename must be wrong because I still can’t see it: Roon seems to have created a filename of its own (for the export?)

When I export to Excel and open in Numbers I can see a little more detail - especially of the path. But not sure how I would convert that (edited by me for the ‘correct’ order) CSV file back into .m3u format.

You are very astute. When Roon exports playlists, the contents are in Roon’s own internal lingo, and the resultant paths/filenames don’t work in a shared .m3u file. You need to use pure, accurate paths that any computer could understand, and that 100% match those on the filesystem. So those Roon export playlists will be pretty useless.

1 Like

@DDPS,

Thanks :slight_smile:

That explains it. Good.

It seems as though I have three options:

  1. get things as I want them (chronological order) in Numbers and save the .csv/.tsv file as .m3u
  2. persevere using Roon’s own internal representation in an export and not try and change the fields… they themselves seem to be separated by forward slashes!
  3. build a file myself from scratch using your example as a template, where:
    ../Non-Classical/Journey/Frontiers/04 - After The Fall.flac

should be parsed/interpreted as follows:

  1. ../ = get out of the Nucleus sub-directory ‘Playlists’
  2. Non-Classical/ = your equivalent of my C19… an organizational top level division/subdirectory which you use
  3. Journey/ = the Album’s name
  4. Frontiers/04 - After The Fall.flac = the filename itself

Yes?