Track 10 doesn't exist error with external drive

Discuss Max, an open source CD audio extractor and audio converter.
kcramer
Posts: 14
Joined: Fri Dec 28, 2007 12:22 am

Track 10 doesn't exist error with external drive

Post by kcramer » Fri Dec 28, 2007 1:03 am

I'm inserting CDs into my external Plextor Premium and getting an error in both 0.7.1 and the unstable r1328. If I use iTunes to look at the CDs it works fine and I can play the tracks. After that error, the CD is greyed out when trying to Open it. Turning off the MusicBrainz lookup doesn't help. It seems that the error occurs just reading the CD TOC. This occurs with all the CDs I tried.

Max works fine with the internal CD drive on my PowerMac. I'm using Mac OS X 10.4.11 on a Dual 2 GHz PowerPC G5.

The full error is:

An error occurred while accessing the disc on device disk2.
Track 10 doesn't exist.

Any ideas what is going on? I was hoping to use the Plextor for ripping audio.

justin
Posts: 7
Joined: Fri Dec 28, 2007 6:55 am

Re: Track 10 doesn't exist error with external drive

Post by justin » Fri Dec 28, 2007 7:16 am

I am having the exact same problem/error, also with the same two versions of Max mentioned, and with

OS 10.5.1
Plextor PX-712A inside an external enclosure (AMS VENUS DS-2512B2BK)

The log just says "Found CD on device disk5" -- is there a way to get more verbose info?

kcramer
Posts: 14
Joined: Fri Dec 28, 2007 12:22 am

Re: Track 10 doesn't exist error with external drive

Post by kcramer » Fri Dec 28, 2007 8:52 am

I checked the log and I see that it found the CD too but I also get:

Unable to read the disc's media catalog number (MCN)

User avatar
sbooth
Site Admin
Posts: 2450
Joined: Fri Dec 23, 2005 7:45 am
Location: USA
Contact:

Re: Track 10 doesn't exist error with external drive

Post by sbooth » Fri Dec 28, 2007 2:46 pm

This is very strange. Would you be willing to run a debug version to help determine exactly what is happening?

justin
Posts: 7
Joined: Fri Dec 28, 2007 6:55 am

Re: Track 10 doesn't exist error with external drive

Post by justin » Fri Dec 28, 2007 2:58 pm

I would be happy to run a debug version. How do I do that?

kcramer
Posts: 14
Joined: Fri Dec 28, 2007 12:22 am

Re: Track 10 doesn't exist error with external drive

Post by kcramer » Fri Dec 28, 2007 6:00 pm

Yes, I can run one too if you can tell me how to do that or where to get it.

justin
Posts: 7
Joined: Fri Dec 28, 2007 6:55 am

Re: Track 10 doesn't exist error with external drive

Post by justin » Sat Dec 29, 2007 4:25 pm

I downloaded the latest source from the svn repository, and built a debug version using the xcode gui. The info in the log window doesn't seem too helpful, nonetheless here is the output (up until 11:12:58, the log is referencing the internal drive, and afterwards it is referencing the Plextor - the only difference is that with the Plextor it stops complaining about the ISRC after track 9):

2007-12-29 11:10:59 -0500 Max successfully launched\
2007-12-29 11:10:59 -0500 Found CD on device disk4\
2007-12-29 11:11:58 -0500 Unable to read the disc's media catalog number (MCN)\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 1\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 2\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 3\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 4\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 5\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 6\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 7\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 8\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 9\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 10\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 11\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 12\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 13\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 14\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 15\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 16\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 17\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 18\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 19\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 20\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 21\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 22\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 23\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 24\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 25\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 26\
2007-12-29 11:11:58 -0500 Unable to read the international standard recording code (ISRC) for track 27\
2007-12-29 11:12:58 -0500 Found CD on device disk1\
2007-12-29 11:13:06 -0500 Unable to read the disc's media catalog number (MCN)\
2007-12-29 11:13:06 -0500 Unable to read the international standard recording code (ISRC) for track 1\
2007-12-29 11:13:06 -0500 Unable to read the international standard recording code (ISRC) for track 2\
2007-12-29 11:13:06 -0500 Unable to read the international standard recording code (ISRC) for track 3\
2007-12-29 11:13:06 -0500 Unable to read the international standard recording code (ISRC) for track 4\
2007-12-29 11:13:06 -0500 Unable to read the international standard recording code (ISRC) for track 5\
2007-12-29 11:13:06 -0500 Unable to read the international standard recording code (ISRC) for track 6\
2007-12-29 11:13:06 -0500 Unable to read the international standard recording code (ISRC) for track 7\
2007-12-29 11:13:06 -0500 Unable to read the international standard recording code (ISRC) for track 8\
2007-12-29 11:13:06 -0500 Unable to read the international standard recording code (ISRC) for track 9\


