Метод ICaptureGraphBuilder2::AllocCapFile (strmif.h)
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде MediaPlayer, IMFMediaEngine и аудио/видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]
Метод AllocCapFile
предварительно выделяет файл записи до указанного размера. Для достижения наилучших результатов всегда записывайте данные в дефрагментированный предварительно размещенный файл записи, который превышает размер данных записи.
Синтаксис
HRESULT AllocCapFile(
[in] LPCOLESTR lpstr,
[in] DWORDLONG dwlSize
);
Параметры
[in] lpstr
Указатель на строку расширенных символов, содержащую имя файла для создания или изменения размера.
[in] dwlSize
Размер выделяемого файла в байтах.
Возвращаемое значение
Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
Этот метод завершается ошибкой, если файл доступен только для чтения.
Лучше выделить как можно больше места— в идеале больше, чем требуется. Однако это может привести к созданию очень большого файла, содержащего относительно мало данных. Например, файл записи размером 1 ГБ может содержать несколько мегабайт захваченного видео. Используйте метод ICaptureGraphBuilder2::CopyCaptureFile , чтобы скопировать данные в новый файл. Этот метод копирует только данные и игнорирует пустую часть исходного файла.
Если вы используете этот метод для предварительного выделения файла, вызовите метод IFileSinkFilter2::SetMode в фильтре модуля записи файлов с нулевым значением. Если для фильтра задано значение AM_FILE_OVERWRITE, он удалит предварительно подготовленный файл. Обратите внимание, что некоторые фильтры записи файлов не поддерживают режим 0.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | strmif.h (включая Dshow.h) |
Библиотека | Strmiids.lib |