The USB Video Class (UVC) Gadget Library or libGuvc for short is a platform agnostic library that simplifies the development
The USB Video Class (UVC) Gadget Library or libGuvc for short is a platform agnostic library that simplifies the development of UVC based gadget devices by encapsulating most of the UVC communication leaving just the basic setup to the user. It runs on top of the standard UVC driver in the Linux kernel and exposes a friendly interface for the userspace application, taking care of the communication between the user application and the Linux driver stack.
The libGuvc library can be integrated on any embedded device and it is independent of the SoC architecture and kernel version. It only requires a UVC gadget driver to be enabled in the platform to make it act as a webcam.
Among its features, it provides:
YUY2, MJPEG and H264 support
Extension Units support
Isochronous and bulk endpoint support
User pointer and MMAP support
USB Video Class Gadget Library - libGuvc