What else can I do to investigate the issue?

User avatar
sbooth
Site Admin
Posts: 2450
Joined: Fri Dec 23, 2005 7:45 am
Location: USA
Contact:

Re: Track 10 doesn't exist error with external drive

Post by sbooth » Sat Dec 29, 2007 5:46 pm

I'm going to add some code that will output the TOC as parsed by Max. The problem is that for some reason certain tracks don't seem to exist in Max's version of the TOC, hence the error message.

justin
Posts: 7
Joined: Fri Dec 28, 2007 6:55 am

Re: Track 10 doesn't exist error with external drive

Post by justin » Thu Jan 03, 2008 8:17 pm

I was wondering if you added that code yet. Should I download the source again and make another debug build?

User avatar
sbooth
Site Admin
Posts: 2450
Joined: Fri Dec 23, 2005 7:45 am
Location: USA
Contact:

Re: Track 10 doesn't exist error with external drive

Post by sbooth » Thu Jan 03, 2008 10:04 pm

No, I won't commit changes made for debugging (at least on purpose :)) so I would either have to post a debug build or post diffs here. If you have the source code already, try pasting the following code in the bottom of the readTOC method in Drive.m:

Code: Select all

	NSLog(@"TOC parsing complete");
	NSLog(@"====================");
	NSLog(@"First session  : %i", [self firstSession]);
	NSLog(@"Last session   : %i", [self lastSession]);
	for(i = [self firstSession]; i <= [self lastSession]; ++i) {
		SessionDescriptor *sd = [self sessionNumber:i];
		NSLog(@"Session number : %i", [sd number]);
		NSLog(@"\tFirst track : %i", [sd firstTrack]);
		NSLog(@"\tLast track  : %i", [sd lastTrack]);
		NSLog(@"\tLead out    : %i", [sd leadOut]);
		
		unsigned j;
		for(j = [sd firstTrack]; j <= [sd lastTrack]; ++j) {
			TrackDescriptor *td = [self trackNumber:j];
			NSLog(@"\tTrack number %i", j);
			NSLog(@"\t\tFirst sector : %i", [td firstSector]);
		}
	}
And then there will be some debugging output that could prove useful on the console.

justin
Posts: 7
Joined: Fri Dec 28, 2007 6:55 am

Re: Track 10 doesn't exist error with external drive

Post by justin » Fri Jan 04, 2008 1:53 am

Here is the output of both the Plextor and the internal drive for the same CD. There are in fact 26 tracks on the CD. Does this make any sense?


External Plextor:

