Метод IAMVideoCompression::GetInfo (strmif.h)
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде MediaPlayer, IMFMediaEngine и аудио/видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]
Метод GetInfo
извлекает сведения о свойствах сжатия фильтра, включая возможности и значения по умолчанию.
Синтаксис
HRESULT GetInfo(
[out] LPWSTR pszVersion,
[in, out] int *pcbVersion,
[out] LPWSTR pszDescription,
[in, out] int *pcbDescription,
[out] long *pDefaultKeyFrameRate,
[out] long *pDefaultPFramesPerKey,
[out] double *pDefaultQuality,
[out] long *pCapabilities
);
Параметры
[out] pszVersion
Указатель на буфер, который получает строку версии, например "Версия 2.1.0".
[in, out] pcbVersion
Получает размер строки версии в байтах.
[out] pszDescription
Указатель на буфер, который получает строку описания, например "Мой видеокомпрессор".
[in, out] pcbDescription
Получает размер строки описания в байтах.
[out] pDefaultKeyFrameRate
Получает частоту ключевых кадров по умолчанию.
[out] pDefaultPFramesPerKey
Получает частоту прогнозируемых кадров (P) на ключевой кадр по умолчанию.
[out] pDefaultQuality
Получает качество по умолчанию.
[out] pCapabilities
Получает возможности сжатия в виде побитового сочетания нулевых или нескольких флагов CompressionCaps .
Возвращаемое значение
Возвращает значение HRESULT .
Комментарии
Любой из перечисленных параметров может иметь значение NULL, и в этом случае метод игнорирует этот параметр.
Приложение должно выделить буферы для строк версии и описания. Чтобы определить требуемый размер буферов, вызовите этот метод со значением NULL для параметров pszVersion и pszDescription . Используйте значения, возвращаемые в pcbVersion и pcbDescription , чтобы выделить буферы, а затем снова вызвать метод, как показано в следующем коде:
C++ |
---|
|
Параметр pCapabilities получает набор флагов, указывающих, какие свойства сжатия поддерживаются, и, таким образом, какие методы IAMVideoCompression поддерживаются. Например, если возвращается флаг CompressionCaps_CanKeyFrame , фильтр поддерживает методы IAMVideoCompression::get_KeyFrameRate и IAMVideoCompression::p ut_KeyFrameRate .
Остальные параметры получают значения по умолчанию для свойств сжатия. Для неподдерживаемых свойств (как определено флагами, возвращаемыми в pCapabilities) следует игнорировать соответствующее значение по умолчанию, так как оно может быть неправильным или значимым.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | strmif.h (включая Dshow.h) |
Библиотека | Strmiids.lib |