UVC steht für USB Video Class. Es definiert eine standardisierte Methode für USB-Videogeräte zur Kommunikation mit einem Host. Eine UVC-kompatible Kamera kann oft von Betriebssystemen erkannt werden, die bereits einen Klassentreiber enthalten. Deshalb ist UVC bei Webcams und eingebetteten USB-Kameramodulen weit verbreitet.
Für Produktentwickler liegt der Hauptvorteil in der Integrationsgeschwindigkeit. Anstatt einen komplett benutzerdefinierten USB-Videotreiber zu erstellen, kann die Anwendung oft über das vorhandene Videoframework des Betriebssystems auf die Kamera zugreifen. Dies ist nützlich für Prototypen, Kioske, Industrie-PCs und eingebettete Linux- oder Windows-Geräte, bei denen eine schnelle Evaluierung wichtig ist.
UVC gibt keine Auskunft über den Sensor, das Objektiv, das Sichtfeld (FOV), die Bildqualität, die unterstützten Auflösungen oder Bildraten der Kamera. Es garantiert auch nicht, dass jede optionale Steuerung auf die gleiche Weise implementiert ist. Zwei UVC-Kameras können unterschiedliche Formate, Belichtungssteuerungen, Autofokusfunktionen oder Erweiterungseinheiten aufweisen.
Daher beantwortet 'UVC-kompatibel' die Frage nach dem Klassentreiber, nicht die Frage nach der vollständigen Kompatibilität.
Ein UVC-Modul kann MJPEG, YUY2 oder andere Formate ausgeben. Diese erzeugen unterschiedliche Bandbreiten- und Verarbeitungsanforderungen. Beispielsweise kann eine scheinbar hohe 4K-Bildrate nur in MJPEG verfügbar sein, während unkomprimiertes YUY2 auf eine niedrigere Auflösung oder Bildrate beschränkt ist.
Beim Lesen einer Spezifikation sollten Auflösung, Bildrate und Format immer zusammen betrachtet werden.
Die meisten gängigen Desktop-Betriebssysteme unterstützen UVC, aber eingebettete Hosts können sich in Bezug auf Kernel-Version, Verhalten des USB-Controllers, verfügbare Bandbreite und Anwendungsframework immer noch unterscheiden. Eine Kamera kann korrekt erkannt werden, aber den gewünschten Modus nicht liefern, weil der Host ihn nicht aufrechterhalten kann.
Testen Sie das exakte Zielboard und Betriebssystem, insbesondere für hochauflösende oder Multi-Kamera-Designs.
Standard-UVC-Steuerungen können je nach Kamera Helligkeit, Kontrast, Belichtung oder Fokus umfassen. Spezialisiertere Funktionen – externe Trigger, proprietäre ISP-Einstellungen oder Sensorregister – erfordern möglicherweise herstellerspezifische Steuerungen. Diese sind nicht automatisch verfügbar, nur weil das Gerät UVC ist.
Prüfen Sie fünf Punkte: Schnittstellenversion, unterstützte Auflösungen, Bildraten, Videoformate und verfügbare Steuerungen. Verifizieren Sie dann das Host-Betriebssystem, die Kabellänge und ob andere USB-Geräte denselben Controller teilen. Dies gibt einen realistischen Überblick über den Integrationsaufwand.
Ein Windows-Laptop erkennt möglicherweise sofort eine UVC-Kamera, während ein eingebettetes Linux-Board dasselbe Gerät erkennt, aber den angeforderten 4K-Modus aufgrund von Kernel-, USB-Controller- oder Decoder-Beschränkungen nicht liefern kann. Die Kamera ist in beiden Fällen immer noch UVC. Dies ist eine nützliche Erinnerung daran, dass die Unterstützung durch den Klassentreiber und die Leistung auf Anwendungsebene zwei getrennte Schichten sind.
Für die OEM-Validierung testen Sie die Kameraerkennung, die Modusverhandlung, das Wiederverbinden und das exakte Erfassungsframework, das die endgültige Anwendung verwenden wird.
UVC standardisiert das wichtige Verhalten von Videogeräten, aber Hersteller können unterschiedliche Steuerungen und Erweiterungseinheiten bereitstellen. Externe Trigger, proprietäre ISP-Abstimmungen oder ungewöhnliche Sensormodi können außerhalb der Standardsteuerungen liegen. Wenn ein Projekt von einer speziellen Funktion abhängt, fragen Sie, wie der Host darauf zugreift, anstatt anzunehmen, dass UVC dies abdeckt.
Es reduziert normalerweise den Treiberaufwand, aber das exakte Host-Betriebssystem, der USB-Controller, der Videomodus und optionale Steuerungen müssen immer noch validiert werden.
Nein. UVC ist eine Geräteklasse; USB2.0 und USB3.x beschreiben die Transport-Schnittstelle und die Bandbreite.
Ja, wenn das Modul Autofokus-Hardware enthält und die entsprechenden Steuerungen bereitstellt. UVC selbst erfordert keinen Autofokus.