2008-01-03 20:40:29.544 Max[3025:10b] TOC parsing complete
2008-01-03 20:40:29.545 Max[3025:10b] ====================
2008-01-03 20:40:29.546 Max[3025:10b] First session : 1
2008-01-03 20:40:29.547 Max[3025:10b] Last session : 1
2008-01-03 20:40:29.548 Max[3025:10b] Session number : 1
2008-01-03 20:40:29.548 Max[3025:10b] First track : 1
2008-01-03 20:40:29.549 Max[3025:10b] Last track : 38
2008-01-03 20:40:29.550 Max[3025:10b] Lead out : 519112
2008-01-03 20:40:29.550 Max[3025:10b] Track number 1
2008-01-03 20:40:29.551 Max[3025:10b] First sector : 51
2008-01-03 20:40:29.551 Max[3025:10b] Track number 2
2008-01-03 20:40:29.552 Max[3025:10b] First sector : 91133
2008-01-03 20:40:29.552 Max[3025:10b] Track number 3
2008-01-03 20:40:29.553 Max[3025:10b] First sector : 111482
2008-01-03 20:40:29.555 Max[3025:10b] Track number 4
2008-01-03 20:40:29.555 Max[3025:10b] First sector : 185858
2008-01-03 20:40:29.556 Max[3025:10b] Track number 5
2008-01-03 20:40:29.556 Max[3025:10b] First sector : 221062
2008-01-03 20:40:29.557 Max[3025:10b] Track number 6
2008-01-03 20:40:29.558 Max[3025:10b] First sector : 225426
2008-01-03 20:40:29.559 Max[3025:10b] Track number 7
2008-01-03 20:40:29.559 Max[3025:10b] First sector : 226433
2008-01-03 20:40:29.560 Max[3025:10b] Track number 8
2008-01-03 20:40:29.560 Max[3025:10b] First sector : 229476
2008-01-03 20:40:29.561 Max[3025:10b] Track number 9
2008-01-03 20:40:29.561 Max[3025:10b] First sector : 235476
2008-01-03 20:40:29.562 Max[3025:10b] Track number 10
2008-01-03 20:40:29.562 Max[3025:10b] First sector : 0
2008-01-03 20:40:29.562 Max[3025:10b] Track number 11
2008-01-03 20:40:29.563 Max[3025:10b] First sector : 0
2008-01-03 20:40:29.563 Max[3025:10b] Track number 12
2008-01-03 20:40:29.563 Max[3025:10b] First sector : 0
2008-01-03 20:40:29.564 Max[3025:10b] Track number 13
2008-01-03 20:40:29.564 Max[3025:10b] First sector : 0
2008-01-03 20:40:29.565 Max[3025:10b] Track number 14
2008-01-03 20:40:29.565 Max[3025:10b] First sector : 0
2008-01-03 20:40:29.566 Max[3025:10b] Track number 15
2008-01-03 20:40:29.566 Max[3025:10b] First sector : 0
2008-01-03 20:40:29.566 Max[3025:10b] Track number 16
2008-01-03 20:40:29.567 Max[3025:10b] First sector : 238551
2008-01-03 20:40:29.567 Max[3025:10b] Track number 17
2008-01-03 20:40:29.568 Max[3025:10b] First sector : 252351
2008-01-03 20:40:29.568 Max[3025:10b] Track number 18
2008-01-03 20:40:29.569 Max[3025:10b] First sector : 255876
2008-01-03 20:40:29.569 Max[3025:10b] Track number 19
2008-01-03 20:40:29.569 Max[3025:10b] First sector : 257826
2008-01-03 20:40:29.570 Max[3025:10b] Track number 20
2008-01-03 20:40:29.570 Max[3025:10b] First sector : 292749
2008-01-03 20:40:29.571 Max[3025:10b] Track number 21
2008-01-03 20:40:29.571 Max[3025:10b] First sector : 298626
2008-01-03 20:40:29.571 Max[3025:10b] Track number 22
2008-01-03 20:40:29.572 Max[3025:10b] First sector : 307813
2008-01-03 20:40:29.572 Max[3025:10b] Track number 23
2008-01-03 20:40:29.573 Max[3025:10b] First sector : 315158
2008-01-03 20:40:29.573 Max[3025:10b] Track number 24
2008-01-03 20:40:29.574 Max[3025:10b] First sector : 324487
2008-01-03 20:40:29.574 Max[3025:10b] Track number 25
2008-01-03 20:40:29.575 Max[3025:10b] First sector : 331401
2008-01-03 20:40:29.575 Max[3025:10b] Track number 26
2008-01-03 20:40:29.575 Max[3025:10b] First sector : 0
2008-01-03 20:40:29.576 Max[3025:10b] Track number 27
2008-01-03 20:40:29.576 Max[3025:10b] First sector : 0
2008-01-03 20:40:29.578 Max[3025:10b] Track number 28
2008-01-03 20:40:29.579 Max[3025:10b] First sector : 0
2008-01-03 20:40:29.579 Max[3025:10b] Track number 29
2008-01-03 20:40:29.591 Max[3025:10b] First sector : 0
2008-01-03 20:40:29.592 Max[3025:10b] Track number 30
2008-01-03 20:40:29.592 Max[3025:10b] First sector : 0
2008-01-03 20:40:29.592 Max[3025:10b] Track number 31
2008-01-03 20:40:29.593 Max[3025:10b] First sector : 0
2008-01-03 20:40:29.593 Max[3025:10b] Track number 32
2008-01-03 20:40:29.593 Max[3025:10b] First sector : 369233
2008-01-03 20:40:29.594 Max[3025:10b] Track number 33
2008-01-03 20:40:29.594 Max[3025:10b] First sector : 378426
2008-01-03 20:40:29.594 Max[3025:10b] Track number 34
2008-01-03 20:40:29.595 Max[3025:10b] First sector : 383113
2008-01-03 20:40:29.595 Max[3025:10b] Track number 35
2008-01-03 20:40:29.595 Max[3025:10b] First sector : 391701
2008-01-03 20:40:29.596 Max[3025:10b] Track number 36
2008-01-03 20:40:29.596 Max[3025:10b] First sector : 433508
2008-01-03 20:40:29.597 Max[3025:10b] Track number 37
2008-01-03 20:40:29.597 Max[3025:10b] First sector : 445851
2008-01-03 20:40:29.597 Max[3025:10b] Track number 38
2008-01-03 20:40:29.611 Max[3025:10b] First sector : 459051


