CAPABILITY (CD/XA Commands)
Appearance
The CAPABILITY command requests detailed information regarding the functional capabilities of a Compact Disc Digital Audio/Extended Architecture (CD/XA) device instance. This is a Media Control Interface (MCI) command string.
Syntax
capability object keyword
Parameters
- object
- Specifies the target object associated with this media control interface command. It can be one of the following:
- Device type (e.g., `cdxa`)
- Device name
- Filename
- Alias
- keyword
- Specifies the specific capability metric being queried. You must request exactly one of the following keywords per command string:
| Keyword | Description | CD/XA Return Value |
|---|---|---|
| CAN EJECT | Queries if the CD/XA device can mechanically eject the loaded media. | `TRUE` or `FALSE` |
| CAN LOCKEJECT | Queries if the device supports disabling manual or physical ejection of the media via software commands. | `TRUE` or `FALSE` |
| CAN PLAY | Queries if the CD/XA device is capable of playing the media. | `TRUE` |
| CAN PROCESS INTERNAL | Queries if the device can internally process digital data streams using an internal digital-to-analog converter (DAC). | `TRUE` |
| CAN RECORD | Queries if the device can write or record data. | `FALSE` |
| CAN SAVE | Queries if the device can permanently save media blocks. | `FALSE` |
| CAN SETVOLUME | Queries if the device supports digital software control over its audio volume attenuation level. | `TRUE` |
| CAN STREAM | Queries if the device can continuously stream digital data to or from another target component based on the active device context link connection. | `TRUE` |
| COMPOUND DEVICE | Queries if the target device requires an associated file or media resource container to operate. | `TRUE` |
| DEVICE TYPE | Queries the generic device classification string. | `CDXA` |
| HAS AUDIO | Queries if the device supports audio playback streams. | `TRUE` |
| HAS VIDEO | Queries if the device context supports digital video playback. | `FALSE` (Not supported in this toolkit release) |
| PREROLL TIME | Queries the length of time needed to stabilize data output before playback begins. | `0` (Indicates the preroll time is entirely unbounded) |
| PREROLL TYPE | Queries the preroll stabilization method configuration. | `NONE` |
| USES FILES | Queries if the media control layer utilizes disk-bound storage resource files. | `TRUE` |
Synchronization Keywords
- WAIT
- Executes the command synchronously. The subsystem blocks the calling application context thread and waits until the capability evaluation is fully processed. **The `WAIT` keyword must be explicitly specified within the text command string in order to receive the returned information string.**
- NOTIFY
- Executes the command asynchronously. Control returns immediately to the calling thread. Once the subsystem gathers the capability state data, an `MM_MCINOTIFY` message is dispatched to the registered application window procedure.
Example Code
The following text command string queries if the CD/XA driver context is capable of recording data, executing the tracking request synchronously to guarantee the return string value is fully readable:
capability cdxa can record wait
Related Commands
- INFO (CD/XA Command)
- STATUS (CD/XA Command)