Différences entre UVC 1.0 et UVC 1.1

Lorsque vous concevez un matériel compatible UVC pour fonctionner avec Windows 7 ou une version antérieure de Windows, vous devez choisir entre prendre en charge UVC 1.0 et 1.1.

Un appareil conforme à UVC 1.1 doit définir l’indicateur bcdUVC dans l’interface VC Class-Specific sur 0x110. En outre, si le descripteur d’unité de traitement facultatif existe, un appareil compatible 1.1 doit effectuer les opérations suivantes :

  1. Ajoutez un champ bmVideoStandards au descripteur d’unité de traitement.

  2. Mettez à jour le champ bLength dans l’unité de traitement.

  3. Mettez à jour wTotalLength pour refléter la plus grande taille pu de l’unité de traitement.

Le tableau suivant récapitule les différences entre UVC 1.0 et 1.1.

Statut Descripteur/requête/contrôle Champ Commentaires

Modifier

interface VC Class-Specific

bcdUVC

0x110 pour la version 1.1, 0x100 pour la version 1.0

obsolète

interface VC Class-Specific

dwClockFrequency

Inutilisé pour la version 1.1

Modifier

Unité de traitement

bLength

10+n pour 1.1, 9+n pour 1.0

new

Unité de traitement

bmVideoStandards

Modifier

Class-Specific en-tête d’entrée d’interface VS

bmaControls(n)

1.1 utilise certains de ces bits différemment dans « Probe and Commit »

Modifier

Class-Specific en-tête de sortie de l’interface VS

bLength

9+(p*n) pour 1.1, 8 pour 1.0

new

Class-Specific en-tête de sortie de l’interface VS

bControlSize

new

Class-Specific en-tête de sortie de l’interface VS

bmaControls(n)

obsolète

Contrôle d’interface

VC_REQUEST_INDICATE_HOST_CLOCK_CONTROL

Obligatoire pour les appareils 1.0 prenant en charge les charges utiles d’hôte à appareil qui utilisent SCR/PTS

new

Contrôle d’interface

GET_INFO

new

Unité de traitement

PU_DIGITAL_MULTIPLIER_CONTROL

new

Unité de traitement

PU_ANALOG_VIDEO_STANDARD_CONTROL

new

Unité de traitement

PU_ANALOG_LOCK_STATUS_CONTROL

Modifier

Contrôle de validation et de sonde vidéo

wLength

34 pour 1.1, 26 pour 1.0

new

Contrôle de validation et de sonde vidéo

dwClockFrequency

new

Contrôle de validation et de sonde vidéo

bmFramingInfo

new

Contrôle de validation et de sonde vidéo

bPreferredVersion

new

Contrôle de validation et de sonde vidéo

bMinVersion

new

Contrôle de validation et de sonde vidéo

bMaxVersion

new

Contrôle de validation et de sonde vidéo

GET_INFO pour VS_PROBE_CONTROL

new

Contrôle de validation et de sonde vidéo

GET_INFO pour VS_COMMIT_CONTROL

obsolète

Class-Specific VS Interface

VS_FORMAT_MPEG1

Non pris en charge par un système d’exploitation Windows

obsolète

Class-Specific VS Interface

VS_FORMAT_MPEG2PS

Non pris en charge par un système d’exploitation Windows

obsolète

Class-Specific VS Interface

VS_FORMAT_MPEG4SL

Non pris en charge par un système d’exploitation Windows

obsolète

Class-Specific VS Interface

VS_FORMAT_VENDOR

Non pris en charge par aucun système d’exploitation Windows

obsolète

Class-Specific VS Interface

VS_FRAME_VENDOR

new

Class-Specific VS Interface

VS_FORMAT_FRAME_BASED

new

Class-Specific VS Interface

VS_FRAME_FRAME_BASED

new

Class-Specific VS Interface

VS_FORMAT_STREAM_BASED

Pour les appareils UVC 1.0, la longueur du descripteur de format MPEG2TS est de 7. Étant donné que UVC 1.1 inclut un nouveau champ GUID de 16 octets, la longueur du descripteur de format MPEG2TS est de 23.

Par conséquent, si vous mettez à jour le descripteur MPEG2TS sur 23 octets, vous devez également définir l’indicateur bcdUVC dans l’interface Class-Specific VC sur 0x110.