---------------------------------------------------------------------------------------------------------------------------------------------------------

Internal Drive:

2008-01-03 20:43:03.275 Max[3042:10b] TOC parsing complete
2008-01-03 20:43:03.277 Max[3042:10b] ====================
2008-01-03 20:43:03.277 Max[3042:10b] First session : 1
2008-01-03 20:43:03.278 Max[3042:10b] Last session : 1
2008-01-03 20:43:03.278 Max[3042:10b] Session number : 1
2008-01-03 20:43:03.278 Max[3042:10b] First track : 1
2008-01-03 20:43:03.279 Max[3042:10b] Last track : 26
2008-01-03 20:43:03.279 Max[3042:10b] Lead out : 327820
2008-01-03 20:43:03.279 Max[3042:10b] Track number 1
2008-01-03 20:43:03.281 Max[3042:10b] First sector : 33
2008-01-03 20:43:03.281 Max[3042:10b] Track number 2
2008-01-03 20:43:03.282 Max[3042:10b] First sector : 63683
2008-01-03 20:43:03.282 Max[3042:10b] Track number 3
2008-01-03 20:43:03.282 Max[3042:10b] First sector : 83120
2008-01-03 20:43:03.283 Max[3042:10b] Track number 4
2008-01-03 20:43:03.283 Max[3042:10b] First sector : 131408
2008-01-03 20:43:03.284 Max[3042:10b] Track number 5
2008-01-03 20:43:03.284 Max[3042:10b] First sector : 138220
2008-01-03 20:43:03.284 Max[3042:10b] Track number 6
2008-01-03 20:43:03.285 Max[3042:10b] First sector : 142608
2008-01-03 20:43:03.285 Max[3042:10b] Track number 7
2008-01-03 20:43:03.286 Max[3042:10b] First sector : 144983
2008-01-03 20:43:03.286 Max[3042:10b] Track number 8
2008-01-03 20:43:03.286 Max[3042:10b] First sector : 148458
2008-01-03 20:43:03.287 Max[3042:10b] Track number 9
2008-01-03 20:43:03.287 Max[3042:10b] First sector : 154008
2008-01-03 20:43:03.287 Max[3042:10b] Track number 10
2008-01-03 20:43:03.288 Max[3042:10b] First sector : 157533
2008-01-03 20:43:03.288 Max[3042:10b] Track number 11
2008-01-03 20:43:03.289 Max[3042:10b] First sector : 169533
2008-01-03 20:43:03.289 Max[3042:10b] Track number 12
2008-01-03 20:43:03.289 Max[3042:10b] First sector : 173508
2008-01-03 20:43:03.293 Max[3042:10b] Track number 13
2008-01-03 20:43:03.294 Max[3042:10b] First sector : 176358
2008-01-03 20:43:03.295 Max[3042:10b] Track number 14
2008-01-03 20:43:03.295 Max[3042:10b] First sector : 182943
2008-01-03 20:43:03.295 Max[3042:10b] Track number 15
2008-01-03 20:43:03.296 Max[3042:10b] First sector : 190158
2008-01-03 20:43:03.296 Max[3042:10b] Track number 16
2008-01-03 20:43:03.298 Max[3042:10b] First sector : 197533
2008-01-03 20:43:03.299 Max[3042:10b] Track number 17
2008-01-03 20:43:03.299 Max[3042:10b] First sector : 207158
2008-01-03 20:43:03.300 Max[3042:10b] Track number 18
2008-01-03 20:43:03.300 Max[3042:10b] First sector : 216445
2008-01-03 20:43:03.301 Max[3042:10b] Track number 19
2008-01-03 20:43:03.302 Max[3042:10b] First sector : 222483
2008-01-03 20:43:03.303 Max[3042:10b] Track number 20
2008-01-03 20:43:03.303 Max[3042:10b] First sector : 232433
2008-01-03 20:43:03.303 Max[3042:10b] Track number 21
2008-01-03 20:43:03.304 Max[3042:10b] First sector : 243408
2008-01-03 20:43:03.304 Max[3042:10b] Track number 22
2008-01-03 20:43:03.305 Max[3042:10b] First sector : 248083
2008-01-03 20:43:03.305 Max[3042:10b] Track number 23
2008-01-03 20:43:03.306 Max[3042:10b] First sector : 256683
2008-01-03 20:43:03.306 Max[3042:10b] Track number 24
2008-01-03 20:43:03.307 Max[3042:10b] First sector : 271058
2008-01-03 20:43:03.307 Max[3042:10b] Track number 25
2008-01-03 20:43:03.307 Max[3042:10b] First sector : 282033
2008-01-03 20:43:03.308 Max[3042:10b] Track number 26
2008-01-03 20:43:03.308 Max[3042:10b] First sector : 297033

