Функции USBCAMD2
В USBCAMD2 присутствуют следующие функции (исходная библиотека мини-драйверов USBCAMD не поддерживает эти функции):
Автоматическое завершение SDB
USBCAMD2 может автоматически заполнять srb. Для работы с исходными устройствами USBCAMD требовались мини-накопители камеры. Чтобы указать, что USBCAMD2 автоматически завершает SSP, передайте true в параметр NeedsCompletion при вызове USBCAMD_AdapterReceivePacket.
Поддержка событий Hardware-Triggered через канал прерывания
Мини-накопители камеры USBCAMD2 могут зарегистрировать событие внешнего триггера, которое передается через канал прерывания. Прерывание может обрабатываться usbCAMD2. Например, канал прерывания может сигнализировать о мини-накопителе камеры при нажатии кнопки snapshot. Монитор событий архитектуры Still Image (STI) может быть уведомлен о событии устройства. Нажав кнопку snapshot, монитор STI будет уведомлен, а ранее зарегистрированное приложение STI, связанное с неподвижным закреплением на камере, можно запустить с помощью модели push-уведомлений STI. Чтобы настроить USBCAMD2 для отправки события внешнего триггера, передайте флаг USBCAMD_CamControlFlag_EnableDeviceEvents в параметре CamControlFlag при вызове USBCAMD_InitializeNewInterface.
Универсальная поддержка USB-Pipe-Configuration
USBCAMD2 поддерживает камеры, использующие массовые или изохронные трубы для передачи видео и изображений. USBCAMD2 запрашивает мини-диск и динамически создает сведения о конфигурации канала во время инициализации. Исходная библиотека USBCAMD предполагала предустановленные сведения о конфигурации канала о количестве или типе используемых каналов. Конфигурация канала указывается в массиве USBCAMD_Pipe_Config_Descriptor , передаваемом в CamConfigureEx.
Поддержка фиксации и фиксации контактов
USBCAMD2 может предоставлять неподвижный контакт классуstream.sys в дополнение к контакту захвата, который предоставил исходный USBCAMD. Неподвижный контакт может быть открыт для устройств с изображениями, которые имеют выделенные каналы для неподвижных контактов или используют один и тот же канал для мультиплекса как для неподвижных, так и для видео контактов. Для предоставления закрепления необходимо указать канал, содержащий данные неподвижного изображения в массиве USBCAMD_Pipe_Config_Descriptor перед передачей массива в CamConfigureEx.
Улучшенная поддержка Plug and Play и управления питанием
USBCAMD2 обеспечивает поддержку Plug and Play в Windows 2000 и более поздних версиях, например неожиданное удаление устройства. USBCAMD2 также поддерживает гибернацию системы в Windows XP и более поздних версиях (поддержка гибернации отсутствует в Windows 98 без установленных пакетов обновления, Windows 98 SE или Windows 2000) и Windows Millennium Edition и более поздних версий.