[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: How to verify newly burned disc


Greg Wooledge wrote:
> Audio CDs do not have a file system.  There's nothing to mount.  There
> are no ".wav files".

Correct. Further the CD-DA sectors are not readable by the usual Linux
block i/o. dd(1) and write(2) will throw error.
Reading is done by special programs which use the SCSI command READ CD.
The kernel offers this as ioctl(CDROMREADAUDIO).

> To the best of my knowledge, there is no way to verify every bit of
> audio on an audio CD.  They're simply not structured in a way that makes
> it possible to retrieve a stream of digital audio data.

It's not that bad, although CD-DA is not well suitable for storing data.

CDs have a structure named Table-Of-Content which records the start
sectors of the tracks and of gaps between tracks.

CD-DA sectors contain 2352 bytes of payload and some error correction.
The main problem with reading a flawlessly recorded data stream is that
the sectors do not contain a field which tells their sector number. So
random addressing depends on the Q sub-channel bits which are few.
This makes it somewhat tricky for the drive firmware to find exactly the
sector with the given number.

Nevertheless i expect a good drive with good medium to reproduce the same
payload data as have been written. But the reader programs have to invent
new WAVE headers for the extracted data. The original input files usually
had such headers which did not get recorded on the CD. So these headers
can differ. It is not totally trivial to find out the size of the WAVE/RIFF
headers and the position of the audio payload data.

> Programs that
> "rip" CD audio to files use heuristics and multiple tries and fancy
> stuff like that, trying to get a good approximation of the original data
> back from the disc.

There are two aspects here: Read error mitigation and acoustic improvement.
The former is meaningful for verifying the burn success. The latter is not.
A burn should be regarded as failed or questionable if it is necessary to
read sectors more than once.

Richmond wrote:
> Using Caja file manager I have put in the localtion bar (or rather it put
> in)
> cdda://sr0/
> [...]
> It could be some clever stuff that caja is doing though.

Possibly a gvfs feature.
Possibly based on libcdio-cdda2 and libcdio-paranoia2 as actual CD-DA

Have a nice day :)


Reply to: