Vitesse de définition du CD-ROM

Il est souvent pratique de faire tourner les CD à une vitesse inférieure à la vitesse optimale que le lecteur de CD-ROM autorise. Par exemple, sur les ordinateurs portables, les lecteurs de CD-ROM qui tournent à grande vitesse déchargent la batterie très rapidement. Vous pouvez définir le lecteur de CD-ROM à basse vitesse pour économiser l’alimentation de la batterie.

Certains ordinateurs n’ont pas besoin de lecteurs de CD-ROM pour fonctionner à des vitesses élevées. Par exemple, les lecteurs de CD-ROM sur les ordinateurs media-center effectuent principalement des opérations, telles que la lecture audio, qui ne nécessitent pas de vitesses supérieures à 1X. Les lecteurs de CD-ROM qui tournent à 16 fois pendant la lecture, par exemple, quand une vitesse de seulement 1X est requise, peuvent produire un bruit fort qui entraîne une mauvaise expérience utilisateur.

La version 2 de la spécification SCSI-3 Multimedia Commands (MMC) définit deux commandes pour définir la vitesse du CD-ROM : SET CD SPEED et SET STREAMING. Dans Windows Vista, les applications peuvent demander au pilote de classe CD-ROM d’émettre l’une de ces deux commandes en envoyant une requête IOCTL_CDROM_SET_SPEED au pilote de classe.

Pour envoyer la commande SET CD SPEED à un périphérique CD-ROM, l’appelant spécifie un type de requête CdromSetSpeed dans le membre RequestType de CDROM_SET_SPEED, lors de l’entrée dans IOCTL_CDROM_SET_SPEED.

Pour envoyer une commande SET STREAMING à l’appareil, l’appelant spécifie un type de requête CdromSetStreaming dans le membre RequestType de CDROM_SET_STREAMING, lors de l’entrée dans IOCTL_CDROM_SET_SPEED.

Si une application modifie la vitesse de la broche avec une commande SET CD SPEED, l’appareil revient automatiquement à sa vitesse par défaut lorsque le média est modifié. Si une application modifie la vitesse de la broche avec une commande SET STREAMING, une modification du média n’affecte pas la vitesse, sauf si l’appelant spécifie la valeur FALSE dans le membre persistant de la structure CDROM_SET_STREAMING.

La requête SET STREAMING fonctionne uniquement sur un appareil compatible MMC. Si une application envoie cette demande à un appareil qui n’est pas conforme à MMC, le pilote de classe CD-ROM échoue.