Functions
stream.c File Reference
#include "libuvc.h"
#include "libuvc_internal.h"
Include dependency graph for stream.c:

Go to the source code of this file.

Functions

static uvc_frame_desc_t_uvc_find_frame_desc_stream_if (uvc_streaming_interface_t *stream_if, uint16_t format_id, uint16_t frame_id)
 
static uint8_t _uvc_frame_format_matches_guid (uint32_t fourcc, uint8_t guid[16])
 
static uvc_stream_handle_t_uvc_get_stream_by_interface (uvc_device_handle_t *devh, int interface_idx)
 
static uvc_streaming_interface_t * _uvc_get_stream_if (uvc_device_handle_t *devh, int interface_idx)
 
void _uvc_populate_frame (uvc_stream_handle_t *strmh)
 
void _uvc_process_payload (uvc_stream_handle_t *strmh, uint8_t *payload, size_t payload_len)
 
void LIBUSB_CALL _uvc_stream_callback (struct libusb_transfer *transfer)
 
void _uvc_swap_buffers (uvc_stream_handle_t *strmh)
 
void_uvc_user_caller (void *arg)
 
uvc_frame_desc_tuvc_find_frame_desc (uvc_device_handle_t *devh, uint16_t format_id, uint16_t frame_id)
 
uvc_frame_desc_tuvc_find_frame_desc_stream (uvc_stream_handle_t *strmh, uint16_t format_id, uint16_t frame_id)
 
static uint32_t uvc_frame_format_for_guid (uint8_t guid[16])
 
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_error_t uvc_probe_stream_ctrl (uvc_device_handle_t *devh, uvc_stream_ctrl_t *ctrl)
 
uvc_error_t uvc_query_stream_ctrl (uvc_device_handle_t *devh, uvc_stream_ctrl_t *ctrl, uint8_t probe, enum uvc_req_code req)
 
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)
 
void uvc_stop_streaming (uvc_device_handle_t *devh)
 Stop streaming videoCloses all streams, ends threads and cancels pollers. More...
 
void uvc_stream_close (uvc_stream_handle_t *strmh)
 Close stream.Closes stream, frees handle and all streaming resources. More...
 
uvc_error_t uvc_stream_ctrl (uvc_stream_handle_t *strmh, uvc_stream_ctrl_t *ctrl)
 Reconfigure stream with a new stream format.This may be executed whether or not the stream is running. More...
 
uvc_error_t uvc_stream_get_frame (uvc_stream_handle_t *strmh, uvc_frame_t **frame, int32_t timeout_us)
 
uvc_error_t uvc_stream_open_ctrl (uvc_device_handle_t *devh, uvc_stream_handle_t **strmhp, uvc_stream_ctrl_t *ctrl)
 
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_error_t uvc_stream_stop (uvc_stream_handle_t *strmh)
 Stop stream.Stops stream, ends threads and cancels pollers. More...
 

Function Documentation

static uvc_frame_desc_t* _uvc_find_frame_desc_stream_if ( uvc_streaming_interface_t *  stream_if,
uint16_t  format_id,
uint16_t  frame_id 
)
static

Definition at line 214 of file stream.c.

static uint8_t _uvc_frame_format_matches_guid ( uint32_t  fourcc,
uint8_t  guid[16] 
)
static

Definition at line 76 of file stream.c.

static uvc_stream_handle_t* _uvc_get_stream_by_interface ( uvc_device_handle_t devh,
int  interface_idx 
)
static

Definition at line 608 of file stream.c.

static uvc_streaming_interface_t* _uvc_get_stream_if ( uvc_device_handle_t devh,
int  interface_idx 
)
static

Definition at line 619 of file stream.c.

void _uvc_populate_frame ( uvc_stream_handle_t strmh)
Todo:
this stuff that hits the main config cache should really happen in start() so that only one thread hits these data. all of this stuff is going to be reopen_on_change anyway
Todo:
set the frame time

Definition at line 927 of file stream.c.

void _uvc_process_payload ( uvc_stream_handle_t strmh,
uint8_t *  payload,
size_t  payload_len 
)
Todo:
we should be checking the end-of-header bit
Todo:
read the SOF token counter

Definition at line 403 of file stream.c.

void LIBUSB_CALL _uvc_stream_callback ( struct libusb_transfer *  transfer)

Definition at line 500 of file stream.c.

void _uvc_swap_buffers ( uvc_stream_handle_t strmh)

Definition at line 370 of file stream.c.

void * _uvc_user_caller ( void arg)

Definition at line 895 of file stream.c.

uvc_frame_desc_t * uvc_find_frame_desc ( uvc_device_handle_t devh,
uint16_t  format_id,
uint16_t  frame_id 
)

Definition at line 243 of file stream.c.

uvc_frame_desc_t * uvc_find_frame_desc_stream ( uvc_stream_handle_t strmh,
uint16_t  format_id,
uint16_t  frame_id 
)

Definition at line 232 of file stream.c.

static uint32_t uvc_frame_format_for_guid ( uint8_t  guid[16])
static

Definition at line 80 of file stream.c.

uvc_error_t uvc_probe_stream_ctrl ( uvc_device_handle_t devh,
uvc_stream_ctrl_t ctrl 
)
Todo:
make sure that worked

Definition at line 349 of file stream.c.

uvc_error_t uvc_query_stream_ctrl ( uvc_device_handle_t devh,
uvc_stream_ctrl_t ctrl,
uint8_t  probe,
enum uvc_req_code  req 
)
Todo:
support UVC 1.1
Todo:
support UVC 1.1

Definition at line 91 of file stream.c.



librealsense
Author(s): Sergey Dorodnicov , Mark Horn , Reagan Lopez
autogenerated on Fri Mar 13 2020 03:16:18