CD-ROM 设置速度

以低于 CD-ROM 驱动器允许的最佳轴速的速度旋转 CD 通常很方便。 例如,在便携式计算机中,高速旋转的 CD-ROM 驱动器会非常快速地耗尽电池。 可以将 CD-ROM 驱动器设置为低速以节省电池电量。

某些计算机不需要 CD-ROM 驱动器高速运行。 例如,媒体中心计算机中的 CD-ROM 驱动器主要执行不需要超过 1X 的速度的操作,例如音频播放。 例如,在播放期间以 16X 的速度旋转的 CD-ROM 驱动器(如果只需要 1X 的速度)可能会产生响亮的噪音,从而导致糟糕的用户体验。

SCSI-3 多媒体命令的版本 2 (MMC) 规范定义了两个用于设置 CD-ROM 速度的命令:SET CD SPEED 和 SET STREAMING。 在 Windows Vista 中,应用程序可以通过向类驱动程序发送 IOCTL_CDROM_SET_SPEED 请求来指示 CD-ROM 类驱动程序发出这两个命令之一。

若要将 SET CD SPEED 命令发送到 CD-ROM 设备,调用方在输入到IOCTL_CDROM_SET_SPEED时,在 CDROM_SET_SPEED 的 RequestType 成员中指定 CdromSetSpeed 的请求类型。

若要将 SET STREAMING 命令发送到设备,调用方在输入到IOCTL_CDROM_SET_SPEED时,在 CDROM_SET_STREAMING 的 RequestType 成员中指定 CdromSetStreaming 的请求类型。

如果应用程序使用 SET CD SPEED 命令更改了轴速,则当媒体发生更改时,设备会自动返回到其默认速度。 如果应用程序使用 SET STREAMING 命令更改轴速,则媒体更改不会影响速度,除非调用方在 CDROM_SET_STREAMING 结构的 Persistent 成员中指定 FALSE 值。

SET 流式处理请求仅适用于符合 MMC 标准的设备。 如果应用程序将此请求发送到不符合 MMC 的设备,CD-ROM 类驱动程序将使请求失败。