команда MCI_RESERVE
Команда MCI_RESERVE выделяет непрерывное дисковое пространство для рабочей области экземпляра драйвера устройства для последующей записи. Цифровые видеоустройства распознают эту команду.
Чтобы отправить эту команду, вызовите функцию mciSendCommand со следующими параметрами.
MCIERROR mciSendCommand(
MCIDEVICEID wDeviceID,
MCI_RESERVE,
DWORD dwFlags,
(DWORD) (LPMCI_DGV_RESERVE_PARMS) lpReserve
);
Параметры
-
wDeviceID
-
Идентификатор устройства MCI, которое будет получать сообщение команды.
-
Dwflags
-
MCI_NOTIFY, MCI_WAIT или MCI_TEST. Сведения об этих флагах см. в разделе Флаги ожидания, уведомления и тестирования.
-
lpReserve
-
Указатель на структуру MCI_DGV_RESERVE_PARMS .
Возвращаемое значение
Возвращает ноль при успешном выполнении или ошибке в противном случае.
Комментарии
Если рабочая область содержит несохраненные данные, эти данные теряются. Если место на диске не зарезервировано до записи, команда MCI_RECORD выполняет неявное резервирование с параметрами по умолчанию для конкретного устройства. В некоторых реализациях резервирование не требуется и может игнорироваться драйвером устройства. Явное резервирование места позволяет лучше управлять временем задержки выделения диска, объемом выделенного пространства и местом выделения дискового пространства. Объем и расположение дискового пространства, уже зарезервированного для этого экземпляра устройства, можно изменить, повторно отправив MCI_RESERVE. Все выделенное и по-прежнему неиспользуемое дисковое пространство не освобождается, пока не будут сохранены все записанные данные или пока экземпляр драйвера устройства не будет закрыт.
Если видео отключено с флагом MCI_OFF команды MCI_SETVIDEO , зарезервированное пространство не будет содержать видео. Если звук отключен с флагом MCI_OFF команды MCI_SETAUDIO , зарезервированное пространство не будет включать звук. Если звук и видео отключены или запрошенный размер равен нулю, пространство не зарезервировано и все существующее зарезервированное пространство освобождается.
К цифровым видеоустройствам применяются следующие дополнительные флаги:
-
MCI_DGV_RESERVE_IN
-
Элемент lpstrPath структуры, определяемой lpReserve , содержит адрес буфера, содержащий расположение временного файла. Буфер содержит только диск и путь к каталогу файла, используемого для хранения записанных данных; имя файла указывается драйвером устройства. Этот временный файл удаляется при закрытии экземпляра устройства, если он не сохранен явным образом. Если этот флаг опущен, драйвер устройства указывает, где выделяется место на диске.
-
MCI_DGV_RESERVE_SIZE
-
Элемент dwSize структуры, определяемой lpReserve , указывает приблизительный объем дискового пространства, резервируемого в рабочей области для записи. Значение указывается в формате текущего времени. Объем места на диске оценивается на основе запрошенного времени и значения формата файла, алгоритма видео и звука, а также значений качества. Если этот флаг опущен, драйвер устройства может использовать значение по умолчанию, которое он определяет.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера |
Windows 2000 Server [только классические приложения] |
Заголовок |
|