UVC signifie Classe vidéo USB. Il définit une manière standardisée pour les périphériques vidéo USB de communiquer avec un hôte. Une caméra compatible UVC peut souvent être reconnue par les systèmes d'exploitation qui incluent déjà un pilote de classe, c'est pourquoi UVC est courant dans les webcams et les modules de caméra USB intégrés.
Pour les développeurs de produits, le principal avantage est la vitesse d’intégration. Au lieu de créer un pilote vidéo USB entièrement personnalisé, l'application peut souvent accéder à la caméra via le cadre vidéo existant du système d'exploitation. Ceci est utile pour les prototypes, les kiosques, les PC industriels et les appareils Linux ou Windows embarqués pour lesquels une évaluation rapide est importante.
UVC ne vous indique pas le capteur, l'objectif, le champ de vision, la qualité de l'image, les résolutions prises en charge ou les fréquences d'images de la caméra. Cela ne garantit pas non plus que tous les contrôles facultatifs soient mis en œuvre de la même manière. Deux caméras UVC peuvent exposer différents formats, contrôles d'exposition, fonctions de mise au point automatique ou unités d'extension.
Ainsi, « compatible UVC » répond à la question de la classe de pilote, pas à la question de compatibilité complète.
Un module UVC peut produire des formats MJPEG, YUY2 ou autres. Ceux-ci créent des exigences différentes en matière de bande passante et de traitement. Par exemple, une fréquence d'images 4K apparemment élevée peut être disponible uniquement en MJPEG, tandis que YUY2 non compressé est limité à une résolution ou une fréquence d'images inférieure.
Lorsque vous lisez une spécification, associez toujours la résolution à la fréquence d’images et au format.
La plupart des systèmes d'exploitation de bureau grand public prennent en charge UVC, mais les hôtes intégrés peuvent toujours différer en termes de version du noyau, de comportement du contrôleur USB, de bande passante disponible et de cadre d'application. Une caméra peut énumérer correctement mais ne pas parvenir au mode souhaité car l'hôte ne peut pas le maintenir.
Testez la carte cible et le système d'exploitation exacts, en particulier pour les conceptions haute résolution ou multi-caméras.
Les contrôles UVC standard peuvent inclure la luminosité, le contraste, l'exposition ou la mise au point, selon la caméra. Des fonctions plus spécialisées (déclencheur externe, paramètres FAI propriétaires ou registres de capteurs) peuvent nécessiter des contrôles spécifiques au fournisseur. Ceux-ci ne sont pas automatiquement disponibles simplement parce que l’appareil est UVC.
Vérifiez cinq éléments : version de l'interface, résolutions prises en charge, fréquences d'images, formats vidéo et commandes disponibles. Vérifiez ensuite le système d'exploitation hôte, la longueur du câble et si d'autres périphériques USB partagent le même contrôleur. Cela donne une vision réaliste de l’effort d’intégration.
Un ordinateur portable Windows peut reconnaître immédiatement une caméra UVC, tandis qu'une carte Linux intégrée peut énumérer le même périphérique mais ne pas parvenir à fournir le mode 4K demandé en raison des limitations du noyau, du contrôleur USB ou du décodeur. La caméra est toujours UVC dans les deux cas. Il s'agit d'un rappel utile que la prise en charge des pilotes de classe et les performances au niveau des applications sont deux couches distinctes.
Pour la validation OEM, la découverte de la caméra de test, la négociation de mode, la reconnexion et le cadre de capture exact que l'application finale utilisera.
UVC normalise le comportement important des appareils vidéo, mais les fournisseurs peuvent exposer différents contrôles et unités d'extension. Un déclencheur externe, un réglage propriétaire du FAI ou des modes de capteur inhabituels peuvent échapper aux contrôles standard. Lorsqu'un projet dépend d'une fonction spéciale, demandez comment l'hôte y accède au lieu de supposer qu'UVC la couvre.
Cela réduit généralement le travail du pilote, mais le système d'exploitation hôte exact, le contrôleur USB, le mode vidéo et les commandes optionnelles doivent encore être validés.
Non. UVC est une classe d’appareil ; USB2.0 et USB3.x décrivent l'interface de transport et la bande passante.
Oui, si le module comprend du matériel de mise au point automatique et expose les commandes pertinentes. UVC lui-même ne nécessite pas de mise au point automatique.