User avatar
sbooth
Site Admin
Posts: 2450
Joined: Fri Dec 23, 2005 7:45 am
Location: USA
Contact:

Re: Track 10 doesn't exist error with external drive

Post by sbooth » Fri Jan 04, 2008 3:28 am

It's very strange that the TOCs are different, although that certainly explains the error messages Max is displaying. I'm not sure how to proceed with debugging; maybe a simple application that prints the TOC would be the easiest to work with.

User avatar
sbooth
Site Admin
Posts: 2450
Joined: Fri Dec 23, 2005 7:45 am
Location: USA
Contact:

Re: Track 10 doesn't exist error with external drive

Post by sbooth » Fri Jan 04, 2008 3:42 am

I think I have it! It seems that the values from your external drive are being returned as BCD (see http://en.wikipedia.org/wiki/Binary-coded_decimal) which is the native format for many numbers returned off of CDs. But, I was under the impression that the IOKit guarantees no BCD numbers are passed in CDTOCs. I guess this isn't always the case, though.

Here is my analysis:

Internal last track: 26 (which is correct)
External last track: 38, 0010 0110 in binary, when interpreted as BCD equals 26 in decimal

Internal LBA for track 1: 33 (correct)
External LBA for track 1: 51, 0011 0011 in binary, when interpreted as BCD equals 33

The math for MSF is a bit more complicated, but comes out as well. I will ask on one of the Apple lists about this.

justin
Posts: 7
Joined: Fri Dec 28, 2007 6:55 am

Re: Track 10 doesn't exist error with external drive

Post by justin » Fri Jan 04, 2008 5:46 am

Very interesting. With a little googling for "plextor bcd" it seems that other mac software suffers from the exact same thing, i.e. when there is a non-apple cd-rom drive involved. For my own curiosity, if you post on a public forum, can you post a link here to the apple list on which you ask about this?

Perhaps you could use whatever method iTunes or cdparanoia (macports) (which also correctly determines the number of tracks) uses to verify whether the toc numbers returned by IOKit are BCD or not?
Last edited by justin on Sun Jan 06, 2008 6:08 am, edited 1 time in total.

justin
Posts: 7
Joined: Fri Dec 28, 2007 6:55 am

Re: Track 10 doesn't exist error with external drive

Post by justin » Fri Jan 04, 2008 7:05 pm

Sorry to have wasted anyone's time. I upgraded the Plextor's firmware (I had to use a PC to do this), and the problem went away.

kcramer, try going to

http://plextor.com/english/support/supp ... .html#firm

and see if upgrading the firmware fixes it.

Cheers!

Post Reply