NAME CD_ATTENUATE -- Attenuate CD audio volume (immediately or gradually) IO REQUEST io_Device preset by the call to opendevice() io_Unit preset by the call to opendevice() io_Command CD_ATTENUATE io_Data NULL io_Length duration of volume fade in frames io_Offset target volume level (0 - 0x7FFF) (-1 = status only) RESULTS io_Error Returns an error if drive does not support attenuation io_Actual current volume level (fade may be monitored) FUNCTION This command will ramp the CD audio volume up or down from its current value to the value contained in io_Offset. The range is 0 (silence) to 0x7FFF (full volume). If -1 is specified as the target, the attenuation will not be modified; the current attenuation value will be returned in io_Actual. io_Length contains the duration of the fade. In seconds, this is io_Length divided by the current frame rate (usually 75). Note that this command returns before the fade has completed. Thus, once started, a fade cannot be aborted. You can, however, send a new CD_ATTENUATE command, which will immediately override any fade currently in progress. An io_Length of zero means attenuate immediately. If a gradual attenuation command is sent before the play command, the fade will begin as soon as the play command is sent. EXAMPLE NOTES This command has no effect on Amiga audio volume, only CD audio. If the drive does not support volume attenuation, but does support mute, a value of under $0800 should be considered mute, and equal to or above should be full volume. If chunky attenuation is supported, the drive should do the best it can. If the drive does not support volume attenuation at all, an error should be returned. Even if only mute is supported, if gradual attenuation is requested, the device should still emulate the fade command and mute based on the $0800 boundary. BUGS SEE ALSO cd_info