Understanding standard USB drivers for linux webcam

I am trying to understand the layers of software that interact with USB webcams.

As far as I understand:

A standard webcam fits into the category of 'USB Video Device Class' or 'UVC' .

And in linux Video4Linux (V4L, V4L2) encapsulates all video capture devices. V4L (2) provides two APIs: one for programs that want to receive and use data from capture devices. Another API is internal for the drivers themselves, so programs can be accessed through the external V4L API (2).

One of these V4L (2) drivers is the UVC driver , which covers all USB-compatible webcams.

My question is:

By looking at this UVC driver page , it displays a list of supported devices. Are each of these devices individually serviced in the UVC driver? Or only if the device had a feature that needed to be dealt with? In other words, should all standards-compliant webcams automatically work with the UVC driver, regardless of whether they are on this list?

thank

+5
source share
2 answers

I believe that the text under the heading “Supported devices” answers your question:

The table below lists known UVC devices. Other UVC-compatible video input devices are likely to be supported.

, , . ( "USB--" ) , , , , .

+3

USB Video Class , , . , UVC.

-, UVC, .

- Linux, "dmesg" 1. UVC 2. .

-.

+2

All Articles