Intel® RealSense™ Cross Platform API
Intel Realsense Cross-platform API
libuvc.h
Go to the documentation of this file.
1 #ifndef LIBUVC_H
2 #define LIBUVC_H
3 
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7 
8 #include <stdio.h> // FILE
9 #include <errno.h>
10 #include <libusb.h>
11 #include <sys/time.h> // timeval
12 #include "libuvc_config.h"
13 
17 typedef enum uvc_error {
52 } uvc_error_t;
53 
70 };
71 
72 struct uvc_format_desc;
73 struct uvc_frame_desc;
74 
81 typedef struct uvc_frame_desc {
87  uint8_t bFrameIndex;
88  uint8_t bmCapabilities;
90  uint16_t wWidth;
92  uint16_t wHeight;
94  uint32_t dwMinBitRate;
96  uint32_t dwMaxBitRate;
110  uint32_t dwBytesPerLine;
112  uint32_t *intervals;
114 
120 typedef struct uvc_format_desc {
121  struct uvc_streaming_interface *parent;
126  uint8_t bFormatIndex;
129  union {
130  uint8_t guidFormat[16];
131  uint8_t fourccFormat[4];
132  };
134  union {
136  uint8_t bBitsPerPixel;
138  uint8_t bmFlags;
139  };
142  uint8_t bAspectRatioX;
143  uint8_t bAspectRatioY;
145  uint8_t bCopyProtect;
146  uint8_t bVariableSize;
150 
154  UVC_SET_CUR = 0x01,
155  UVC_GET_CUR = 0x81,
156  UVC_GET_MIN = 0x82,
157  UVC_GET_MAX = 0x83,
158  UVC_GET_RES = 0x84,
159  UVC_GET_LEN = 0x85,
160  UVC_GET_INFO = 0x86,
161  UVC_GET_DEF = 0x87
162 };
163 
167 };
168 
192 };
193 
216 };
217 
222 };
223 
227  UVC_ITT_CAMERA = 0x0201,
229 };
230 
234  UVC_OTT_DISPLAY = 0x0301,
236 };
237 
244 };
245 
252 struct uvc_context;
253 typedef struct uvc_context uvc_context_t;
254 
259 struct uvc_device;
260 typedef struct uvc_device uvc_device_t;
261 
267 struct uvc_device_handle;
268 typedef struct uvc_device_handle uvc_device_handle_t;
269 
275 struct uvc_stream_handle;
276 typedef struct uvc_stream_handle uvc_stream_handle_t;
277 
279 typedef struct uvc_input_terminal {
282  uint8_t bTerminalID;
289  uint64_t bmControls;
291 
292 typedef struct uvc_output_terminal {
296 
298 typedef struct uvc_processing_unit {
301  uint8_t bUnitID;
303  uint8_t bSourceID;
305  uint64_t bmControls;
307 
309 typedef struct uvc_extension_unit {
312  uint8_t bUnitID;
314  uint8_t guidExtensionCode[16];
316  uint64_t bmControls;
318 
323 };
324 
330 };
331 
335 typedef void(uvc_status_callback_t)(enum uvc_status_class status_class,
336  int event,
337  int selector,
338  enum uvc_status_attribute status_attribute,
339  void *data, size_t data_len,
340  void *user_ptr);
341 
346 typedef struct uvc_device_descriptor {
348  uint16_t idVendor;
350  uint16_t idProduct;
352  uint16_t bcdUVC;
354  const char *serialNumber;
356  const char *manufacturer;
358  const char *product;
360 
364 typedef struct uvc_frame {
366  void *data;
368  size_t data_bytes;
370  uint32_t width;
372  uint32_t height;
374  uint32_t fourcc;
376  size_t step;
378  uint32_t sequence;
380  struct timeval capture_time;
391 } uvc_frame_t;
392 
396 typedef void(uvc_frame_callback_t)(struct uvc_frame *frame, void *user_ptr);
397 
401 typedef struct uvc_stream_ctrl {
402  uint16_t bmHint;
403  uint8_t bFormatIndex;
404  uint8_t bFrameIndex;
405  uint32_t dwFrameInterval;
406  uint16_t wKeyFrameRate;
407  uint16_t wPFrameRate;
408  uint16_t wCompQuality;
409  uint16_t wCompWindowSize;
410  uint16_t wDelay;
414  uint8_t bmFramingInfo;
416  uint8_t bMinVersion;
417  uint8_t bMaxVersion;
421 
422 uvc_error_t uvc_init(uvc_context_t **ctx, struct libusb_context *usb_ctx);
423 void uvc_exit(uvc_context_t *ctx);
424 
426  uvc_context_t *ctx,
427  uvc_device_t ***list);
428 void uvc_free_device_list(uvc_device_t **list, uint8_t unref_devices);
429 
431  uvc_device_t *dev,
432  uvc_device_descriptor_t **desc);
435 
436 uint8_t uvc_get_bus_number(uvc_device_t *dev);
438 
440  uvc_context_t *ctx,
441  uvc_device_t **dev,
442  int vid, int pid, const char *sn);
443 
445  uvc_device_t *dev,
446  uvc_device_handle_t **devh);
447 
449  uvc_device_t *dev,
450  uvc_device_handle_t **devh,
451  int camera_number);
452 
453 void uvc_close(uvc_device_handle_t *devh);
454 
456 libusb_device_handle *uvc_get_libusb_handle(uvc_device_handle_t *devh);
457 
458 void uvc_ref_device(uvc_device_t *dev);
459 void uvc_unref_device(uvc_device_t *dev);
460 
463  void *user_ptr);
464 
469 
471  uvc_device_handle_t *devh,
472  uvc_stream_ctrl_t *ctrl,
473  uint32_t fourcc,
474  int width, int height,
475  int fps
476  );
477 
479 
481  uvc_device_handle_t *devh,
482  uvc_stream_ctrl_t *ctrl);
483 
485  uvc_device_handle_t *devh,
486  uvc_stream_ctrl_t *ctrl,
488  void *user_ptr,
489  uint8_t flags,
490  int num_transfer_buffers);
491 
493  uvc_device_handle_t *devh,
494  uvc_stream_ctrl_t *ctrl,
496  void *user_ptr);
497 
499 
504  void *user_ptr,
505  uint8_t flags,
506  int num_transfer_buffers);
509  void *user_ptr);
511  uvc_stream_handle_t *strmh,
512  uvc_frame_t **frame,
513  int32_t timeout_us
514 );
517 
518 int uvc_get_ctrl_len(uvc_device_handle_t *devh, uint8_t unit, uint8_t ctrl);
519 int uvc_get_ctrl(uvc_device_handle_t *devh, uint8_t unit, uint8_t ctrl, void *data, int len, enum uvc_req_code req_code);
520 int uvc_set_ctrl(uvc_device_handle_t *devh, uint8_t unit, uint8_t ctrl, void *data, int len);
521 
524 
525 /* AUTO-GENERATED control accessors! Update them with the output of `ctrl-gen.py decl`. */
526 uvc_error_t uvc_get_scanning_mode(uvc_device_handle_t *devh, uint8_t* mode, enum uvc_req_code req_code);
528 
529 uvc_error_t uvc_get_ae_mode(uvc_device_handle_t *devh, uint8_t* mode, enum uvc_req_code req_code);
530 uvc_error_t uvc_set_ae_mode(uvc_device_handle_t *devh, uint8_t mode);
531 
532 uvc_error_t uvc_get_ae_priority(uvc_device_handle_t *devh, uint8_t* priority, enum uvc_req_code req_code);
533 uvc_error_t uvc_set_ae_priority(uvc_device_handle_t *devh, uint8_t priority);
534 
535 uvc_error_t uvc_get_exposure_abs(uvc_device_handle_t *devh, uint32_t* time, enum uvc_req_code req_code);
537 
538 uvc_error_t uvc_get_exposure_rel(uvc_device_handle_t *devh, int8_t* step, enum uvc_req_code req_code);
540 
541 uvc_error_t uvc_get_focus_abs(uvc_device_handle_t *devh, uint16_t* focus, enum uvc_req_code req_code);
542 uvc_error_t uvc_set_focus_abs(uvc_device_handle_t *devh, uint16_t focus);
543 
544 uvc_error_t uvc_get_focus_rel(uvc_device_handle_t *devh, int8_t* focus_rel, uint8_t* speed, enum uvc_req_code req_code);
545 uvc_error_t uvc_set_focus_rel(uvc_device_handle_t *devh, int8_t focus_rel, uint8_t speed);
546 
547 uvc_error_t uvc_get_focus_simple_range(uvc_device_handle_t *devh, uint8_t* focus, enum uvc_req_code req_code);
549 
550 uvc_error_t uvc_get_focus_auto(uvc_device_handle_t *devh, uint8_t* state, enum uvc_req_code req_code);
552 
553 uvc_error_t uvc_get_iris_abs(uvc_device_handle_t *devh, uint16_t* iris, enum uvc_req_code req_code);
554 uvc_error_t uvc_set_iris_abs(uvc_device_handle_t *devh, uint16_t iris);
555 
556 uvc_error_t uvc_get_iris_rel(uvc_device_handle_t *devh, uint8_t* iris_rel, enum uvc_req_code req_code);
557 uvc_error_t uvc_set_iris_rel(uvc_device_handle_t *devh, uint8_t iris_rel);
558 
559 uvc_error_t uvc_get_zoom_abs(uvc_device_handle_t *devh, uint16_t* focal_length, enum uvc_req_code req_code);
560 uvc_error_t uvc_set_zoom_abs(uvc_device_handle_t *devh, uint16_t focal_length);
561 
562 uvc_error_t uvc_get_zoom_rel(uvc_device_handle_t *devh, int8_t* zoom_rel, uint8_t* digital_zoom, uint8_t* speed, enum uvc_req_code req_code);
563 uvc_error_t uvc_set_zoom_rel(uvc_device_handle_t *devh, int8_t zoom_rel, uint8_t digital_zoom, uint8_t speed);
564 
565 uvc_error_t uvc_get_pantilt_abs(uvc_device_handle_t *devh, int32_t* pan, int32_t* tilt, enum uvc_req_code req_code);
566 uvc_error_t uvc_set_pantilt_abs(uvc_device_handle_t *devh, int32_t pan, int32_t tilt);
567 
568 uvc_error_t uvc_get_pantilt_rel(uvc_device_handle_t *devh, int8_t* pan_rel, uint8_t* pan_speed, int8_t* tilt_rel, uint8_t* tilt_speed, enum uvc_req_code req_code);
569 uvc_error_t uvc_set_pantilt_rel(uvc_device_handle_t *devh, int8_t pan_rel, uint8_t pan_speed, int8_t tilt_rel, uint8_t tilt_speed);
570 
571 uvc_error_t uvc_get_roll_abs(uvc_device_handle_t *devh, int16_t* roll, enum uvc_req_code req_code);
573 
574 uvc_error_t uvc_get_roll_rel(uvc_device_handle_t *devh, int8_t* roll_rel, uint8_t* speed, enum uvc_req_code req_code);
575 uvc_error_t uvc_set_roll_rel(uvc_device_handle_t *devh, int8_t roll_rel, uint8_t speed);
576 
577 uvc_error_t uvc_get_privacy(uvc_device_handle_t *devh, uint8_t* privacy, enum uvc_req_code req_code);
578 uvc_error_t uvc_set_privacy(uvc_device_handle_t *devh, uint8_t privacy);
579 
580 uvc_error_t uvc_get_digital_window(uvc_device_handle_t *devh, uint16_t* window_top, uint16_t* window_left, uint16_t* window_bottom, uint16_t* window_right, uint16_t* num_steps, uint16_t* num_steps_units, enum uvc_req_code req_code);
581 uvc_error_t uvc_set_digital_window(uvc_device_handle_t *devh, uint16_t window_top, uint16_t window_left, uint16_t window_bottom, uint16_t window_right, uint16_t num_steps, uint16_t num_steps_units);
582 
583 uvc_error_t uvc_get_digital_roi(uvc_device_handle_t *devh, uint16_t* roi_top, uint16_t* roi_left, uint16_t* roi_bottom, uint16_t* roi_right, uint16_t* auto_controls, enum uvc_req_code req_code);
584 uvc_error_t uvc_set_digital_roi(uvc_device_handle_t *devh, uint16_t roi_top, uint16_t roi_left, uint16_t roi_bottom, uint16_t roi_right, uint16_t auto_controls);
585 
586 uvc_error_t uvc_get_backlight_compensation(uvc_device_handle_t *devh, uint16_t* backlight_compensation, enum uvc_req_code req_code);
587 uvc_error_t uvc_set_backlight_compensation(uvc_device_handle_t *devh, uint16_t backlight_compensation);
588 
589 uvc_error_t uvc_get_brightness(uvc_device_handle_t *devh, int16_t* brightness, enum uvc_req_code req_code);
590 uvc_error_t uvc_set_brightness(uvc_device_handle_t *devh, int16_t brightness);
591 
592 uvc_error_t uvc_get_contrast(uvc_device_handle_t *devh, uint16_t* contrast, enum uvc_req_code req_code);
593 uvc_error_t uvc_set_contrast(uvc_device_handle_t *devh, uint16_t contrast);
594 
595 uvc_error_t uvc_get_contrast_auto(uvc_device_handle_t *devh, uint8_t* contrast_auto, enum uvc_req_code req_code);
596 uvc_error_t uvc_set_contrast_auto(uvc_device_handle_t *devh, uint8_t contrast_auto);
597 
598 uvc_error_t uvc_get_gain(uvc_device_handle_t *devh, uint16_t* gain, enum uvc_req_code req_code);
599 uvc_error_t uvc_set_gain(uvc_device_handle_t *devh, uint16_t gain);
600 
601 uvc_error_t uvc_get_power_line_frequency(uvc_device_handle_t *devh, uint8_t* power_line_frequency, enum uvc_req_code req_code);
602 uvc_error_t uvc_set_power_line_frequency(uvc_device_handle_t *devh, uint8_t power_line_frequency);
603 
604 uvc_error_t uvc_get_hue(uvc_device_handle_t *devh, int16_t* hue, enum uvc_req_code req_code);
605 uvc_error_t uvc_set_hue(uvc_device_handle_t *devh, int16_t hue);
606 
607 uvc_error_t uvc_get_hue_auto(uvc_device_handle_t *devh, uint8_t* hue_auto, enum uvc_req_code req_code);
608 uvc_error_t uvc_set_hue_auto(uvc_device_handle_t *devh, uint8_t hue_auto);
609 
610 uvc_error_t uvc_get_saturation(uvc_device_handle_t *devh, uint16_t* saturation, enum uvc_req_code req_code);
611 uvc_error_t uvc_set_saturation(uvc_device_handle_t *devh, uint16_t saturation);
612 
613 uvc_error_t uvc_get_sharpness(uvc_device_handle_t *devh, uint16_t* sharpness, enum uvc_req_code req_code);
614 uvc_error_t uvc_set_sharpness(uvc_device_handle_t *devh, uint16_t sharpness);
615 
616 uvc_error_t uvc_get_gamma(uvc_device_handle_t *devh, uint16_t* gamma, enum uvc_req_code req_code);
617 uvc_error_t uvc_set_gamma(uvc_device_handle_t *devh, uint16_t gamma);
618 
619 uvc_error_t uvc_get_white_balance_temperature(uvc_device_handle_t *devh, uint16_t* temperature, enum uvc_req_code req_code);
621 
622 uvc_error_t uvc_get_white_balance_temperature_auto(uvc_device_handle_t *devh, uint8_t* temperature_auto, enum uvc_req_code req_code);
624 
625 uvc_error_t uvc_get_white_balance_component(uvc_device_handle_t *devh, uint16_t* blue, uint16_t* red, enum uvc_req_code req_code);
626 uvc_error_t uvc_set_white_balance_component(uvc_device_handle_t *devh, uint16_t blue, uint16_t red);
627 
628 uvc_error_t uvc_get_white_balance_component_auto(uvc_device_handle_t *devh, uint8_t* white_balance_component_auto, enum uvc_req_code req_code);
629 uvc_error_t uvc_set_white_balance_component_auto(uvc_device_handle_t *devh, uint8_t white_balance_component_auto);
630 
631 uvc_error_t uvc_get_digital_multiplier(uvc_device_handle_t *devh, uint16_t* multiplier_step, enum uvc_req_code req_code);
632 uvc_error_t uvc_set_digital_multiplier(uvc_device_handle_t *devh, uint16_t multiplier_step);
633 
634 uvc_error_t uvc_get_digital_multiplier_limit(uvc_device_handle_t *devh, uint16_t* multiplier_step, enum uvc_req_code req_code);
635 uvc_error_t uvc_set_digital_multiplier_limit(uvc_device_handle_t *devh, uint16_t multiplier_step);
636 
637 uvc_error_t uvc_get_analog_video_standard(uvc_device_handle_t *devh, uint8_t* video_standard, enum uvc_req_code req_code);
638 uvc_error_t uvc_set_analog_video_standard(uvc_device_handle_t *devh, uint8_t video_standard);
639 
642 
643 uvc_error_t uvc_get_input_select(uvc_device_handle_t *devh, uint8_t* selector, enum uvc_req_code req_code);
644 uvc_error_t uvc_set_input_select(uvc_device_handle_t *devh, uint8_t selector);
645 /* end AUTO-GENERATED control accessors */
646 
647 void uvc_perror(uvc_error_t err, const char *msg);
648 const char* uvc_strerror(uvc_error_t err);
649 void uvc_print_diag(uvc_device_handle_t *devh, FILE *stream);
651 
652 uvc_frame_t *uvc_allocate_frame(size_t data_bytes);
653 void uvc_free_frame(uvc_frame_t *frame);
654 
656 
657 #ifdef __cplusplus
658 }
659 #endif
660 
661 #endif // !def(LIBUVC_H)
662 
uvc_get_libusb_handle
libusb_device_handle * uvc_get_libusb_handle(uvc_device_handle_t *devh)
uvc_input_terminal::wTerminalType
enum uvc_it_type wTerminalType
Definition: libuvc.h:284
UVC_PU_HUE_CONTROL
@ UVC_PU_HUE_CONTROL
Definition: libuvc.h:202
uvc_input_terminal::next
struct uvc_input_terminal * next
Definition: libuvc.h:280
uvc_get_white_balance_component_auto
uvc_error_t uvc_get_white_balance_component_auto(uvc_device_handle_t *devh, uint8_t *white_balance_component_auto, enum uvc_req_code req_code)
uvc_get_pantilt_abs
uvc_error_t uvc_get_pantilt_abs(uvc_device_handle_t *devh, int32_t *pan, int32_t *tilt, enum uvc_req_code req_code)
uvc_get_analog_video_standard
uvc_error_t uvc_get_analog_video_standard(uvc_device_handle_t *devh, uint8_t *video_standard, enum uvc_req_code req_code)
uvc_stream_close
void uvc_stream_close(uvc_stream_handle_t *strmh)
uvc_device_power_mode
uvc_device_power_mode
Definition: libuvc.h:164
UVC_CT_FOCUS_AUTO_CONTROL
@ UVC_CT_FOCUS_AUTO_CONTROL
Definition: libuvc.h:179
uvc_set_focus_simple_range
uvc_error_t uvc_set_focus_simple_range(uvc_device_handle_t *devh, uint8_t focus)
uvc_input_terminal
Definition: libuvc.h:279
uvc_it_type
uvc_it_type
Definition: libuvc.h:225
uvc_set_roll_rel
uvc_error_t uvc_set_roll_rel(uvc_device_handle_t *devh, int8_t roll_rel, uint8_t speed)
uvc_open2
uvc_error_t uvc_open2(uvc_device_t *dev, uvc_device_handle_t **devh, int camera_number)
uvc_set_digital_roi
uvc_error_t uvc_set_digital_roi(uvc_device_handle_t *devh, uint16_t roi_top, uint16_t roi_left, uint16_t roi_bottom, uint16_t roi_right, uint16_t auto_controls)
UVC_SUCCESS
@ UVC_SUCCESS
Definition: libuvc.h:19
uvc_pu_ctrl_selector
uvc_pu_ctrl_selector
Definition: libuvc.h:195
rs::stream
stream
Streams are different types of data provided by RealSense devices.
Definition: rs.hpp:24
uvc_set_scanning_mode
uvc_error_t uvc_set_scanning_mode(uvc_device_handle_t *devh, uint8_t mode)
UVC_ERROR_INVALID_PARAM
@ UVC_ERROR_INVALID_PARAM
Definition: libuvc.h:23
UVC_CT_FOCUS_ABSOLUTE_CONTROL
@ UVC_CT_FOCUS_ABSOLUTE_CONTROL
Definition: libuvc.h:177
UVC_ERROR_INVALID_MODE
@ UVC_ERROR_INVALID_MODE
Definition: libuvc.h:47
uvc_set_pantilt_rel
uvc_error_t uvc_set_pantilt_rel(uvc_device_handle_t *devh, int8_t pan_rel, uint8_t pan_speed, int8_t tilt_rel, uint8_t tilt_speed)
UVC_VS_FORMAT_MJPEG
@ UVC_VS_FORMAT_MJPEG
Definition: libuvc.h:62
UVC_CT_FOCUS_SIMPLE_CONTROL
@ UVC_CT_FOCUS_SIMPLE_CONTROL
Definition: libuvc.h:189
uvc_set_pantilt_abs
uvc_error_t uvc_set_pantilt_abs(uvc_device_handle_t *devh, int32_t pan, int32_t tilt)
uvc_stream_start
uvc_error_t uvc_stream_start(uvc_stream_handle_t *strmh, uvc_frame_callback_t *cb, void *user_ptr, uint8_t flags, int num_transfer_buffers)
uvc_processing_unit::prev
struct uvc_processing_unit * prev
Definition: libuvc.h:299
UVC_VS_FORMAT_DV
@ UVC_VS_FORMAT_DV
Definition: libuvc.h:65
uvc_format_desc::bBitsPerPixel
uint8_t bBitsPerPixel
Definition: libuvc.h:136
uvc_frame_desc::wWidth
uint16_t wWidth
Definition: libuvc.h:90
uvc_format_desc::bAspectRatioX
uint8_t bAspectRatioX
Definition: libuvc.h:142
uvc_stream_ctrl
uvc_error_t uvc_stream_ctrl(uvc_stream_handle_t *strmh, uvc_stream_ctrl_t *ctrl)
uvc_stream_ctrl::dwClockFrequency
uint32_t dwClockFrequency
Definition: libuvc.h:413
uvc_set_exposure_abs
uvc_error_t uvc_set_exposure_abs(uvc_device_handle_t *devh, uint32_t time)
uvc_set_gamma
uvc_error_t uvc_set_gamma(uvc_device_handle_t *devh, uint16_t gamma)
uvc_processing_unit::bSourceID
uint8_t bSourceID
Definition: libuvc.h:303
uvc_free_device_list
void uvc_free_device_list(uvc_device_t **list, uint8_t unref_devices)
UVC_ERROR_OTHER
@ UVC_ERROR_OTHER
Definition: libuvc.h:51
UVC_ITT_VENDOR_SPECIFIC
@ UVC_ITT_VENDOR_SPECIFIC
Definition: libuvc.h:226
uvc_init
uvc_error_t uvc_init(uvc_context_t **ctx, struct libusb_context *usb_ctx)
uvc_frame::data
void * data
Definition: libuvc.h:366
UVC_PU_DIGITAL_MULTIPLIER_LIMIT_CONTROL
@ UVC_PU_DIGITAL_MULTIPLIER_LIMIT_CONTROL
Definition: libuvc.h:211
uvc_term_type
uvc_term_type
Definition: libuvc.h:219
UVC_ERROR_IO
@ UVC_ERROR_IO
Definition: libuvc.h:21
uvc_frame_desc
Definition: libuvc.h:81
UVC_PU_GAMMA_CONTROL
@ UVC_PU_GAMMA_CONTROL
Definition: libuvc.h:205
uvc_get_contrast
uvc_error_t uvc_get_contrast(uvc_device_handle_t *devh, uint16_t *contrast, enum uvc_req_code req_code)
uvc_processing_unit_t
struct uvc_processing_unit uvc_processing_unit_t
uvc_stream_ctrl::bMaxVersion
uint8_t bMaxVersion
Definition: libuvc.h:417
uvc_ot_type
uvc_ot_type
Definition: libuvc.h:232
UVC_VS_FRAME_FRAME_BASED
@ UVC_VS_FRAME_FRAME_BASED
Definition: libuvc.h:68
UVC_VS_FRAME_MJPEG
@ UVC_VS_FRAME_MJPEG
Definition: libuvc.h:63
UVC_RC_UNDEFINED
@ UVC_RC_UNDEFINED
Definition: libuvc.h:153
uvc_strerror
const char * uvc_strerror(uvc_error_t err)
uvc_stream_ctrl::bFrameIndex
uint8_t bFrameIndex
Definition: libuvc.h:404
UVC_CT_AE_MODE_CONTROL
@ UVC_CT_AE_MODE_CONTROL
Definition: libuvc.h:173
UVC_CT_FOCUS_RELATIVE_CONTROL
@ UVC_CT_FOCUS_RELATIVE_CONTROL
Definition: libuvc.h:178
uvc_frame_desc::intervals
uint32_t * intervals
Definition: libuvc.h:112
uvc_input_terminal::bTerminalID
uint8_t bTerminalID
Definition: libuvc.h:282
uvc_get_white_balance_temperature
uvc_error_t uvc_get_white_balance_temperature(uvc_device_handle_t *devh, uint16_t *temperature, enum uvc_req_code req_code)
uvc_output_terminal::prev
struct uvc_output_terminal * prev
Definition: libuvc.h:293
UVC_PU_DIGITAL_MULTIPLIER_CONTROL
@ UVC_PU_DIGITAL_MULTIPLIER_CONTROL
Definition: libuvc.h:210
UVC_CT_EXPOSURE_TIME_ABSOLUTE_CONTROL
@ UVC_CT_EXPOSURE_TIME_ABSOLUTE_CONTROL
Definition: libuvc.h:175
uvc_frame_desc::prev
struct uvc_frame_desc * prev
Definition: libuvc.h:83
uvc_get_input_select
uvc_error_t uvc_get_input_select(uvc_device_handle_t *devh, uint8_t *selector, enum uvc_req_code req_code)
UVC_ERROR_NOT_SUPPORTED
@ UVC_ERROR_NOT_SUPPORTED
Definition: libuvc.h:43
uvc_set_contrast
uvc_error_t uvc_set_contrast(uvc_device_handle_t *devh, uint16_t contrast)
UVC_VS_FORMAT_MPEG2TS
@ UVC_VS_FORMAT_MPEG2TS
Definition: libuvc.h:64
uvc_stream_handle_t
struct uvc_stream_handle uvc_stream_handle_t
Definition: libuvc.h:276
UVC_PU_BRIGHTNESS_CONTROL
@ UVC_PU_BRIGHTNESS_CONTROL
Definition: libuvc.h:198
UVC_ITT_CAMERA
@ UVC_ITT_CAMERA
Definition: libuvc.h:227
uvc_stream_ctrl::bPreferredVersion
uint8_t bPreferredVersion
Definition: libuvc.h:415
uvc_set_gain
uvc_error_t uvc_set_gain(uvc_device_handle_t *devh, uint16_t gain)
uvc_stream_ctrl::dwMaxPayloadTransferSize
uint32_t dwMaxPayloadTransferSize
Definition: libuvc.h:412
uvc_set_focus_abs
uvc_error_t uvc_set_focus_abs(uvc_device_handle_t *devh, uint16_t focus)
uvc_set_analog_video_lock_status
uvc_error_t uvc_set_analog_video_lock_status(uvc_device_handle_t *devh, uint8_t status)
uvc_get_digital_window
uvc_error_t uvc_get_digital_window(uvc_device_handle_t *devh, uint16_t *window_top, uint16_t *window_left, uint16_t *window_bottom, uint16_t *window_right, uint16_t *num_steps, uint16_t *num_steps_units, enum uvc_req_code req_code)
uvc_format_desc::bAspectRatioY
uint8_t bAspectRatioY
Definition: libuvc.h:143
uvc_frame_desc::wHeight
uint16_t wHeight
Definition: libuvc.h:92
uvc_get_hue
uvc_error_t uvc_get_hue(uvc_device_handle_t *devh, int16_t *hue, enum uvc_req_code req_code)
uvc_get_zoom_rel
uvc_error_t uvc_get_zoom_rel(uvc_device_handle_t *devh, int8_t *zoom_rel, uint8_t *digital_zoom, uint8_t *speed, enum uvc_req_code req_code)
uvc_frame_desc::dwFrameIntervalStep
uint32_t dwFrameIntervalStep
Definition: libuvc.h:106
UVC_CT_ROLL_RELATIVE_CONTROL
@ UVC_CT_ROLL_RELATIVE_CONTROL
Definition: libuvc.h:187
uvc_stream_ctrl::wDelay
uint16_t wDelay
Definition: libuvc.h:410
uvc_get_gamma
uvc_error_t uvc_get_gamma(uvc_device_handle_t *devh, uint16_t *gamma, enum uvc_req_code req_code)
uvc_format_desc::bFormatIndex
uint8_t bFormatIndex
Definition: libuvc.h:126
UVC_ERROR_ACCESS
@ UVC_ERROR_ACCESS
Definition: libuvc.h:25
uvc_ref_device
void uvc_ref_device(uvc_device_t *dev)
uvc_get_digital_multiplier_limit
uvc_error_t uvc_get_digital_multiplier_limit(uvc_device_handle_t *devh, uint16_t *multiplier_step, enum uvc_req_code req_code)
UVC_PU_GAIN_CONTROL
@ UVC_PU_GAIN_CONTROL
Definition: libuvc.h:200
uvc_format_desc
Definition: libuvc.h:120
uvc_set_iris_abs
uvc_error_t uvc_set_iris_abs(uvc_device_handle_t *devh, uint16_t iris)
UVC_CT_PRIVACY_CONTROL
@ UVC_CT_PRIVACY_CONTROL
Definition: libuvc.h:188
uvc_set_saturation
uvc_error_t uvc_set_saturation(uvc_device_handle_t *devh, uint16_t saturation)
uvc_get_backlight_compensation
uvc_error_t uvc_get_backlight_compensation(uvc_device_handle_t *devh, uint16_t *backlight_compensation, enum uvc_req_code req_code)
uvc_req_code
uvc_req_code
Definition: libuvc.h:152
UVC_OTT_MEDIA_TRANSPORT_OUTPUT
@ UVC_OTT_MEDIA_TRANSPORT_OUTPUT
Definition: libuvc.h:235
uvc_format_desc::guidFormat
uint8_t guidFormat[16]
Definition: libuvc.h:130
uvc_frame_t
struct uvc_frame uvc_frame_t
UVC_PU_ANALOG_VIDEO_STANDARD_CONTROL
@ UVC_PU_ANALOG_VIDEO_STANDARD_CONTROL
Definition: libuvc.h:213
uvc_get_format_descs
const uvc_format_desc_t * uvc_get_format_descs(uvc_device_handle_t *)
uvc_find_device
uvc_error_t uvc_find_device(uvc_context_t *ctx, uvc_device_t **dev, int vid, int pid, const char *sn)
UVC_CT_PANTILT_RELATIVE_CONTROL
@ UVC_CT_PANTILT_RELATIVE_CONTROL
Definition: libuvc.h:185
uvc_frame_desc::bFrameIntervalType
uint8_t bFrameIntervalType
Definition: libuvc.h:108
UVC_ERROR_OVERFLOW
@ UVC_ERROR_OVERFLOW
Definition: libuvc.h:35
uvc_stream_start_iso
uvc_error_t uvc_stream_start_iso(uvc_stream_handle_t *strmh, uvc_frame_callback_t *cb, void *user_ptr)
uvc_frame::height
uint32_t height
Definition: libuvc.h:372
UVC_PU_SHARPNESS_CONTROL
@ UVC_PU_SHARPNESS_CONTROL
Definition: libuvc.h:204
uvc_format_desc::bDescriptorSubtype
enum uvc_vs_desc_subtype bDescriptorSubtype
Definition: libuvc.h:124
uvc_set_white_balance_temperature
uvc_error_t uvc_set_white_balance_temperature(uvc_device_handle_t *devh, uint16_t temperature)
UVC_PU_CONTRAST_CONTROL
@ UVC_PU_CONTRAST_CONTROL
Definition: libuvc.h:199
uvc_device_descriptor::manufacturer
const char * manufacturer
Definition: libuvc.h:356
uvc_frame_desc::dwMinBitRate
uint32_t dwMinBitRate
Definition: libuvc.h:94
uvc_set_input_select
uvc_error_t uvc_set_input_select(uvc_device_handle_t *devh, uint8_t selector)
UVC_STATUS_CLASS_CONTROL_CAMERA
@ UVC_STATUS_CLASS_CONTROL_CAMERA
Definition: libuvc.h:321
uvc_format_desc::bmInterlaceFlags
uint8_t bmInterlaceFlags
Definition: libuvc.h:144
UVC_STATUS_ATTRIBUTE_FAILURE_CHANGE
@ UVC_STATUS_ATTRIBUTE_FAILURE_CHANGE
Definition: libuvc.h:328
uvc_set_zoom_abs
uvc_error_t uvc_set_zoom_abs(uvc_device_handle_t *devh, uint16_t focal_length)
uvc_format_desc::parent
struct uvc_streaming_interface * parent
Definition: libuvc.h:121
UVC_GET_MIN
@ UVC_GET_MIN
Definition: libuvc.h:156
uvc_input_terminal::wObjectiveFocalLengthMax
uint16_t wObjectiveFocalLengthMax
Definition: libuvc.h:286
UVC_PU_CONTRAST_AUTO_CONTROL
@ UVC_PU_CONTRAST_AUTO_CONTROL
Definition: libuvc.h:215
uvc_output_terminal
Definition: libuvc.h:292
uvc_set_brightness
uvc_error_t uvc_set_brightness(uvc_device_handle_t *devh, int16_t brightness)
uvc_duplicate_frame
uvc_error_t uvc_duplicate_frame(uvc_frame_t *in, uvc_frame_t *out)
uvc_get_ctrl
int uvc_get_ctrl(uvc_device_handle_t *devh, uint8_t unit, uint8_t ctrl, void *data, int len, enum uvc_req_code req_code)
uvc_get_power_line_frequency
uvc_error_t uvc_get_power_line_frequency(uvc_device_handle_t *devh, uint8_t *power_line_frequency, enum uvc_req_code req_code)
uvc_frame_desc::bDescriptorSubtype
enum uvc_vs_desc_subtype bDescriptorSubtype
Definition: libuvc.h:85
uvc_get_focus_auto
uvc_error_t uvc_get_focus_auto(uvc_device_handle_t *devh, uint8_t *state, enum uvc_req_code req_code)
uvc_error_t
enum uvc_error uvc_error_t
rs::event
event
Source device that triggered specific timestamp event from the motion module.
Definition: rs.hpp:227
uvc_frame_desc::parent
struct uvc_format_desc * parent
Definition: libuvc.h:82
uvc_frame::library_owns_data
uint8_t library_owns_data
Definition: libuvc.h:390
uvc_frame_desc::dwMaxVideoFrameBufferSize
uint32_t dwMaxVideoFrameBufferSize
Definition: libuvc.h:98
uvc_format_desc::fourccFormat
uint8_t fourccFormat[4]
Definition: libuvc.h:131
UVC_GET_RES
@ UVC_GET_RES
Definition: libuvc.h:158
UVC_STATUS_ATTRIBUTE_VALUE_CHANGE
@ UVC_STATUS_ATTRIBUTE_VALUE_CHANGE
Definition: libuvc.h:326
UVC_CT_EXPOSURE_TIME_RELATIVE_CONTROL
@ UVC_CT_EXPOSURE_TIME_RELATIVE_CONTROL
Definition: libuvc.h:176
UVC_PU_SATURATION_CONTROL
@ UVC_PU_SATURATION_CONTROL
Definition: libuvc.h:203
uvc_ct_ctrl_selector
uvc_ct_ctrl_selector
Definition: libuvc.h:170
uvc_stream_ctrl::wCompWindowSize
uint16_t wCompWindowSize
Definition: libuvc.h:409
uvc_get_device_descriptor
uvc_error_t uvc_get_device_descriptor(uvc_device_t *dev, uvc_device_descriptor_t **desc)
uvc_format_desc::bVariableSize
uint8_t bVariableSize
Definition: libuvc.h:146
UVC_SET_CUR
@ UVC_SET_CUR
Definition: libuvc.h:154
UVC_OTT_DISPLAY
@ UVC_OTT_DISPLAY
Definition: libuvc.h:234
uvc_format_desc::next
struct uvc_format_desc * next
Definition: libuvc.h:122
uvc_stream_ctrl::bmHint
uint16_t bmHint
Definition: libuvc.h:402
uvc_get_brightness
uvc_error_t uvc_get_brightness(uvc_device_handle_t *devh, int16_t *brightness, enum uvc_req_code req_code)
uvc_get_device_list
uvc_error_t uvc_get_device_list(uvc_context_t *ctx, uvc_device_t ***list)
UVC_SVIDEO_CONNECTOR
@ UVC_SVIDEO_CONNECTOR
Definition: libuvc.h:242
uvc_get_ae_priority
uvc_error_t uvc_get_ae_priority(uvc_device_handle_t *devh, uint8_t *priority, enum uvc_req_code req_code)
uvc_set_zoom_rel
uvc_error_t uvc_set_zoom_rel(uvc_device_handle_t *devh, int8_t zoom_rel, uint8_t digital_zoom, uint8_t speed)
UVC_CT_ROLL_ABSOLUTE_CONTROL
@ UVC_CT_ROLL_ABSOLUTE_CONTROL
Definition: libuvc.h:186
UVC_OTT_VENDOR_SPECIFIC
@ UVC_OTT_VENDOR_SPECIFIC
Definition: libuvc.h:233
UVC_ERROR_NOT_FOUND
@ UVC_ERROR_NOT_FOUND
Definition: libuvc.h:29
uvc_stream_get_frame
uvc_error_t uvc_stream_get_frame(uvc_stream_handle_t *strmh, uvc_frame_t **frame, int32_t timeout_us)
uvc_stream_ctrl::wPFrameRate
uint16_t wPFrameRate
Definition: libuvc.h:407
uvc_get_sharpness
uvc_error_t uvc_get_sharpness(uvc_device_handle_t *devh, uint16_t *sharpness, enum uvc_req_code req_code)
uvc_set_digital_multiplier_limit
uvc_error_t uvc_set_digital_multiplier_limit(uvc_device_handle_t *devh, uint16_t multiplier_step)
uvc_set_hue
uvc_error_t uvc_set_hue(uvc_device_handle_t *devh, int16_t hue)
UVC_VS_FORMAT_UNCOMPRESSED
@ UVC_VS_FORMAT_UNCOMPRESSED
Definition: libuvc.h:60
uvc_set_sharpness
uvc_error_t uvc_set_sharpness(uvc_device_handle_t *devh, uint16_t sharpness)
uvc_stream_stop
uvc_error_t uvc_stream_stop(uvc_stream_handle_t *strmh)
uvc_get_roll_abs
uvc_error_t uvc_get_roll_abs(uvc_device_handle_t *devh, int16_t *roll, enum uvc_req_code req_code)
uvc_get_digital_roi
uvc_error_t uvc_get_digital_roi(uvc_device_handle_t *devh, uint16_t *roi_top, uint16_t *roi_left, uint16_t *roi_bottom, uint16_t *roi_right, uint16_t *auto_controls, enum uvc_req_code req_code)
uvc_stream_ctrl::bFormatIndex
uint8_t bFormatIndex
Definition: libuvc.h:403
UVC_PU_BACKLIGHT_COMPENSATION_CONTROL
@ UVC_PU_BACKLIGHT_COMPENSATION_CONTROL
Definition: libuvc.h:197
uvc_set_ae_mode
uvc_error_t uvc_set_ae_mode(uvc_device_handle_t *devh, uint8_t mode)
uvc_extension_unit::bmControls
uint64_t bmControls
Definition: libuvc.h:316
uvc_perror
void uvc_perror(uvc_error_t err, const char *msg)
uvc_frame::width
uint32_t width
Definition: libuvc.h:370
uvc_set_analog_video_standard
uvc_error_t uvc_set_analog_video_standard(uvc_device_handle_t *devh, uint8_t video_standard)
uvc_stream_ctrl_t
struct uvc_stream_ctrl uvc_stream_ctrl_t
UVC_VS_INPUT_HEADER
@ UVC_VS_INPUT_HEADER
Definition: libuvc.h:57
uvc_get_extension_units
const uvc_extension_unit_t * uvc_get_extension_units(uvc_device_handle_t *devh)
uvc_get_saturation
uvc_error_t uvc_get_saturation(uvc_device_handle_t *devh, uint16_t *saturation, enum uvc_req_code req_code)
UVC_EXTERNAL_VENDOR_SPECIFIC
@ UVC_EXTERNAL_VENDOR_SPECIFIC
Definition: libuvc.h:240
UVC_COMPONENT_CONNECTOR
@ UVC_COMPONENT_CONNECTOR
Definition: libuvc.h:243
UVC_VC_VIDEO_POWER_MODE_DEVICE_DEPENDENT
@ UVC_VC_VIDEO_POWER_MODE_DEVICE_DEPENDENT
Definition: libuvc.h:166
uvc_get_exposure_abs
uvc_error_t uvc_get_exposure_abs(uvc_device_handle_t *devh, uint32_t *time, enum uvc_req_code req_code)
uvc_get_power_mode
uvc_error_t uvc_get_power_mode(uvc_device_handle_t *devh, enum uvc_device_power_mode *mode, enum uvc_req_code req_code)
uvc_set_hue_auto
uvc_error_t uvc_set_hue_auto(uvc_device_handle_t *devh, uint8_t hue_auto)
UVC_GET_INFO
@ UVC_GET_INFO
Definition: libuvc.h:160
UVC_VS_FRAME_UNCOMPRESSED
@ UVC_VS_FRAME_UNCOMPRESSED
Definition: libuvc.h:61
uvc_context_t
struct uvc_context uvc_context_t
Definition: libuvc.h:253
uvc_frame_desc::dwMaxBitRate
uint32_t dwMaxBitRate
Definition: libuvc.h:96
uvc_format_desc::bCopyProtect
uint8_t bCopyProtect
Definition: libuvc.h:145
uvc_stop_streaming
void uvc_stop_streaming(uvc_device_handle_t *devh)
UVC_TT_STREAMING
@ UVC_TT_STREAMING
Definition: libuvc.h:221
uvc_get_output_terminals
const uvc_output_terminal_t * uvc_get_output_terminals(uvc_device_handle_t *devh)
uvc_frame_desc_t
struct uvc_frame_desc uvc_frame_desc_t
uvc_stream_ctrl::bmFramingInfo
uint8_t bmFramingInfo
Definition: libuvc.h:414
uvc_format_desc::frame_descs
struct uvc_frame_desc * frame_descs
Definition: libuvc.h:148
uvc_set_power_line_frequency
uvc_error_t uvc_set_power_line_frequency(uvc_device_handle_t *devh, uint8_t power_line_frequency)
uvc_get_ctrl_len
int uvc_get_ctrl_len(uvc_device_handle_t *devh, uint8_t unit, uint8_t ctrl)
uvc_set_focus_auto
uvc_error_t uvc_set_focus_auto(uvc_device_handle_t *devh, uint8_t state)
UVC_VS_UNDEFINED
@ UVC_VS_UNDEFINED
Definition: libuvc.h:56
UVC_PU_WHITE_BALANCE_TEMPERATURE_AUTO_CONTROL
@ UVC_PU_WHITE_BALANCE_TEMPERATURE_AUTO_CONTROL
Definition: libuvc.h:207
UVC_CT_AE_PRIORITY_CONTROL
@ UVC_CT_AE_PRIORITY_CONTROL
Definition: libuvc.h:174
uvc_vs_desc_subtype
uvc_vs_desc_subtype
Definition: libuvc.h:55
uvc_set_exposure_rel
uvc_error_t uvc_set_exposure_rel(uvc_device_handle_t *devh, int8_t step)
uvc_frame::fourcc
uint32_t fourcc
Definition: libuvc.h:374
uvc_frame_desc::bmCapabilities
uint8_t bmCapabilities
Definition: libuvc.h:88
uvc_set_white_balance_component_auto
uvc_error_t uvc_set_white_balance_component_auto(uvc_device_handle_t *devh, uint8_t white_balance_component_auto)
uvc_device_descriptor
Definition: libuvc.h:346
uvc_set_digital_multiplier
uvc_error_t uvc_set_digital_multiplier(uvc_device_handle_t *devh, uint16_t multiplier_step)
uvc_close
void uvc_close(uvc_device_handle_t *devh)
uvc_status_class
uvc_status_class
Definition: libuvc.h:319
uvc_set_contrast_auto
uvc_error_t uvc_set_contrast_auto(uvc_device_handle_t *devh, uint8_t contrast_auto)
UVC_GET_CUR
@ UVC_GET_CUR
Definition: libuvc.h:155
uvc_frame_desc::next
struct uvc_frame_desc * next
Definition: libuvc.h:83
uvc_frame::sequence
uint32_t sequence
Definition: libuvc.h:378
UVC_STATUS_CLASS_CONTROL_PROCESSING
@ UVC_STATUS_CLASS_CONTROL_PROCESSING
Definition: libuvc.h:322
UVC_ERROR_INVALID_DEVICE
@ UVC_ERROR_INVALID_DEVICE
Definition: libuvc.h:45
UVC_CT_SCANNING_MODE_CONTROL
@ UVC_CT_SCANNING_MODE_CONTROL
Definition: libuvc.h:172
uvc_stream_ctrl::dwMaxVideoFrameSize
uint32_t dwMaxVideoFrameSize
Definition: libuvc.h:411
uvc_get_device_address
uint8_t uvc_get_device_address(uvc_device_t *dev)
uvc_set_privacy
uvc_error_t uvc_set_privacy(uvc_device_handle_t *devh, uint8_t privacy)
uvc_get_roll_rel
uvc_error_t uvc_get_roll_rel(uvc_device_handle_t *devh, int8_t *roll_rel, uint8_t *speed, enum uvc_req_code req_code)
uvc_get_digital_multiplier
uvc_error_t uvc_get_digital_multiplier(uvc_device_handle_t *devh, uint16_t *multiplier_step, enum uvc_req_code req_code)
UVC_VS_STILL_IMAGE_FRAME
@ UVC_VS_STILL_IMAGE_FRAME
Definition: libuvc.h:59
uvc_device_descriptor::serialNumber
const char * serialNumber
Definition: libuvc.h:354
UVC_PU_CONTROL_UNDEFINED
@ UVC_PU_CONTROL_UNDEFINED
Definition: libuvc.h:196
UVC_CT_REGION_OF_INTEREST_CONTROL
@ UVC_CT_REGION_OF_INTEREST_CONTROL
Definition: libuvc.h:191
UVC_CT_PANTILT_ABSOLUTE_CONTROL
@ UVC_CT_PANTILT_ABSOLUTE_CONTROL
Definition: libuvc.h:184
UVC_VC_VIDEO_POWER_MODE_FULL
@ UVC_VC_VIDEO_POWER_MODE_FULL
Definition: libuvc.h:165
uvc_set_iris_rel
uvc_error_t uvc_set_iris_rel(uvc_device_handle_t *devh, uint8_t iris_rel)
uvc_input_terminal_t
struct uvc_input_terminal uvc_input_terminal_t
uvc_frame_desc::dwBytesPerLine
uint32_t dwBytesPerLine
Definition: libuvc.h:110
uvc_get_iris_abs
uvc_error_t uvc_get_iris_abs(uvc_device_handle_t *devh, uint16_t *iris, enum uvc_req_code req_code)
uvc_get_scanning_mode
uvc_error_t uvc_get_scanning_mode(uvc_device_handle_t *devh, uint8_t *mode, enum uvc_req_code req_code)
uvc_input_terminal::wObjectiveFocalLengthMin
uint16_t wObjectiveFocalLengthMin
Definition: libuvc.h:285
uvc_print_diag
void uvc_print_diag(uvc_device_handle_t *devh, FILE *stream)
uvc_get_gain
uvc_error_t uvc_get_gain(uvc_device_handle_t *devh, uint16_t *gain, enum uvc_req_code req_code)
uvc_extension_unit::next
struct uvc_extension_unit * next
Definition: libuvc.h:310
uvc_set_digital_window
uvc_error_t uvc_set_digital_window(uvc_device_handle_t *devh, uint16_t window_top, uint16_t window_left, uint16_t window_bottom, uint16_t window_right, uint16_t num_steps, uint16_t num_steps_units)
uvc_get_bus_number
uint8_t uvc_get_bus_number(uvc_device_t *dev)
uvc_frame_desc::bFrameIndex
uint8_t bFrameIndex
Definition: libuvc.h:87
uvc_frame::source
uvc_device_handle_t * source
Definition: libuvc.h:383
UVC_ERROR_CALLBACK_EXISTS
@ UVC_ERROR_CALLBACK_EXISTS
Definition: libuvc.h:49
UVC_ERROR_NO_MEM
@ UVC_ERROR_NO_MEM
Definition: libuvc.h:41
uvc_stream_ctrl::wKeyFrameRate
uint16_t wKeyFrameRate
Definition: libuvc.h:406
uvc_output_terminal_t
struct uvc_output_terminal uvc_output_terminal_t
UVC_CT_IRIS_ABSOLUTE_CONTROL
@ UVC_CT_IRIS_ABSOLUTE_CONTROL
Definition: libuvc.h:180
uvc_get_focus_simple_range
uvc_error_t uvc_get_focus_simple_range(uvc_device_handle_t *devh, uint8_t *focus, enum uvc_req_code req_code)
uvc_processing_unit
Definition: libuvc.h:298
UVC_PU_WHITE_BALANCE_TEMPERATURE_CONTROL
@ UVC_PU_WHITE_BALANCE_TEMPERATURE_CONTROL
Definition: libuvc.h:206
uvc_stream_ctrl::bMinVersion
uint8_t bMinVersion
Definition: libuvc.h:416
uvc_print_stream_ctrl
void uvc_print_stream_ctrl(uvc_stream_ctrl_t *ctrl, FILE *stream)
uvc_frame::step
size_t step
Definition: libuvc.h:376
uvc_format_desc_t
struct uvc_format_desc uvc_format_desc_t
UVC_PU_ANALOG_LOCK_STATUS_CONTROL
@ UVC_PU_ANALOG_LOCK_STATUS_CONTROL
Definition: libuvc.h:214
uvc_frame_callback_t
void() uvc_frame_callback_t(struct uvc_frame *frame, void *user_ptr)
Definition: libuvc.h:396
UVC_STATUS_ATTRIBUTE_INFO_CHANGE
@ UVC_STATUS_ATTRIBUTE_INFO_CHANGE
Definition: libuvc.h:327
UVC_ITT_MEDIA_TRANSPORT_INPUT
@ UVC_ITT_MEDIA_TRANSPORT_INPUT
Definition: libuvc.h:228
uvc_set_roll_abs
uvc_error_t uvc_set_roll_abs(uvc_device_handle_t *devh, int16_t roll)
UVC_STATUS_CLASS_CONTROL
@ UVC_STATUS_CLASS_CONTROL
Definition: libuvc.h:320
UVC_CT_CONTROL_UNDEFINED
@ UVC_CT_CONTROL_UNDEFINED
Definition: libuvc.h:171
uvc_extension_unit::prev
struct uvc_extension_unit * prev
Definition: libuvc.h:310
UVC_STATUS_ATTRIBUTE_UNKNOWN
@ UVC_STATUS_ATTRIBUTE_UNKNOWN
Definition: libuvc.h:329
uvc_device_handle_t
struct uvc_device_handle uvc_device_handle_t
Definition: libuvc.h:268
uvc_start_iso_streaming
uvc_error_t uvc_start_iso_streaming(uvc_device_handle_t *devh, uvc_stream_ctrl_t *ctrl, uvc_frame_callback_t *cb, void *user_ptr)
uvc_open
uvc_error_t uvc_open(uvc_device_t *dev, uvc_device_handle_t **devh)
UVC_GET_DEF
@ UVC_GET_DEF
Definition: libuvc.h:161
UVC_VS_COLORFORMAT
@ UVC_VS_COLORFORMAT
Definition: libuvc.h:66
uvc_start_streaming
uvc_error_t uvc_start_streaming(uvc_device_handle_t *devh, uvc_stream_ctrl_t *ctrl, uvc_frame_callback_t *cb, void *user_ptr, uint8_t flags, int num_transfer_buffers)
uvc_set_white_balance_component
uvc_error_t uvc_set_white_balance_component(uvc_device_handle_t *devh, uint16_t blue, uint16_t red)
UVC_ERROR_NO_DEVICE
@ UVC_ERROR_NO_DEVICE
Definition: libuvc.h:27
uvc_get_hue_auto
uvc_error_t uvc_get_hue_auto(uvc_device_handle_t *devh, uint8_t *hue_auto, enum uvc_req_code req_code)
uvc_device_descriptor::idProduct
uint16_t idProduct
Definition: libuvc.h:350
uvc_device_descriptor_t
struct uvc_device_descriptor uvc_device_descriptor_t
uvc_set_backlight_compensation
uvc_error_t uvc_set_backlight_compensation(uvc_device_handle_t *devh, uint16_t backlight_compensation)
uvc_exit
void uvc_exit(uvc_context_t *ctx)
UVC_ERROR_BUSY
@ UVC_ERROR_BUSY
Definition: libuvc.h:31
UVC_TT_VENDOR_SPECIFIC
@ UVC_TT_VENDOR_SPECIFIC
Definition: libuvc.h:220
uvc_extension_unit
Definition: libuvc.h:309
uvc_set_ae_priority
uvc_error_t uvc_set_ae_priority(uvc_device_handle_t *devh, uint8_t priority)
uvc_status_callback_t
void() uvc_status_callback_t(enum uvc_status_class status_class, int event, int selector, enum uvc_status_attribute status_attribute, void *data, size_t data_len, void *user_ptr)
Definition: libuvc.h:335
uvc_frame
Definition: libuvc.h:364
uvc_set_focus_rel
uvc_error_t uvc_set_focus_rel(uvc_device_handle_t *devh, int8_t focus_rel, uint8_t speed)
uvc_set_power_mode
uvc_error_t uvc_set_power_mode(uvc_device_handle_t *devh, enum uvc_device_power_mode mode)
uvc_processing_unit::bUnitID
uint8_t bUnitID
Definition: libuvc.h:301
uvc_processing_unit::next
struct uvc_processing_unit * next
Definition: libuvc.h:299
uvc_device_t
struct uvc_device uvc_device_t
Definition: libuvc.h:260
uvc_input_terminal::bmControls
uint64_t bmControls
Definition: libuvc.h:289
UVC_VS_OUTPUT_HEADER
@ UVC_VS_OUTPUT_HEADER
Definition: libuvc.h:58
UVC_VS_FORMAT_STREAM_BASED
@ UVC_VS_FORMAT_STREAM_BASED
Definition: libuvc.h:69
uvc_get_ae_mode
uvc_error_t uvc_get_ae_mode(uvc_device_handle_t *devh, uint8_t *mode, enum uvc_req_code req_code)
uvc_extension_unit_t
struct uvc_extension_unit uvc_extension_unit_t
uvc_frame::capture_time
struct timeval capture_time
Definition: libuvc.h:380
uvc_free_device_descriptor
void uvc_free_device_descriptor(uvc_device_descriptor_t *desc)
uvc_extension_unit::bUnitID
uint8_t bUnitID
Definition: libuvc.h:312
uvc_get_processing_units
const uvc_processing_unit_t * uvc_get_processing_units(uvc_device_handle_t *devh)
uvc_get_focus_rel
uvc_error_t uvc_get_focus_rel(uvc_device_handle_t *devh, int8_t *focus_rel, uint8_t *speed, enum uvc_req_code req_code)
uvc_set_status_callback
void uvc_set_status_callback(uvc_device_handle_t *devh, uvc_status_callback_t cb, void *user_ptr)
UVC_COMPOSITE_CONNECTOR
@ UVC_COMPOSITE_CONNECTOR
Definition: libuvc.h:241
uvc_et_type
uvc_et_type
Definition: libuvc.h:239
uvc_extension_unit::guidExtensionCode
uint8_t guidExtensionCode[16]
Definition: libuvc.h:314
uvc_device_descriptor::bcdUVC
uint16_t bcdUVC
Definition: libuvc.h:352
uvc_stream_open_ctrl
uvc_error_t uvc_stream_open_ctrl(uvc_device_handle_t *devh, uvc_stream_handle_t **strmh, uvc_stream_ctrl_t *ctrl)
uvc_input_terminal::wOcularFocalLength
uint16_t wOcularFocalLength
Definition: libuvc.h:287
uvc_get_white_balance_component
uvc_error_t uvc_get_white_balance_component(uvc_device_handle_t *devh, uint16_t *blue, uint16_t *red, enum uvc_req_code req_code)
uvc_stream_ctrl::wCompQuality
uint16_t wCompQuality
Definition: libuvc.h:408
uvc_get_privacy
uvc_error_t uvc_get_privacy(uvc_device_handle_t *devh, uint8_t *privacy, enum uvc_req_code req_code)
UVC_GET_MAX
@ UVC_GET_MAX
Definition: libuvc.h:157
uvc_get_input_terminals
const uvc_input_terminal_t * uvc_get_input_terminals(uvc_device_handle_t *devh)
uvc_format_desc::bmFlags
uint8_t bmFlags
Definition: libuvc.h:138
uvc_get_device
uvc_device_t * uvc_get_device(uvc_device_handle_t *devh)
uvc_get_zoom_abs
uvc_error_t uvc_get_zoom_abs(uvc_device_handle_t *devh, uint16_t *focal_length, enum uvc_req_code req_code)
uvc_output_terminal::next
struct uvc_output_terminal * next
Definition: libuvc.h:293
UVC_CT_IRIS_RELATIVE_CONTROL
@ UVC_CT_IRIS_RELATIVE_CONTROL
Definition: libuvc.h:181
uvc_frame_desc::dwMaxFrameInterval
uint32_t dwMaxFrameInterval
Definition: libuvc.h:104
UVC_CT_ZOOM_ABSOLUTE_CONTROL
@ UVC_CT_ZOOM_ABSOLUTE_CONTROL
Definition: libuvc.h:182
uvc_stream_ctrl::bInterfaceNumber
uint8_t bInterfaceNumber
Definition: libuvc.h:418
UVC_ERROR_TIMEOUT
@ UVC_ERROR_TIMEOUT
Definition: libuvc.h:33
uvc_get_contrast_auto
uvc_error_t uvc_get_contrast_auto(uvc_device_handle_t *devh, uint8_t *contrast_auto, enum uvc_req_code req_code)
UVC_GET_LEN
@ UVC_GET_LEN
Definition: libuvc.h:159
uvc_format_desc::bNumFrameDescriptors
uint8_t bNumFrameDescriptors
Definition: libuvc.h:127
uvc_stream_ctrl::handle
uvc_stream_handle_t * handle
Definition: libuvc.h:419
uvc_get_focus_abs
uvc_error_t uvc_get_focus_abs(uvc_device_handle_t *devh, uint16_t *focus, enum uvc_req_code req_code)
UVC_ERROR_INTERRUPTED
@ UVC_ERROR_INTERRUPTED
Definition: libuvc.h:39
uvc_processing_unit::bmControls
uint64_t bmControls
Definition: libuvc.h:305
uvc_get_stream_ctrl_format_size
uvc_error_t uvc_get_stream_ctrl_format_size(uvc_device_handle_t *devh, uvc_stream_ctrl_t *ctrl, uint32_t fourcc, int width, int height, int fps)
UVC_PU_HUE_AUTO_CONTROL
@ UVC_PU_HUE_AUTO_CONTROL
Definition: libuvc.h:212
uvc_get_pantilt_rel
uvc_error_t uvc_get_pantilt_rel(uvc_device_handle_t *devh, int8_t *pan_rel, uint8_t *pan_speed, int8_t *tilt_rel, uint8_t *tilt_speed, enum uvc_req_code req_code)
uvc_set_white_balance_temperature_auto
uvc_error_t uvc_set_white_balance_temperature_auto(uvc_device_handle_t *devh, uint8_t temperature_auto)
uvc_probe_stream_ctrl
uvc_error_t uvc_probe_stream_ctrl(uvc_device_handle_t *devh, uvc_stream_ctrl_t *ctrl)
uvc_error
uvc_error
Definition: libuvc.h:17
UVC_VS_FORMAT_FRAME_BASED
@ UVC_VS_FORMAT_FRAME_BASED
Definition: libuvc.h:67
uvc_format_desc::bDefaultFrameIndex
uint8_t bDefaultFrameIndex
Definition: libuvc.h:141
UVC_CT_ZOOM_RELATIVE_CONTROL
@ UVC_CT_ZOOM_RELATIVE_CONTROL
Definition: libuvc.h:183
uvc_frame_desc::dwMinFrameInterval
uint32_t dwMinFrameInterval
Definition: libuvc.h:102
uvc_device_descriptor::idVendor
uint16_t idVendor
Definition: libuvc.h:348
uvc_free_frame
void uvc_free_frame(uvc_frame_t *frame)
uvc_stream_ctrl
Definition: libuvc.h:401
UVC_PU_WHITE_BALANCE_COMPONENT_AUTO_CONTROL
@ UVC_PU_WHITE_BALANCE_COMPONENT_AUTO_CONTROL
Definition: libuvc.h:209
uvc_frame::data_bytes
size_t data_bytes
Definition: libuvc.h:368
uvc_get_exposure_rel
uvc_error_t uvc_get_exposure_rel(uvc_device_handle_t *devh, int8_t *step, enum uvc_req_code req_code)
UVC_PU_WHITE_BALANCE_COMPONENT_CONTROL
@ UVC_PU_WHITE_BALANCE_COMPONENT_CONTROL
Definition: libuvc.h:208
UVC_CT_DIGITAL_WINDOW_CONTROL
@ UVC_CT_DIGITAL_WINDOW_CONTROL
Definition: libuvc.h:190
uvc_get_white_balance_temperature_auto
uvc_error_t uvc_get_white_balance_temperature_auto(uvc_device_handle_t *devh, uint8_t *temperature_auto, enum uvc_req_code req_code)
libuvc_config.h
uvc_format_desc::prev
struct uvc_format_desc * prev
Definition: libuvc.h:122
uvc_get_iris_rel
uvc_error_t uvc_get_iris_rel(uvc_device_handle_t *devh, uint8_t *iris_rel, enum uvc_req_code req_code)
uvc_allocate_frame
uvc_frame_t * uvc_allocate_frame(size_t data_bytes)
uvc_device_descriptor::product
const char * product
Definition: libuvc.h:358
uvc_frame_desc::dwDefaultFrameInterval
uint32_t dwDefaultFrameInterval
Definition: libuvc.h:100
uvc_set_ctrl
int uvc_set_ctrl(uvc_device_handle_t *devh, uint8_t unit, uint8_t ctrl, void *data, int len)
uvc_unref_device
void uvc_unref_device(uvc_device_t *dev)
uvc_status_attribute
uvc_status_attribute
Definition: libuvc.h:325
UVC_PU_POWER_LINE_FREQUENCY_CONTROL
@ UVC_PU_POWER_LINE_FREQUENCY_CONTROL
Definition: libuvc.h:201
uvc_stream_ctrl::dwFrameInterval
uint32_t dwFrameInterval
Definition: libuvc.h:405
uvc_input_terminal::prev
struct uvc_input_terminal * prev
Definition: libuvc.h:280
uvc_get_analog_video_lock_status
uvc_error_t uvc_get_analog_video_lock_status(uvc_device_handle_t *devh, uint8_t *status, enum uvc_req_code req_code)
UVC_ERROR_PIPE
@ UVC_ERROR_PIPE
Definition: libuvc.h:37