Управление устройствами (Windows Multimedia)
[Функция, связанная с этой страницей, MCI, является устаревшей функцией. Он был заменен MediaPlayer. MediaPlayer оптимизирован для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать новый код MediaPlayer вместо MCIпо возможности. Корпорация Майкрософт предлагает, что существующий код, использующий устаревшие API, будет перезаписан для использования новых API, если это возможно.]
Чтобы управлять устройством MCI, откройте устройство, отправьте в него необходимые команды, а затем закройте устройство. Команды могут быть очень похожими, даже для совершенно разных устройств MCI. Например, следующая серия команд MCI воспроизводит шестую дорожку аудио cd с помощью функции mciSendString:
mciSendString("open cdaudio", lpszReturnString,
lstrlen(lpszReturnString), NULL);
mciSendString("set cdaudio time format tmsf", lpszReturnString,
lstrlen(lpszReturnString), NULL);
mciSendString("play cdaudio from 6 to 7", lpszReturnString,
lstrlen(lpszReturnString), NULL);
mciSendString("close cdaudio", lpszReturnString,
lstrlen(lpszReturnString), NULL);
В следующем примере показана аналогичная серия команд MCI, которая воспроизводит первые 10 000 примеров аудиофайла волны:
mciSendString(
"open c:\mmdata\purplefi.wav type waveaudio alias finch",
lpszReturnString, lstrlen(lpszReturnString), NULL);
mciSendString("set finch time format samples", lpszReturnString,
lstrlen(lpszReturnString), NULL);
mciSendString("play finch from 1 to 10000", lpszReturnString,
lstrlen(lpszReturnString), NULL);
mciSendString("close finch", lpszReturnString,
lstrlen(lpszReturnString), NULL);
В этих примерах показаны некоторые интересные факты о командах MCI:
- Те же основные команды (открытые, задать, воспроизвестии закрыть) используются с аудио-устройствами cd и waveform-audio. Те же команды MCI используются со всеми устройствами MCI.
- Открытая команда для устройства waveform-audio включает спецификацию имени файла. Устройство waveform-audio — это составное устройство (одно связанное с файлом данных), а звуковое устройство CD — это простое устройство (один без связанного файла данных).
- Команда set задает форматы времени в каждом случае, но флаг формата времени для аудиоустройства CD указывает треки/минуты/секунды/кадры (TMSF), а формат времени, используемый с устройством waveform-audio, указывает "примеры".
- Переменные, используемые с флагами from и to, соответствуют соответствующему формату времени. Например, для аудиоустройства CD переменные указывают диапазон треков, но для устройства waveform-audio переменные указывают диапазон примеров.