为了获得磁盘总容量,您需要将扇区数乘以每个扇区上用户数据字段的长度(在 CD-ROM/XA(扩展架构)模式 2 上为 2336 字节,而不是 2048)
CD-ROM 上的一个扇区可保存 2048 字节的用户数据,其余 304 字节用于其他用途。每个数据扇区都以 16 字节标头开始:
- 12 字节同步字段(00 ff ff ff ff ff ff ff ff ff ff 00)
- 3 字节地址(分、秒、秒的小数部分 (1/75))
- 1字节模式
模式字节决定了扇区中剩余的 2336 个字节的样子:
- 模式0:空数据;对于 CD 录制没有任何实际用途
- 模式1:典型的CD-ROM布局
2048字节的用户数据
4字节EDC(错误检测码,32位CRC)
8 个字节的保留空间,设置为零
172 字节“P”奇偶校验
104 字节“Q”奇偶校验
- 模式2:2336字节用户数据,通常用于CD-ROM/XA
为了检索为一个磁道中的扇区提供的数据类型,您可以使用以下方法获取扇区类型 http://msdn.microsoft.com/en-us/library/windows/desktop/cc512144%28v=vs.85%29.aspx from IRawCDImageTrackInfo http://msdn.microsoft.com/en-us/library/windows/desktop/cc512151%28v=vs.85%29.aspx界面。
可能的扇区类型由以下定义IMAPI_CD_SECTOR_TYPE http://msdn.microsoft.com/en-us/library/windows/desktop/cc507543%28v=vs.85%29.aspx枚举:
typedef enum {
IMAPI_CD_SECTOR_AUDIO = 0x00,
IMAPI_CD_SECTOR_MODE_ZERO = 0x01,
IMAPI_CD_SECTOR_MODE1 = 0x02,
IMAPI_CD_SECTOR_MODE2FORM0 = 0x03,
IMAPI_CD_SECTOR_MODE2FORM1 = 0x04,
IMAPI_CD_SECTOR_MODE2FORM2 = 0x05,
IMAPI_CD_SECTOR_MODE1RAW = 0x06,
IMAPI_CD_SECTOR_MODE2FORM0RAW = 0x07,
IMAPI_CD_SECTOR_MODE2FORM1RAW = 0x08,
IMAPI_CD_SECTOR_MODE2FORM2RAW = 0x09
} IMAPI_CD_SECTOR_TYPE;
- IMAPI_CD_SECTOR_AUDIO
对于这种扇区类型,音频数据每个扇区/帧有 2352 字节。这可以分为 588 个连续样本,每个样本有 4 个字节。单个样本的布局与 16 位立体声 44.1KHz WAV 文件数据相匹配。这种类型的扇区没有附加的纠错码。
- IMAPI_CD_SECTOR_MODE_ZERO
对于这种扇区类型,用户数据每个扇区/帧有 2336 字节。这种很少使用的扇区类型包含全零数据,并且在当今的媒体中几乎从未见过。
- IMAPI_CD_SECTOR_MODE1
对于这种扇区类型,用户数据每个扇区/帧有 2048 字节。 Mode1 数据是压制 CD-ROM 介质最常见的数据形式。此数据类型还提供标准扇区类型中最高级别的 ECC/EDC。
- IMAPI_CD_SECTOR_MODE2FORM0
对于这种扇区类型,用户数据每个扇区/帧有 2336 字节。所有模式 2 扇区类型也称为“CD-ROM XA”模式,允许在单个光盘上混合音频和数据轨道。这种扇区类型也称为模式 2“无形式”,已被视为已弃用,并且很少使用。
- IMAPI_CD_SECTOR_MODE2FORM1
对于这种扇区类型,用户数据每个扇区/帧有 2048 字节。所有模式 2 扇区类型也称为“CD-ROM XA”模式,允许在单个光盘上混合音频和数据轨道。
- IMAPI_CD_SECTOR_MODE2FORM2
对于这种扇区类型,用户数据每个扇区/帧有 2336 个字节,其中最后四个字节是可选的 CRC 码(如果不使用则为零)。所有模式 2 扇区类型也称为“CD-ROM XA”模式,允许在单个光盘上混合音频和数据轨道。这种扇区类型最常在写入 VideoCD 光盘时使用。
- IMAPI_CD_SECTOR_MODE1RAW
对于这种扇区类型,用户数据每个扇区/帧有 2352 字节。这是经过预处理的 Mode1Cooked 数据扇区,扇区标头、ECC/EDC 和加扰已添加到数据流中。
- IMAPI_CD_SECTOR_MODE2FORM0RAW
对于这种扇区类型,用户数据每个扇区/帧有 2352 字节。这是经过预处理的 Mode2Form0 数据扇区,扇区标头、ECC/EDC 和加扰已添加到数据流中。
- IMAPI_CD_SECTOR_MODE2FORM1RAW
对于这种扇区类型,用户数据每个扇区/帧有 2352 字节。这是经过预处理的 Mode2Form1 数据扇区,扇区标头、ECC/EDC 和加扰已添加到数据流中。
- IMAPI_CD_SECTOR_MODE2FORM2RAW
对于这种扇区类型,用户数据每个扇区/帧有 2352 字节。这是经过预处理的 Mode2Form2 数据扇区,扇区标头、ECC/EDC 和加扰已添加到数据流中。
评论:
某些扇区类型与单个图像中的其他扇区类型不兼容。以下是这种情况的典型示例:
如果第一个轨道是音频,则所有轨道都必须是音频。
如果第一个轨道是模式 1,则所有轨道都必须是模式 1。
只有三个模式 2 (XA) 扇区(模式 2 Form 0、模式 2 Form 1 和模式 2 Form 2)可以混合在单个光盘映像中,即使如此,也只能与其他模式 2 (XA) 扇区类型混合。