Launched in 1991,[1] the discs were designed to hold nearly 100 high quality images, scanned prints and slides using special proprietary encoding.
Photo CDs are defined in the Beige Book and conform to the CD-ROM XA and CD-i Bridge specifications as well.
The system failed to gain mass usage among consumers partly due to its proprietary nature, the rapidly decreasing scanner prices, and the lack of CD-ROM drives in most home personal computers of the day.
The Photo CD system gained a fair level of acceptance among professional photographers due to the low cost of the high quality film scans.
Firstly, the Photo CD color space, designed for TV display, is smaller than what can be achieved by even a low cost desktop scanner.
Tests at the time indicated that the dmax rating (a measure of maximum density obtainable) of Photo CD was 2.8-3.0, while commonly available desktop scanners were reaching 4.2,[14] a substantial difference.
[11] In the retail segment, while Photo CD was initially relatively popular with consumers, it was largely an economic failure for processing labs.
[16] This abandonment generated considerable controversy both at the time and subsequently as the Photo CD format's technical specifications have never been released by Kodak.
The original reverse engineering work was performed by Hadmut Danisch of the University of Karlsruhe, who deciphered the format by studying hex dumps of Photo CD files, and subsequently wrote hpcdtoppm, which converts Photo CD Images to PPM format, in the early 1990s.
However, Hadmut Danisch's reverse engineering work has been used to create a number of other open source implementations of Photo CD decoders such as ImageMagick.
[26] Currently hpcdtoppm and pcdtojpeg together form the core of information available in the public domain on the technical details of the Photo CD format.
The sixth component, 64Base, is stored in separate files on the Photo CD as part of the IMAGE PAC Extension (IPE).
[27][28] Under this scheme, in order to encode scanned images into Photo CD file, the first step is to preshape the RGB data via a non-linear transform (the Rec.
The preshaped RGB values are then converted to a luminance and two chrominance components via a CCIR 601-1-like matrix:[27] Finally the luminance and chrominance components are scaled to 8-bit values by the following equations:[27] Kodak claims that "the scale factors and offsets for the C1 and C2 channels result from the distribution of real world colors".
An oddity of this encoding scheme is that it allows Photo CD images to represent colors which are above 100% (up to 140.2%), "whiter than white".
[31] At the time of Photo CD's introduction, this allowed the display of images on the analog televisions of the day to show brighter, more vivid colors than would otherwise be the case.
[32][33] All modern photo formats enforce hard clipping at 100% (video formats in YUV still have headroom that is present on high level TVs), resulting in highlight clipping in converted images unless some form of Photo CD specific luminance and chrominance mapping is performed.
Secondly an additional reduction in size is achieved by decomposing the highest-resolution image data, and storing the 4Base, 16Base and 64Base components as residuals (differences from pixels at the previous level of resolution).
Thirdly and finally, the Photo CD system employs a form of quantization and Huffman coding to further compress this residual data.
The Huffman tables are encoded into the Photo CD image itself, and have different lengths depending on the compression class.