Go to the documentation of this file.
35 #include <sys/ioctl.h>
36 #include <linux/usb/video.h>
37 #include <linux/uvcvideo.h>
38 #include <linux/videodev2.h>
43 #ifdef V4L2_META_FMT_UVC
46 #pragma message ( "\nLibrealsense notification: V4L2_META_FMT_UVC was not defined, adding metadata constructs")
52 #define V4L2_META_FMT_UVC v4l2_fourcc('U', 'V', 'C', 'H')
54 #ifndef V4L2_CAP_META_CAPTURE
55 #define V4L2_CAP_META_CAPTURE 0x00800000
56 #endif // V4L2_CAP_META_CAPTURE
58 #endif // V4L2_META_FMT_UVC
60 #ifndef V4L2_META_FMT_D4XX
61 #define V4L2_META_FMT_D4XX v4l2_fourcc('D', '4', 'X', 'X')
66 #define LOG_DEBUG_V4L(...) do { CLOG(DEBUG ,"librealsense") << __VA_ARGS__; } while(false)
68 #define LOG_DEBUG_V4L(...)
113 static std::map<std::string, std::recursive_mutex>
_dev_mutex;
118 static int xioctl(
int fh,
unsigned long request,
void *
arg);
211 v4l2_buffer
buf= v4l2_buffer(),
212 std::shared_ptr<platform::buffer> data_buf=
nullptr);
223 std::array<kernel_buf_guard, e_max_kernel_buf_type>&
get_buffers()
232 std::array<kernel_buf_guard, e_max_kernel_buf_type>
buffers;
274 bool pull_video_with_metadata(std::shared_ptr<v4l2_buffer>& video_buffer, std::shared_ptr<v4l2_buffer>& md_buffer,
int& video_fd,
int& md_fd);
315 const std::string&)>
action);
319 static bool is_usb_path_valid(
const std::string& usb_video_path,
const std::string &dev_name,
320 std::string &busnum, std::string &devnum, std::string &devpath);
329 std::string& bus_info, std::string& card);
365 std::vector<stream_profile>
get_profiles()
const override;
367 void lock()
const override;
368 void unlock()
const override;
380 virtual void streamon()
const override;
constexpr auto LOCAL_V4L2_BUF_TYPE_META_CAPTURE
def info(name, value, persistent=False)
rs2_option
Defines general configuration controls. These can generally be mapped to camera UVC controls,...
GLuint const GLchar * name
#define LOG_DEBUG_V4L(...)
constexpr bool metadata_node
GLbitfield GLuint64 timeout
GLenum GLuint GLenum GLsizei const GLchar * buf
librealsense2
Author(s): LibRealSense ROS Team
autogenerated on Thu Dec 22 2022 03:13:13