MCI_LIST

This MCI command message obtains information describing the compression algorithms, video sources, audio streams, and video streams supported by the device. The parameters and flags available for this message depend on the selected device.

Parameters

DWORD lParam1

The following standard and command-specific flags apply to digital-video devices:


MCI_NOTIFY

Specifies that MCI should post the MM_MCINOTIFY message when this command completes. The window that receives this message is specified in the dwCallback field of the data structure identified by lParam2.

MCI_TEST

Queries the device to determine if it can execute the command. The device returns an error if it is incapable of executing the command. It returns no error if it can handle the command. MCI returns control to the application without executing the command.

MCI_WAIT

Specifies that the operation should finish before MCI returns control to the application.

MCI_DGV_LIST_COUNT

Returns the number of options of the specified type.

MCI_DGV_LIST_NUMBER

Indicates an index is specified in the dwNumber field of the data structure identified by lParam2. The index must be an integer between 1 and the value returned for the MCI_DGV_LIST_COUNT flag.

MCI_DGV_LIST_ALG

Indicates the lpstrAlgorithm field of the data structure identified by lParam2 contains a pointer to a buffer containing the name of an algorithm. The name is used to retrieve the types of quality descriptors associated with an algorithm.

MCI_DGV_LIST_ITEM

Specifies that a constant indicating the list type is included in the dwItem field of the data structure identified by lParam2. This flag is required. Use one of the following constants to indicate the list type:


MCI_DGV_LIST_AUDIO_ALG

Indicates the command should retrieve names of audio algorithms.

MCI_DGV_LIST_AUDIO_QUALITY

Indicates the list command should retrieve audio quality levels. The levels returned are associated with the algorithm referenced by the lpstrAlgorithm field of the data structure identified by lParam2. If that field is specified using the string "current" then the qualities associated with the current algorithm are returned.

MCI_DGV_LIST_AUDIO_STREAM

Indicates the command should retrieve names of audio streams.

MCI_DGV_LIST_STILL_ALG

Indicates the command should retrieve names of still algorithms.

MCI_DGV_LIST_STILL_QUALITY

Indicates the list command should retrieve quality levels. The levels returned are associated with the algorithm referenced by the lpstrAlgorithm field of the data structure identified by lParam2. If that field is specified using the string "current" then the qualities associated with the current algorithm are returned.

MCI_DGV_LIST_VIDEO_ALG

Indicates the command should retrieve names of video algorithms.

MCI_DGV_LIST_VIDEO_QUALITY

Indicates the list command should retrieve video quality levels. The levels returned are associated with the algorithm referenced by the lpstrAlgorithm field of the data structure identified by lParam2. If that field is specified using the string "current" then the qualities associated with the current algorithm are returned.

MCI_DGV_LIST_VIDEO_SOURCE

Indicates the command should return information about the video sources. When used with MCI_DGV_LIST_COUNT, the command returns the number of video sources. When used with MCI_DGV_LIST_NUMBER, the command returns the type of a video source. MCI defines the following constants for type:

MCI_SETVIDEO_SRC_NTSC

MCI_SETVIDEO_SRC_RGB

MCI_SETVIDEO_SRC_SVIDEO

MCI_SETVIDEO_SRC_PAL

MCI_SETVIDEO_SRC_SECAM

MCI_SETVIDEO_SRC_GENERIC

There might be more than one source of each type returned. The generic source type is used when more then one type of signal is allowed for that connector.

MCI_DGV_LIST_VIDEO_STREAM

Indicates the command should retrieve names of video streams.


LPMCI_DGV_LIST_PARMS lParam2

Specifies a far pointer to the MCI_DGV_LIST_PARMS data structure.

Return Value

Returns zero if successful. Otherwise, it returns an MCI error code.

Comments

This command is used to query lists of driver information. The caller can retrieve any one item in the list or can retrieve the number of items in the list.


When MCI_DGV_LIST_NUMBER is specified, a string is returned in the buffer pointed to by the lpstrReturn field in the data structure identified by lParam2. The dwReturnSize field specifies the buffer length for the return data.

One exception is for the MCI_DGV_LIST_VIDEO_SOURCE parameter which returns a DWORD constant to indicate the type of video source. This parameter uses the MCI_INTEGER_RETURNED flag in its return code to indicate it is returning a DWORD in the lpstrReturn field.

When the MCI_DGV_LIST_COUNT flag is specified, a DWORD is returned in the lpstrReturn field of the data structure identified by lParam2. This parameter uses the MCI_INTEGER_RETURNED flag in its return code to indicate it is returning a DWORD in the lpstrReturn field.