USBIP C library 0.7.0
Virtual USB devices & host drivers over USB/IP
Loading...
Searching...
No Matches

USB Video Class (webcam) device class, app API. More...

#include "usb_class.h"

Data Structures

struct  uvc_opts
 UVC configuration: frame geometry, advertised formats, and a frame source. More...
 

Macros

#define UVC_HAS_YUYV
 opts.formats bit: advertise packed YUYV
 
#define UVC_HAS_MJPEG
 opts.formats bit: advertise MJPEG
 

Typedefs

typedef struct uvc_cam uvc_cam
 One UVC camera function: a single instance of the class on a device.
 

Functions

uvc_camuvc_add (usbip_device *dev, const uvc_opts *opts)
 Add a UVC camera interface to a device.
 
void uvc_color_bars_yuyv (uint8_t *buf, int width, int height, uint32_t index)
 Render one frame of the built-in animated color-bar test pattern (packed YUYV).
 

Variables

const usbip_device_class usbip_device_uvc
 The UVC video class, for usbip_device_add_class()
 

Detailed Description

USB Video Class (webcam) device class, app API.

Presents an isochronous UVC camera: a VideoControl + VideoStreaming interface pair (grouped by an IAD) advertising uncompressed (YUY2) and/or MJPEG formats at one resolution. The class runs Probe/Commit negotiation and streams UVC payloads over an isochronous IN endpoint; the app supplies frame pixels (or uses the built-in synthetic color-bar generator). Built on usbip_device.h only.