Поделиться через


Различия между UVC 1.0 и UVC 1.1

При проектировании оборудования, совместимого с UVC, для работы с Windows 7 или более ранней версией Windows необходимо выбрать между поддержкой UVC 1.0 и 1.1.

Устройство, соответствующее UVC 1.1, должно задать для флага bcdUVC в интерфейсе Class-Specific VC значение 0x110. Кроме того, если существует необязательный дескриптор единицы обработки, устройство, совместимое с 1.1, должно выполнять следующие действия:

  1. Добавьте поле bmVideoStandards в дескриптор единицы обработки.

  2. Обновите поле bLength в единице обработки.

  3. Обновите wTotalLength , чтобы отразить больший размер единицы обработки.

В следующей таблице перечислены различия между UVC 1.0 и 1.1.

Состояние Дескриптор, запрос или элемент управления Поле Комментарии

Изменить

интерфейс Class-Specific VC

bcdUVC

0x110 для версии 1.1, 0x100 для 1.0

устарело

интерфейс Class-Specific VC

dwClockFrequency

Неиспользуется для версии 1.1

Изменить

Единица обработки

bLength

10+n для 1.1, 9+n для 1.0

new

Единица обработки

bmVideoStandards

Изменить

Class-Specific входной заголовок интерфейса VS

bmaControls(n)

1.1 использует некоторые из этих битов по-разному в разделе "Проба и фиксация"

Изменить

Class-Specific выходной заголовок интерфейса VS

bLength

9+(p*n) для версии 1.1, 8 для 1.0

new

Class-Specific выходной заголовок интерфейса VS

bControlSize

new

Class-Specific выходной заголовок интерфейса VS

bmaControls(n)

устарело

Элемент управления интерфейсом

VC_REQUEST_INDICATE_HOST_CLOCK_CONTROL

Обязательно для устройств версии 1.0, поддерживающих полезные данные узла на устройство, которые используют SCR/PTS

new

Элемент управления интерфейсом

GET_INFO

new

Единица обработки

PU_DIGITAL_MULTIPLIER_CONTROL

new

Единица обработки

PU_ANALOG_VIDEO_STANDARD_CONTROL

new

Единица обработки

PU_ANALOG_LOCK_STATUS_CONTROL

Изменить

Управление видео пробой и фиксацией

wLength

34 для 1.1, 26 для 1.0

new

Управление видео пробой и фиксацией

dwClockFrequency

new

Управление видео пробой и фиксацией

bmFramingInfo

new

Управление видео пробой и фиксацией

bPreferredVersion

new

Управление видео пробой и фиксацией

bMinVersion

new

Управление видео пробой и фиксацией

bMaxVersion

new

Управление видео пробой и фиксацией

GET_INFO для VS_PROBE_CONTROL

new

Управление видео пробой и фиксацией

GET_INFO для VS_COMMIT_CONTROL

устарело

интерфейс VS Class-Specific

VS_FORMAT_MPEG1

Не поддерживается операционной системой Windows

устарело

интерфейс VS Class-Specific

VS_FORMAT_MPEG2PS

Не поддерживается операционной системой Windows

устарело

интерфейс VS Class-Specific

VS_FORMAT_MPEG4SL

Не поддерживается операционной системой Windows

устарело

интерфейс VS Class-Specific

VS_FORMAT_VENDOR

Не поддерживается операционной системой Windows

устарело

интерфейс VS Class-Specific

VS_FRAME_VENDOR

new

интерфейс VS Class-Specific

VS_FORMAT_FRAME_BASED

new

интерфейс VS Class-Specific

VS_FRAME_FRAME_BASED

new

интерфейс VS Class-Specific

VS_FORMAT_STREAM_BASED

Для устройств UVC 1.0 длина дескриптора формата MPEG2TS равна 7. Так как UVC 1.1 содержит новое поле GUID длиной 16 байт, длина дескриптора формата MPEG2TS составляет 23.

Соответственно, при обновлении дескриптора MPEG2TS до 23 байт необходимо также задать для флага bcdUVC в интерфейсе Class-Specific VC значение 0x110.