IDiscFormat2Data::SetWriteSpeed method (imapi2.h)
Sets the write speed of the disc recorder.
Syntax
HRESULT SetWriteSpeed(
[in] LONG RequestedSectorsPerSecond,
[in] VARIANT_BOOL RotationTypeIsPureCAV
);
Parameters
[in] RequestedSectorsPerSecond
Requested write speed measured in disc sectors per second.
A value of 0xFFFFFFFF (-1) requests that the write occurs using the fastest supported speed for the media. This is the default.
[in] RotationTypeIsPureCAV
Requested rotational-speed control type. Set to VARIANT_TRUE to request constant angular velocity (CAV) rotational-speed control type. Set to VARIANT_FALSE to use another rotational-speed control type that the recorder supports. The default is VARIANT_FALSE.
Return value
S_OK is returned on success, but other success codes may be returned as a result of implementation. The following error codes are commonly returned on operation failure, but do not represent the only possible error values:
Return code | Description |
---|---|
|
The request requires a current disc recorder to be selected.
Value: 0xC0AA0003 |
|
One or more arguments are not valid.
Value: 0x80070057 |
|
Pointer is not valid.
Value: 0x80004003 |
|
Unspecified failure.
Value: 0x80004005 |
|
Failed to allocate the required memory.
Value: 0x8007000E |
|
The device failed to accept the command within the timeout period. This may be caused by the device having entered an inconsistent state, or the timeout value for the command may need to be increased.
Value: 0xC0AA020D |
|
The device reported unexpected or invalid data for a command.
Value: 0xC0AA02FF |
|
The media is inserted upside down.
Value: 0xC0AA0204 |
|
The drive reported that it is in the process of becoming ready. Please try the request again later.
Value: 0xC0AA0205 |
|
There is no media in the device.
Value: 0xC0AA0202 |
|
The media is currently being formatted. Please wait for the format to complete before attempting to use the media.
Value: 0xC0AA0206 |
|
The drive reported that it is performing a long-running operation, such as finishing a write. The drive may be unusable for a long period of time.
Value: 0xC0AA0207 |
|
The write failed because the drive did not receive data quickly enough to continue writing. Moving the source data to the local computer, reducing the write speed, or enabling a "buffer underrun free" setting may resolve this issue.
Value: 0xC0AA0300 |
|
The media is not compatible or of unknown physical format.
Value: 0xC0AA0203 |
|
The DVD structure is not present. This may be caused by incompatible drive/medium used.
Value: 0xC0AA020E |
|
The device reported that the requested mode page (and type) is not present.
Value: 0xC0AA0201 |
|
The drive reported that the combination of parameters provided in the mode page for a MODE SELECT command were not supported.
Value: 0xC0AA0208 |
|
The drive reported that the media is write protected.
Value: 0xC0AA0209 |
|
The media's speed is incompatible with the device. This may be caused by using higher or lower speed media than the range of speeds supported by the device.
Value: 0xC0AA020F |
|
The specified handle is invalid.
Value: 6 |
|
The specified network resource or device is no longer available.
Value: 55 |
|
The device associated with this recorder during the last operation has been exclusively locked, causing this operation to failed.
Value: 0xC0AA0210 |
|
The write failed because the drive returned error information that could not be recovered from.
Value: 0xC0AA0301 |
|
The requested rotation type was not supported by the drive and the rotation type was adjusted.
Value: 0x00AA0005 |
|
The requested write speed was not supported by the drive and the speed was adjusted.
Value: 0x00AA0004 |
|
The requested write speed and rotation type were not supported by the drive and they were both adjusted.
Value: 0x00AA0006 |
Remarks
This method sets the write speed and type of rotational-speed control for a recorder. Requested values might differ from the values set in the recorder. To specify the recorder, call the IDiscFormat2Data::put_Recorder method.
If the recorder supports the requested write speed, the disc device uses the requested value. If the recorder does not support the requested write speed, the recorder uses a write speed that it does support that is closest to the requested value. The IDiscFormat2Data::get_CurrentWriteSpeed property contains the value used by the recorder.
To retrieve a list of the write speeds that the recorder and current media supports, call the IDiscFormat2Data::get_SupportedWriteSpeeds method.
If you request constant angular velocity (CAV) for rotational-speed control type and the recorder does not support CAV, the disc device uses another type of rotational-speed control type that it supports. The IDiscFormat2Data::get_CurrentRotationTypeIsPureCAV property indicates the value used by the recorder.
To retrieve the requested values, call the IDiscFormat2Data::get_RequestedWriteSpeed and IDiscFormat2Data::get_RequestedRotationTypeIsPureCAV methods.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows Vista, Windows XP with SP2 [desktop apps only] |
Minimum supported server | Windows Server 2003 [desktop apps only] |
Target Platform | Windows |
Header | imapi2.h |
See also
IDiscFormat2Data::get_CurrentRotationTypeIsPureCAV
IDiscFormat2Data::get_RequestedRotationTypeIsPureCAV