Basic commands are commands all device types should understand but can modify the parameters. For example, when issuing a PLAY command to a Videodisc Player, it might be desirable to indicate the speed of playback in frames per second. However, a device such as a CD Player might not have the capability to play back at different speeds.

The list of basic commands is shown in the following table. If a device does not use a device-type command, it can return MCIERR_UNSUPPORTED_FUNCTION. If a device supports the command, but not all of the options, it can return the MCIERR_UNSUPPORTED_FLAG for options that are not applicable.

ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³Message                 ³Description                             ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_CONNECTOR           ³Enables, disables, counts the number of,³
³                        ³or queries the status of connectors.    ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_LOAD                ³Loads a new device element (file name)  ³
³                        ³into an open device context.            ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_MASTERAUDIO         ³Sets the system master audio setting for³
³                        ³all audio devices in the system.        ³
³                        ³MCI_MASTERAUDIO is also used as a system³
³                        ³command to query the current audio      ³
³                        ³settings when the driver is first       ³
³                        ³opened.                                 ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_PAUSE               ³Suspends device playback.               ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_PLAY                ³Starts playing the device.              ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_RECORD              ³Starts recording data.                  ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_RESUME              ³Resumes playing or recording from a     ³
³                        ³paused state.                           ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_SAVE                ³Saves data for the device.              ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_SEEK                ³Moves to the specified position and     ³
³                        ³stops.                                  ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_SET                 ³Sets the operating state of the device. ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_SETCUEPOINT         ³Sets a cuepoint.                        ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_SETPOSITIONADVISE   ³Sets a position change notification for ³
³                        ³the device.                             ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_STATUS              ³Obtains information about the status of ³
³                        ³a media device.                         ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_STOP                ³Stops the device.                       ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ

The basic command messages use the ulParam1 parameter for the flags applicable to the command message. They also use the pParam2 parameter for a pointer to a message-specific data structure. Your MCD might add flags and parameters to create extended commands. When you extend a command message, your MCD must still respond to the basic flags and parameters.

The following table identifies the flags and data structures of the basic command messages. For a complete reference of media control interface commands, refer to the OS/2 Multimedia Programming Reference.

ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³Message                 ³Parameters (ulParam1)       ³Data Structure (pParam2)    ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_CONNECTOR           ³MCI_NOTIFY                  ³MCI_CONNECTOR_PARMS         ³
³                        ³MCI_WAIT                    ³                            ³
³                        ³MCI_ENABLE_CONNECTOR        ³                            ³
³                        ³MCI_DISABLE_CONNECTOR       ³                            ³
³                        ³MCI_QUERY_CONNECTOR_STATUS  ³                            ³
³                        ³MCI_CONNECTOR_TYPE          ³                            ³
³                        ³MCI_CONNECTOR_INDEX         ³                            ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_LOAD                ³MCI_OPEN_ELEMENT            ³MCI_LOAD_PARMS              ³
³                        ³MCI_OPEN_MMIO               ³                            ³
³                        ³MCI_NOTIFY                  ³                            ³
³                        ³MCI_WAIT                    ³                            ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_MASTERAUDIO         ³MCI_WAIT                    ³MCI_MASTERAUDIO_PARMS       ³
³                        ³MCI_QUERYCURRENTSETTING     ³                            ³
³                        ³MCI_QUERYSAVEDSETTING       ³                            ³
³                        ³MCI_SAVESETTING             ³                            ³
³                        ³MCI_MASTERVOL               ³                            ³
³                        ³MCI_SPEAKERS                ³                            ³
³                        ³MCI_HEADPHONES              ³                            ³
³                        ³MCI_ON                      ³                            ³
³                        ³MCI_OFF                     ³                            ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_PAUSE               ³MCI_NOTIFY                  ³MCI_GENERIC_PARMS           ³
³                        ³MCI_WAIT                    ³                            ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_PLAY                ³MCI_NOTIFY                  ³MCI_PLAY_PARMS              ³
³                        ³MCI_WAIT                    ³                            ³
³                        ³MCI_FROM                    ³                            ³
³                        ³MCI_TO                      ³                            ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_RECORD              ³MCI_NOTIFY                  ³MCI_RECORD_PARMS            ³
³                        ³MCI_WAIT                    ³                            ³
³                        ³MCI_FROM                    ³                            ³
³                        ³MCI_TO                      ³                            ³
³                        ³MCI_RECORD_INSERT           ³                            ³
³                        ³MCI_RECORD_OVERWRITE        ³                            ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_RESUME              ³MCI_NOTIFY                  ³MCI_GENERIC_PARMS           ³
³                        ³MCI_WAIT                    ³                            ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_SAVE                ³MCI_NOTIFY                  ³MCI_SAVE_PARMS              ³
³                        ³MCI_WAIT                    ³                            ³
³                        ³MCI_SAVE_FILE               ³                            ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_SEEK                ³MCI_NOTIFY                  ³MCI_SEEK_PARMS              ³
³                        ³MCI_WAIT                    ³                            ³
³                        ³MCI_TO                      ³                            ³
³                        ³MCI_TO_START                ³                            ³
³                        ³MCI_TO_END                  ³                            ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_SET                 ³MCI_NOTIFY                  ³MCI_SET_PARMS               ³
³                        ³MCI_WAIT                    ³                            ³
³                        ³MCI_SET_AUDIO               ³                            ³
³                        ³MCI_SET_DOOR_OPEN           ³                            ³
³                        ³MCI_SET_DOOR_CLOSED         ³                            ³
³                        ³MCI_SET_DOOR_LOCK           ³                            ³
³                        ³MCI_SET_DOOR_UNLOCK         ³                            ³
³                        ³MCI_SET_VOLUME              ³                            ³
³                        ³MCI_OVER                    ³                            ³
³                        ³MCI_SET_VIDEO               ³                            ³
³                        ³MCI_SET_ON                  ³                            ³
³                        ³MCI_SET_OFF                 ³                            ³
³                        ³MCI_SET_SPEED_FORMAT        ³                            ³
³                        ³MCI_SET_TIME_FORMAT         ³                            ³
³                        ³MCI_SET_ITEM                ³                            ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_SETCUEPOINT         ³MCI_NOTIFY                  ³MCI_CUEPOINT_PARMS          ³
³                        ³MCI_WAIT                    ³                            ³
³                        ³MCI_SET_CUEPOINT_ON         ³                            ³
³                        ³MCI_SET_CUEPOINT_OFF        ³                            ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_SETPOSITIONADVISE   ³MCI_NOTIFY                  ³MCI_POSITION_PARMS          ³
³                        ³MCI_WAIT                    ³                            ³
³                        ³MCI_SET_POSITION_ADVISE_ON  ³                            ³
³                        ³MCI_SET_POSITION_ADVISE_OFF ³                            ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_STATUS              ³MCI_NOTIFY                  ³MCI_STATUS_PARMS            ³
³                        ³MCI_WAIT                    ³                            ³
³                        ³MCI_STATUS_START            ³                            ³
³                        ³MCI_TRACK                   ³                            ³
³                        ³MCI_STATUS_ITEM             ³                            ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³MCI_STOP                ³MCI_NOTIFY                  ³MCI_GENERIC_PARMS           ³
³                        ³MCI_WAIT                    ³                            ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ


[Back] [Next]