Audio-CDs (auch CD-DA genannt, spezifiziert im proprietären Red Book) sind das älteste Format der CD. Das Format ist von der Audioaufnahme inspiriert, sodass Sie eine spiralförmige Spur mit kontinuierlichen Daten haben, und mit diesen Daten verschachtelt sind Timing-Informationen. Es gibt keine richtigen Blockheader. Die kleinste Informationseinheit ist ein Frame oder 1/75 Sekunde, das 2352 Datenbytes enthält (für 2 Kanäle, 2 Samples/Byte, 44,1 kHz).
Beachten Sie, dass dies keine Zweierpotenz ist und nicht einmal durch 256 oder 512 dividiert werden kann. Daher ist es etwas umständlich, Audioframes als Datenblöcke zu behandeln. Darüber hinaus können frühe CD-Laufwerke nicht immer richtig positionieren, wenn Sie also sagen:"Lesen Sie das Bild bei 12 Minuten, 4 Sekunden und 5 1/75 Sekunden", wird es manchmal ein paar Bytes früher oder später starten. Deshalb gibt es so viele Programme, um Audio-CDs "richtig" zu lesen (wie cdparanoia
).
Vergleichen Sie dies nun mit einer Daten-CD (auch als CD-ROM bezeichnet, die im Yellow Book angegeben ist):Sie nahmen die 2352 Bytes eines Audioframes und verwendeten einige davon für Header-Informationen, um einen Block zu identifizieren. Sie fügten auch eine weitere Ebene der Fehlerkorrektur hinzu, sodass die 2352 Bytes eines Audioframes zu 2048 Bytes in einem Datenframe werden.
Jetzt haben wir eine Zweierpotenz als Blockgröße, wir haben richtige Header und können genaue Suchvorgänge durchführen, und wir können wirklich so tun, als wäre dies nur ein Blockgerät.
Das ist also der Grund, warum eine Audio-CD standardmäßig nicht als Blockgerät behandelt wird, eine Daten-CD hingegen schon.
Allerdings spricht nichts dagegen, die Informationen auf der Audio-CD im Dateisystem bereitzustellen, zB als WAV-Datei für jeden Track. Und tatsächlich gibt es einige Open-Source-Projekte wie CDfs oder andere, an die ich mich jetzt nicht erinnern kann, die FUSE verwenden, die die CD-Daten auf diese Weise darstellen. Sie haben jedoch immer noch das Problem, dass es keine Jitter-Korrektur usw. gibt, also verwenden Sie besser so etwas wie cdparanoia
.
Und die Kernel-Leute hielten es auch für eine schlechte Idee.