Today I tried to rip two discs (using 0.8.1), and Max failed to display any CD info. Well, it does display the track numbers and lengths, but that's all. I deleted the Pref file and tried again, with same result.
The log said unable to read the disc's media catalog number (MCN). Then I tried a third disc and the info was displayed properly, although the log had the same message. These discs are in excellent condition and iTunes displays the metadata just fine, so the problem isn't the discs.

So I tried one of the first two discs again, and there was still no info but a different Log message: Unable to read the international standard recording code (ISRC) for track 20.
In the past I've encountered very few CD's that Max was unable to get info for, and those were usually oddball discs. The ones today are popular mainstream titles.

Why can't Max retrieve the data for these discs?

Last edited by Rebel on Tue May 13, 2008 7:50 am, edited 1 time in total.

Everything but Max is able to read the MCN. When I open the discs in Finder, all the track titles are shown. ITunes and Toast can read them.

Finder gets the info directly from the disc, like any CD player. Toast from CDDB, and iTunes from Gracenote.

Max is able to retrieve info for most discs from Musicbrainz, but not these two titles. It would seem to be more of a MB issue if not for the Log entries. How can we discover whether the problem lies with MB or Max?

The MCN and ISRC are codes (in the q subchannel) that may or may not be present on a given disc and a given track. If Max can't read them, it is because they are not present on the disc. You can verify this using the drutil subchannel command.

What does Max calculate as the MusicBrainz ID of the disc? This will be the filename of the .cdinfo file.

I've been waiting for someone to say if Max used a different method of identifying a disc than does iTunes or Toast, but no one has.

I don't profess to be knowledgeable about the way a disc is made, nor how apps read them.
I assumed that each disc has an identifying number that an application such as the three mentioned above would use to lookup the information from whichever database they access.
As I was Googling this drutil subchannel command, I found that iTunes and Toast actually use the ISRC. Also discovered that CDDB and Gracenote are the same thing.

A check with the drutil subchannel command shows that there is indeed no MCN for one of the discs. However, the other does have one: MCN: 0081227896423 (from block 0)

I just tried using the Get iTunes Metadata script (included with v0.8.1) with both CD's, and after the first track title was filled in for each, an error message appeared:

Last edited by Rebel on Wed May 14, 2008 9:53 am, edited 1 time in total.

Rebel wrote:I've been waiting for someone to say if Max used a different method of identifying a disc than does iTunes or Toast, but no one has.

I don't profess to be knowledgeable about the way a disc is made, nor how apps read them.
I assumed that each disc has an identifying number that an application such as the three mentioned above would use to lookup the information from whichever database they access.

I'd understood that what most of these databases do is guess what set of information is requested based on the track length. (You may have noticed that sometimes iTunes will offer a choice between two or more sets of information -- although usually this is because two or more individuals have submitted data on the same CD to the database.) It might seem at first thought that there'd be too many clashes doing it that way, but since the tracks lengths can be measured quite accurately and since each CD has quite a few tracks the pattern that emerges in each case is close to unique if not actually so.

I just checked at Wikipedia, and it's stated there that what i thought is exactly what the CDDB does:

Yes, that is correct. I read about how CDDB works when I was Googling:

The database that iTunes uses is called CDDB, and it’s from a company called Gracenote . When you load a CD into iTunes that’s had its data uploaded to CDDB, it’s identified based on the length and order of the songs on it, which collectively act as a unique identifier. The idea is that no two CDs will be entirely identical in those respects. That’s also why when you load a single song into iTunes, it sometimes shows up with the name of another song. That happens because the song’s duration matched something else in the database.

But it seems a disc has more than one identifying number: Max uses the MCN, and my other apps use the ISRC. Obviously Toast is reading the ISRC, since it is able to get the data for the disc with no MCN.

Licensed apps contact Gracenote for the data, but Max is not allowed to use Gracenote, so it uses Musicbrainz, which is not as comprehensive.

But it seems a disc has more than one identifying number: Max uses the MCN, and my other apps use the ISRC. Obviously Toast is reading the ISRC, since it is able to get the data for the disc with no MCN.

But I thought you just agreed that the database did it by track length not by an "identifying number".

... Musicbrainz, which is not as comprehensive [as Gracenote].

In my experience that's true. However I don't know that has any bearing on your problem. Sometimes Musicbrainz has the details stored but doesn't return anything. You said earlier in the thread that the CDs you tried were listed in the web interface to MusicBrainz. I've often found the same. It's, apparently, not always MusicBrainz's comprehensiveness that's the problem. The service seems to be downright flaky for some reason.

As I said before I think there may be some confusion here so I'll try to clear things up if I can.

The MCN and ISRC are consumer codes, embedded into the Q subchannel, which may or may not be present for any given compact disc. While Max is able to read them, they are not used in any way to determine a disc's ID. All Max does with the MCN and ISRC is read them, if present, and then sets appropriate vorbis comments for informational purposes. If drutil is reporting a MCN for a disc that Max isn't, then that is a problem with Max that will not impact disc identification in any way. Max uses a simple system call to read the MCN, so if one isn't being read from a specific disc this would likely be a hard bug to squash.

