Классификации команд MCI
[Функция, связанная с этой страницей, MCI, является устаревшей функцией. Он был заменен MediaPlayer. MediaPlayer оптимизирован для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует по возможности использовать MediaPlayer вместо MCI. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]
MCI определяет четыре классификации команд: системные, обязательные, базовые и расширенные. В следующем списке описаны эти классификации команд:
- Системные команды обрабатываются напрямую MCI, а не драйвером.
- Необходимые команды обрабатываются драйвером. Все драйверы MCI должны поддерживать необходимые команды и флаги.
- Базовые команды (или необязательные команды) используются на некоторых устройствах. Если устройство поддерживает базовую команду, оно должно поддерживать определенный набор флагов для этой команды.
- Расширенные команды относятся к типу устройства или драйверу. Расширенные команды включают команды, такие как put (MCI_PUT) и where (MCI_WHERE) для типов устройств digitalvideo и overlay , а также расширения существующих команд (например, флаг "растянуть" команды состояния (MCI_STATUS) для типа устройства наложения).
Хотя системные и обязательные команды являются минимальным набором команд для любого драйвера MCI, базовые и расширенные команды поддерживаются не всеми драйверами. Приложение всегда может использовать системные и обязательные команды и их флаги, но если ему нужно использовать базовую или расширенную команду или флаг, оно должно сначала запросить драйвер с помощью команды возможности (MCI_GETDEVCAPS). В следующих разделах перечислены конкретные команды в каждой категории.
Системные команды
MCI обрабатывает следующие системные команды напрямую, а не передает их на устройства MCI.
Строка | Сообщение | Описание |
---|---|---|
Перерыв | MCI_BREAK | Задает ключ останова для устройства MCI. |
sysinfo | MCI_SYSINFO | Возвращает сведения об устройствах MCI. |
Обязательные команды
Все устройства MCI поддерживают следующие обязательные команды.
Строка | Сообщение | Описание |
---|---|---|
Возможность | MCI_GETDEVCAPS | Получает возможности устройства. |
Закрыть | MCI_CLOSE | Закрывает устройство. |
Информация | MCI_INFO | Получает текстовую информацию с устройства. |
Открыть | MCI_OPEN | Инициализирует устройство. |
status | MCI_STATUS | Получает сведения о состоянии с устройства. Некоторые флаги этой команды не являются обязательными, поэтому это также базовая команда. |
Устройства также должны поддерживать стандартный набор флагов команд для необходимых команд.
Основные команды
В следующем списке перечислены основные команды. Использование этих команд устройством MCI является необязательным.
Строка | Сообщение | Описание |
---|---|---|
Нагрузки | MCI_LOAD | Загружает данные из файла. |
Пауза | MCI_PAUSE | Перестает играть. Воспроизведение или запись можно возобновить в текущей позиции. |
играть | MCI_PLAY | Начинает передачу выходных данных. |
Записи | MCI_RECORD | Начинает запись входных данных. |
Возобновить | MCI_RESUME | Возобновляет воспроизведение или запись на приостановленном устройстве. |
Сохранить | MCI_SAVE | Сохраняет данные в файл диска. |
Искать | MCI_SEEK | Выполняет поиск вперед или назад. |
Установить | MCI_SET | Задает рабочее состояние устройства. |
status | СОСТОЯНИЕ MCI | Получает сведения о состоянии устройства. Это также обязательная команда; так как некоторые из его флагов не являются обязательными, они также перечислены здесь. (Необязательные элементы поддерживают устройства, использующие линейные носители с идентифицируемыми позициями.) |
Остановить | MCI_STOP | Перестает играть. |
Если драйвер поддерживает базовую команду, он также должен поддерживать стандартный набор флагов для команды.
Расширенные команды
Некоторые устройства MCI имеют дополнительные команды или добавляют флаги к существующим командам. Хотя некоторые расширенные команды применяются только к определенному драйверу устройства, большинство из них применяются ко всем драйверам определенного типа устройства. Например, набор команд для типа устройства sequencer расширяет команду set (MCI_SET) для добавления форматов времени, необходимых для секвенсоров MIDI.
Не следует предполагать, что устройство поддерживает расширенные команды или флаги. Вы можете использовать команду возможности (MCI_GETDEVCAPS), чтобы определить, поддерживается ли определенная функция, и приложение должно быть готово к работе с возвращаемыми значениями "неподдерживаемая команда" или "неподдерживаемая функция".
Для перечисленных типов устройств доступны следующие расширенные команды.
Строка | Сообщение | Типы устройств | Описание |
---|---|---|---|
Настроить | MCI_CONFIGURE | digitalvideo | Отображает диалоговое окно конфигурации. |
Cue | MCI_CUE | digitalvideo, waveaudio | Готовится к воспроизведению или записи. |
Удалить | MCI_DELETE | waveaudio | Удаляет сегмент данных из файла мультимедиа. |
escape | MCI_ESCAPE | videodisc | Отправляет пользовательские сведения на устройство. |
Заморозить | MCI_FREEZE | overlay | Отключает получение видео в буфер кадров. |
Положить | MCI PUT | digitalvideo, наложение | Определяет окно источника, назначения и фрейма. |
Понимаю | MCI_REALIZE | digitalvideo | Указывает устройству выбрать и реализовать свою палитру в контексте устройства отображаемого окна. |
setaudio | MCI_ SETAUDIO | digitalvideo | Задает параметры звука для видео. |
setvideo | MCI_ SETVIDEO | digitalvideo | Задает параметры видео. |
Сигнал | MCI_SIGNAL | digitalvideo | Определяет указанную позицию с помощью сигнала. |
Спина | MCI_SPIN | videodisc | Запускает вращение диска или останавливает его вращение. |
Шаг | MCI_STEP | digitalvideo, videodisc | Шаг воспроизведения одного или нескольких кадров вперед или обратно. |
Разморозить | MCI_UNFREEZE | overlay | Позволяет буферу кадров получать видеоданные. |
Обновление | MCI_UPDATE | digitalvideo | Перерисовывает текущий кадр в контекст устройства. |
Где | MCI WHERE | digitalvideo, наложение | Получает прямоугольник, указывающий область источника, назначения или кадра. |
Окно | MCI_WINDOW | digitalvideo, наложение | Управляет окном отображения. |