UVC sta per USB Video Class. Definisce un modo standardizzato per i dispositivi video USB di comunicare con un host. Una fotocamera compatibile UVC può spesso essere riconosciuta dai sistemi operativi che includono già un driver di classe, motivo per cui UVC è comune nelle webcam e nei moduli fotocamera USB embedded.
Per gli sviluppatori di prodotti, il vantaggio principale è la velocità di integrazione. Invece di creare un driver video USB completamente personalizzato, l'applicazione può spesso accedere alla fotocamera tramite il framework video esistente del sistema operativo. Questo è utile per prototipi, chioschi, PC industriali e dispositivi Linux o Windows embedded dove la valutazione rapida è importante.
UVC non indica il sensore della fotocamera, l'obiettivo, il FOV, la qualità dell'immagine, le risoluzioni supportate o i frame rate. Inoltre, non garantisce che ogni controllo opzionale sia implementato nello stesso modo. Due fotocamere UVC possono esporre formati, controlli di esposizione, funzioni di autofocus o unità di estensione diversi.
Quindi 'compatibile UVC' risponde alla domanda sul driver di classe, non alla domanda sulla compatibilità completa.
Un modulo UVC può emettere MJPEG, YUY2 o altri formati. Questi creano diversi requisiti di larghezza di banda e di elaborazione. Ad esempio, un frame rate 4K apparentemente elevato potrebbe essere disponibile solo in MJPEG, mentre YUY2 non compresso è limitato a una risoluzione o frame rate inferiori.
Quando si legge una specifica, associare sempre la risoluzione al frame rate e al formato.
La maggior parte dei sistemi operativi desktop mainstream supporta UVC, ma gli host embedded possono ancora differire per versione del kernel, comportamento del controller USB, larghezza di banda disponibile e framework applicativo. Una fotocamera può enumerare correttamente ma non riuscire a fornire la modalità desiderata perché l'host non può sostenerla.
Testare la scheda di destinazione esatta e il sistema operativo, specialmente per progetti ad alta risoluzione o multi-fotocamera.
I controlli UVC standard possono includere luminosità, contrasto, esposizione o messa a fuoco, a seconda della fotocamera. Funzioni più specializzate, come trigger esterni, impostazioni ISP proprietarie o registri del sensore, potrebbero richiedere controlli specifici del fornitore. Questi non sono automaticamente disponibili semplicemente perché il dispositivo è UVC.
Controllare cinque elementi: versione dell'interfaccia, risoluzioni supportate, frame rate, formati video e controlli disponibili. Verificare quindi il sistema operativo host, la lunghezza del cavo e se altri dispositivi USB condividono lo stesso controller. Questo offre una visione realistica dello sforzo di integrazione.
Un laptop Windows potrebbe riconoscere immediatamente una fotocamera UVC, mentre una scheda Linux embedded potrebbe enumerare lo stesso dispositivo ma non riuscire a fornire la modalità 4K richiesta a causa di limitazioni del kernel, del controller USB o del decoder. La fotocamera è ancora UVC in entrambi i casi. Questo è un utile promemoria che il supporto del driver di classe e le prestazioni a livello applicativo sono due livelli separati.
Per la convalida OEM, testare la scoperta della fotocamera, la negoziazione della modalità, la riconnessione e il framework di acquisizione esatto che l'applicazione finale utilizzerà.
UVC standardizza il comportamento importante dei dispositivi video, ma i fornitori possono esporre controlli e unità di estensione diversi. Trigger esterni, tuning ISP proprietario o modalità sensore insolite potrebbero trovarsi al di fuori dei controlli standard. Quando un progetto dipende da una funzione speciale, chiedere come l'host vi accede invece di presumere che UVC la copra.
Di solito riduce il lavoro sui driver, ma il sistema operativo host esatto, il controller USB, la modalità video e i controlli opzionali devono ancora essere convalidati.
No. UVC è una classe di dispositivi; USB2.0 e USB3.x descrivono l'interfaccia di trasporto e la larghezza di banda.
Sì, se il modulo include hardware di autofocus ed espone i controlli pertinenti. UVC di per sé non richiede l'autofocus.