.cda file

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

.cda is a common filename extension denoting a small (44 byte) stub file generated by Microsoft Windows for each audio track on a standard "Red Book" CD-DA format audio CD as defined by the Table of Contents (ToC) (within the lead-in's subcode). These files are shown in the directory for the CD being viewed in the format Track##.cda, where ## is the number of each individual track.

The .cda files do not contain the actual PCM sound wave data, but instead tell where on the disc each track starts and stops. If the file is "copied" from the CD to a computer, it cannot be used on its own because it is only a shortcut to part of the disc. However, some audio editing and CD creation programs will, from the user's perspective, load .cda files as though they are actual audio data files, and allow the user to listen to them.

Organization of a CDA file[edit]

offset length content
0x00 4 the 4 ASCII characters "RIFF"
0x04 4 the size of the following chunk: always 36 (44 - 8), on 4 bytes (Intel order)
0x08 4 chunk identifier: the 4 ASCII characters "CDDA"
0x0C 4 the 3 ASCII characters "fmt" followed by a space
0x10 4 length of the chunk: always 24, on 4 bytes (Intel order)
0x14 2 version of the CD format, on 2 bytes (Intel order). In May 2006, always equal to 1.
0x016 2 number of the range, on 2 bytes (Intel order). The first track has the number 1.
0x18 4 identifier calculated by Windows for cdplayer.exe.
0x1c 4 range offset, in number of frames (Intel order)
0x20 4 duration of the track, total number of frames (Intel order)
0x24 1 range position: frames
0x25 1 range position: seconds
0x26 1 range position: minutes
0x27 1 a null byte (binary value 0)
0x28 1 duration of the track: frames
0x29 1 duration of the track: seconds
0x2a 1 duration of the track: minutes
0x2b 1 a null byte (binary value 0)

The size of a CDA file being fixed, as well as its organization, there is always only one and only chunk, named "CDDA" (meaning Compact Disc for Digital Audio).

The identifier created by Windows is used by the Windows 95 and Windows 98 CD drive (cdplayer.exe). This player cannot connect to FreeDB or CDDB. So that it can display the artist name and song title, you have to manually enter this information in the cdplayer.ini file (in the Windows installation directory), in a section named after that identifier. This identifier has no relation to the DiscId used by FreeDB or CDDB, it is a purely Microsoft creation, for the above use.

The position and length of the tracks use frames as the unit. There are 75 frames per second. This is the smallest block of data that can be read from an audio CD, corresponding to a sector of the CD.

All the information which requires several bytes is coded with the order-byte Intel (small endian).

Software that uses .cda format[edit]

See also[edit]

References[edit]

External links[edit]