libGuvc – USB Video Class Gadget Library for Embedded Linux
libGuvc is RidgeRun’s USB Video Class (UVC) Gadget Library that abstracts the complexity of building USB-compliant virtual camera devices on embedded Linux systems. This platform-agnostic library allows developers to transform embedded devices into USB webcams, supporting UVC video streaming with formats like YUY2, MJPEG, and H.264—all with minimal integration effort.
Instead of managing low-level UVC protocol details, you focus on your application, while libGuvc handles UVC communication, stream negotiation, video buffer management, and driver stack interfacing.
Key Features:
-
Supports Popular Video Formats
Stream in YUY2, MJPEG, and H.264 for compatibility with a wide range of host systems and software. -
Extension Unit Support
Easily add custom controls and functionality via UVC Extension Units. -
Flexible Transport Options
Works with bulk and isochronous USB endpoints, providing adaptability for different USB hardware. -
Efficient Buffer Handling
Supports User Pointer and MMAP buffer types for optimized memory handling. -
Cross-Platform Integration
Use with any embedded Linux device that has a UVC Gadget driver enabled—no kernel changes needed.
Example Use Case:
An industrial camera solution based on NXP i.MX8 needs to stream processed video over USB to a host PC running standard video software. With libGuvc, the development team sets up the embedded board to appear as a UVC-compliant webcam, transmitting MJPEG video and exposing extension unit controls to adjust focus and zoom—all without writing UVC protocol logic from scratch.
What’s Included:
-
RidgeRun’s libGuvc source or binary package
-
C API documentation and integration guide
-
Sample applications for streaming and control setup
-
Optional 11-hour Embedded Software Support package
Supported Platforms:
-
Any Linux-based embedded system with UVC Gadget support
-
Tested on:
-
NXP i.MX6 / i.MX8
-
NVIDIA Jetson (Nano, Xavier NX, Orin)
-
Texas Instruments
-
Why RidgeRun?
With over 19 years of embedded software experience, RidgeRun provides developers with powerful, ready-to-integrate tools for real-time multimedia, UVC camera devices, and Linux-based product development. libGuvc gets your virtual camera product up and running faster—with reliability and flexibility.
Learn more in the developer wiki
Don't see your platform? Please Contact Us.