Метод IAMExtDevice::GetCapability (strmif.h)
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде MediaPlayer, IMFMediaEngine и аудио/видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]
Метод GetCapability
извлекает возможности внешнего устройства.
Синтаксис
HRESULT GetCapability(
[in] long Capability,
[out] long *pValue,
[out] double *pdblValue
);
Параметры
[in] Capability
Указывает возможность проверка. Дополнительные сведения см. в разделе "Примечания".
[out] pValue
Указатель на переменную, получающую длинное целое число. Дополнительные сведения см. в разделе "Примечания".
[out] pdblValue
Указатель на переменную, которая получает значение double. Дополнительные сведения см. в разделе "Примечания".
Возвращаемое значение
При успешном выполнении этого метода возвращается S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
Параметр Capability — это флаг, указывающий, какую возможность проверка. Метод возвращает результат в параметре pValue или в параметре pdblValue в зависимости от флага возможности.
Для следующих флагов метод возвращает значение OATRUE или OAFALSE в параметре pValue . Значение OATRUE указывает, что возможность присутствует, а значение OAFALSE указывает, что она отсутствует.
Флаг возможности | Описание |
---|---|
ED_DEVCAP_AUDIO_INPUTS | Устройство принимает входные звуковые данные. |
ED_DEVCAP_CAN_MONITOR_SOURCES | Устройство может отправлять любые входные данные в отслеживаемые выходные данные, независимо от выбранного в данный момент ввода. |
ED_DEVCAP_CAN_PREVIEW | Устройство может просматриваться. |
ED_DEVCAP_CAN_RECORD | Устройство может записывать данные. |
ED_DEVCAP_CAN_RECORD_STROBE | Устройство может записывать строб. Эта возможность применяется к устройствам с несколькими дорожками, которые могут записывать выбранные дорожки. |
ED_DEVCAP_CAN_SAVE | Устройство может сохранять данные. |
ED_DEVCAP_CTLTRK_READ | Устройство может считывать дорожки управления. |
ED_DEVCAP_HAS_AUDIO | Устройство имеет звук. |
ED_DEVCAP_HAS_VIDEO | Устройство имеет видео. |
ED_DEVCAP_INDEX_READ | Устройство может считывать индексные метки. |
ED_DEVCAP_NEEDS_CALIBRATING | Устройство нуждается в калибровке. См. раздел IAMExtDevice::Calibrate. |
ED_DEVCAP_TIMECODE_READ | Устройство может считывать код времени SMPTE. |
ED_DEVCAP_TIMECODE_WRITE | Устройство может задать код времени SMPTE. |
ED_DEVCAP_USES_FILES | Устройство имеет встроенную файловую систему. |
ED_DEVCAP_VIDEO_INPUTS | Устройство принимает видеовход. |
Для следующих флагов метод возвращает определенную константу в параметре pValue .
ED_DEVCAP_DEVICE_TYPE: возвращает тип устройства.
Возвращенная константная | Описание |
---|---|
ED_DEVTYPE_ATR | Аудиомагнитофон |
ED_DEVTYPE_CG | Генератор символов |
ED_DEVTYPE_DDR | Средство записи цифрового диска |
ED_DEVTYPE_DVE | Урок цифровых видеоэффектов |
ED_DEVTYPE_GPI | Триггер интерфейса общего назначения |
ED_DEVTYPE_KEYER | Видеоключ |
ED_DEVTYPE_LASERDISK | Laserdisc |
ED_DEVTYPE_MIXER_AUDIO | Аудиомикшер |
ED_DEVTYPE_MIXER_VIDEO | Видеомикшер |
ED_DEVTYPE_ROUTER | Видео маршрутизатор |
ED_DEVTYPE_TBC | Корректор базы времени |
ED_DEVTYPE_TCG | Генератор и читатель временных кодов |
ED_DEVTYPE_VCR | VCR или видеокамера с полными возможностями VCR |
ED_DEVTYPE_WIPEGEN | Генератор очистки видео |
ED_DEVTYPE_JOYSTICK | Джойстик |
ED_DEVTYPE_KEYBOARD | Клавиатура |
ED_DEVCAP_SYNC_ACCURACY: возвращает значение точности синхронизации устройства.
Возвращенная константная | Описание |
---|---|
ED_SYNCACC_PRECISE | Устройство имеет точную точность. |
ED_SYNCACC_FRAME | Устройство является точным кадром. |
ED_SYNCACC_ROUGH | Устройство меньше точного кадра. |
ED_DEVCAP_NORMAL_RATE: возвращает обычную частоту кадров устройства.
Возвращаемая константная | Описание |
---|---|
ED_RATE_24 | 24 кадра в секунду (кадров/с) |
ED_RATE_25 | 25 кадров/с |
ED_RATE_2997 | 29,97 кадров/с |
ED_RATE_30 | 30 кадров/с |
ED_DEVCAP_SEEK_TYPE. Возвращает значение, указывающее точность поиска устройства.
Возвращаемая константная | Описание |
---|---|
ED_SEEK_PERFECT | Устройство может искать в пределах одного видеокадра без разрыва сигнала. |
ED_SEEK_FAST | Устройство может искать быстро, с коротким перерывом в сигнале. |
ED_SEEK_SLOW | Устройство ищется медленно; например, ленточный транспорт. |
Для следующих флагов метод возвращает числовое значение в параметре pValue .
Флаг возможности | Возвращаемое значение |
ED_DEVCAP_EXTERNAL_DEVICE_ID | Идентификатор производителя. |
ED_DEVCAP_PREROLL | Время предварительной подготовки устройства. |
ED_DEVCAP_POSTROLL | Время после отправки устройства. |
В Windows XP с пакетом обновления 2 (SP2) и более поздних версиях для ED_DEVCAP_DEVICE_TYPE поддерживаются следующие дополнительные флаги.
Возвращаемая константная | Описание |
---|---|
ED_DEVTYPE_CAMERA_STORAGE | Хранение неподвижных изображений или коротких видеофайлов. |
ED_DEVTYPE_DTV | Цифровое телевидение с последовательным интерфейсом шины. |
ED_DEVTYPE_PC_VIRTUAL | Виртуальное или эмулированное устройство на компьютере. |
Чтобы использовать эти константы, добавьте файл заголовка Xprtdefs.h.
Реализация DV
Драйверы MSDV и UVC поддерживают следующее поведение.Флаг ED_DEVCAP_NORMAL_RATE возвращает частоту кадров.
Возвращаемая константная | Описание |
---|---|
ED_RATE_25 | 25 кадров/с (частота кадров PAL по умолчанию) |
ED_RATE_2997 | 29,997 кадров/с (частота кадров NTSC по умолчанию) |
Только для MSDV флаг ED_DEVCAP_DEVICE_TYPE возвращает тип устройства. Возможные значения перечислены в следующей таблице. Для устройств UVC используйте интерфейс IKsTopologyInfo .
Возвращаемая константная | Описание |
---|---|
ED_DEVTYPE_CAMERA | Простая камера, которая может записывать или приостанавливать запись, но не имеет полных возможностей VCR. |
ED_DEVTYPE_DVHS | Устройство поддерживает формат D-VHS. |
ED_DEVTYPE_UNKNOWN | Неизвестный тип устройства. |
ED_DEVTYPE_VCR | Устройство имеет полные возможности VCR. |
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | strmif.h (включая Dshow.h) |
Библиотека | Strmiids.lib |