Error reading CD-ROM sectors

I have a ripper that reads sectors from a CD-ROM. I have a specific CD that
starts reading and when it reached sector number 48 (I think that is the
sector number), I start getting zero bytes read, but the read succeeds.

Can anyone shed any light ont his?

Jamey

What’s a ripper?

-----Original Message-----
From: Jamey Kirby [mailto:xxxxx@storagecraft.com]
Sent: Monday, May 22, 2000 2:19 PM
To: NT Developers Interest List
Subject: [ntdev] Error reading CD-ROM sectors

I have a ripper that reads sectors from a CD-ROM. I have a specific CD that
starts reading and when it reached sector number 48 (I think that is the
sector number), I start getting zero bytes read, but the read succeeds.

Can anyone shed any light ont his?

Jamey


You are currently subscribed to ntdev as: xxxxx@intel.com
To unsubscribe send a blank email to $subst(‘Email.Unsub’)

I had a problem like this when I wrote an NT/95 ripper a few
years back, but my memory is a little foggy. Went something
like this though…

Since audio CD’s use the sector headers to store data then
seeks are indeterminate… they get you to about the right sector
but there’s no guarantee. This isnt a problem as long as the drive
is streaming but as soon as the drive overshoots the next sector
before the software asks for it, the drive must reposition the
head and guess the sector location. Without compensation you
end up with a click (1 or 2 sectors of missing or repeated audio
at ~44khz or about 3ms of bad data).

What rippers do, or at least the ones I looked at and the one I
wrote, is they overlap 1 or 2 sectors and use software to match
up the fragments. Unfortunately this butchers the transfer rate, so
its nice to tune and tweak to avoid the problem. I also found that
newer CD drives seek pretty accurately, and newer CD’s themselves
seem to work better. In most cases on a nice fast machine you can
skip the overlap and compare, but not always.

What I ran into when I was tuning and tweaking was sometimes
you get into a state where you read some sectors, but cant match
the sectors up with the pevious sectors, so despite a successful
read, you dont get any data. This was drive-dependant and CD-
dependant and phase-of-the-moon dependant. In my case it was
only reproducable on one section of Pink Floyd’s ‘The Wall’.

OTOH rippers have come a long way in 2 years and I havent
stayed current. Drives have changed a l lot also, and theres a
lot in the underlying handling of audio vs. data in the hardware
that affects all this. All the above could be way off base by now.

You’re welcome to the source code though…

-bk

Nemiroff, Daniel wrote:

> What’s a ripper?
>
> -----Original Message-----
> From: Jamey Kirby [mailto:xxxxx@storagecraft.com]
> Sent: Monday, May 22, 2000 2:19 PM
> To: NT Developers Interest List
> Subject: [ntdev] Error reading CD-ROM sectors
>
> I have a ripper that reads sectors from a CD-ROM. I have a specific CD that
> starts reading and when it reached sector number 48 (I think that is the
> sector number), I start getting zero bytes read, but the read succeeds.
>
> Can anyone shed any light ont his?
>
> Jamey