Max uses the MusicBrainz method of disc ID calculation. As Mike1 pointed out, Max generates a disc ID based on a hash of the track offsets which are read from the CD's table of contents (TOC). While I don't know exactly how GraceNote calculates their disc IDs, the methods MusicBrainz and FreeDB use are well known. While it's always possible a specific disc's TOC can cause problems, I think the likely scenario is that this specific disc isn't in MusicBrainz.

For your specific disc, I googled for the MCN you indicated and came up with "The Very Best of Dwight Yoakam". Of course I have no idea if this is the actual disc, but if it is, MusicBrainz does not have any disc IDs registered for it, which would explain why Max couldn't find it.

As far as your AppleScript error goes, some of the scripting class identifiers were updated in 0.8. Do you have an older version of Max laying around on your disc? If not, does the script work for any of your discs?

Sbooth, you answered while I was composing, so I'm gonna post my reply anyway, since it addresses some of your answers also. You do have the correct title (sort of-you spelled it wrong). Musicbrainz DOES have a listing for The Very Best of Dwight Yoakam. http://musicbrainz.org/show/release/?releaseid=256249

Apparently, I still don't fully understand how the MCN works, but it doesn't matter. I had thought there was a catalog number (MCN) embedded on the disc that max read and then queried MB for that number. If MB had an entry with that number then it returned the metadata to Max.

I'm not sure why you asked then. But fine.

I didn't ask. I just figured that if I was mistaken in thinking that all apps used the same ID # on the disc, someone would chime in and let me know. When I started this thread, I didn't even know what an MCN or ISRC were. As this topic has progressed, I have learned a bit.

But I thought you just agreed that the database did it by track length not by an "identifying number".

No, I quoted someone else who said CDDB indentifies discs "based on the length and order of the songs on it."
I thought Max read the MCN from a disc and then uses that number to retrieve the metadata from Musicbrainz.

I assume Max uses the MCN and not the ISRC because:
1. The log showed that Max was unable to read the MCN.
2. All my apps that do use the ISRC are able to display the info.
3. sbooth asked me to see if my discs have an MCN.

As I said previously,

it seems a disc has more than one identifying number: Max uses the MCN, and my other apps use the ISRC.

Anyway, this isn't helping any.
I understand why Max can't get data for the disc with no MCN, but still don't know why it can't get data for the disc that does have an MCN. Also doesn't explain why, when I inserted another disc and Max properly displayed all the data, the log for that disc said unable to read the disc's media catalog number (MCN).

As for the script error message I posted, I have some good news: For some reason when I run the script included in the 0.8.1 download, I get the error message. However, I found a post containing the script http://forums.sbooth.org/viewtopic.php?f=4&t=1930, and after saving it as an app, it works as it should. I compared the two scripts side-by-side, and didn't see any difference, so don't know why one works and not the other. I first used the Get iTunes Metadata script yesterday, and I'll continue using it for times when Max comes up empty. That "solves" my problem for now.

Suggestion: if Max can not find an MCN, rather than do nothing it should display a message. If Max does find an MCN but the disc is not listed in the MB database, also display a message. That way, users can know what is happening.

Rebel wrote:Sbooth, you answered while I was composing, so I'm gonna post my reply anyway, since it addresses some of your answers also. You do have the correct title (sort of-you spelled it wrong). Musicbrainz DOES have a listing for The Very Best of Dwight Yoakam. http://musicbrainz.org/show/release/?releaseid=256249

As I said in my post, MusicBrainz does have a disc entry however there are no disc IDs associated with it. If you browse another disc, for example Hot Fuss you will see at the bottom of the page a list of disc IDs. These are the IDs that are calculated based on the TOC and the method that Max uses to identify discs. Since there are no IDs listed for the Dwight Yoakam disc, there is no way Max can find it.

As for the script error message I posted, I have some good news: For some reason when I run the script included in the 0.8.1 download, I get the error message. However, I found a post containing the script http://forums.sbooth.org/viewtopic.php?f=4&t=1930, and after saving it as an app, it works as it should. I compared the two scripts side-by-side, and didn't see any difference, so don't know why one works and not the other. I first used the Get iTunes Metadata script yesterday, and I'll continue using it for times when Max comes up empty. That "solves" my problem for now.

it seems a disc has more than one identifying number: Max uses the MCN, and my other apps use the ISRC.

Anyway, this isn't helping any.
I understand why Max can't get data for the disc with no MCN,

Read again Stephen's (sbooth) explanation above. Max does not use MCN to obtain the disk's ID. Max does not need MCN to obtain metadata from MusicBrainz. MCN and ISRC are only read and used to set info in vorbis formats. If MCN and ISRC are not present, that does not in any way influence obtaining metadata from MusicBrainz.

First off, I have no idea what Vorbis formats even means. I thought Ogg Vorbis was just another format, like mp3, AAC, WMA, AIFF, FLAC etc. I'm not gonna spend time researching it either.

Since the get iTunes Metadata script is now working, I can live with Max's shortcoming. When using the script, I found the 2 CD's in question to have incorrect data in iTunes, so I guess Gracenote isn't all that hot either. Different tracks on the same CD had different years, and some track info was capitalized while other tracks were not.

Evidently I still don't fully understand what the MCN or ISRc are, nor do I care. What I do know is Finder, iTunes and Toast are all giving me the info I need, while Max is not.

I posted this thread to get a simple answer why Max isn't providing the data that all my other apps can. Obviously I'm not going to get one. I have no more time or patience for this, and this will be my last reply.