结构体v4l2_streamparm来描述视频流的属性,它由type和联合体parm构成。type同上,由于选的是V4L2_BUF_TYPE_VIDEO_CAPTURE,所以仅需设定parm中的v412_capture型结构体capture即可。在其中, v4l2_fract型结构体timeperframe表示平均每一帧所占的时间,由其元素numerator和denominator共同决定,该时长为numerator/denominator;...
v4l2_device:对视频设备的整体进行抽象,可以看成是一个纽带,将各个子设备联系在一起,通常它会嵌入在其他结构体中以提供v4l2框架的功能,比如strcut isp_device;v4l2_device有一个subdevs链表存放子设备。v4l2_device有一个mdev指向media_device结构。 v4l2_subdev:对子设备进行抽象,该结构体中包含的struct v4l2_subdev_...
(struct v4l2_subdev *sd, struct v4l2_fract *aspect); int (*g_frame_interval)(struct v4l2_subdev *sd, struct v4l2_subdev_frame_interval *interval); int (*s_frame_interval)(struct v4l2_subdev *sd, struct v4l2_subdev_frame_interval *interval); int (*s_dv_timings)(struct v4l2_subdev *...
{enum v4l2_buf_type type;//数据流的类型,应用程序设置struct v4l2_rect bounds;//这是 camera 的镜头能捕捉到的窗口大小的局限struct v4l2_rect defrect;//定义默认窗口大小,包括起点位置及长,宽的大小,大小以像素为单位struct v4l2_fract pixelaspect;//定义了图片的宽高比}; 6.2 设置窗口取景参数 VIDIOC_G...
对于捕获设备而言,parm.capture字段是要关注的内容,这个结构体如下:structv4l2_captureparm { __u32 capability; __u32 capturemode; structv4l2_fract timeperframe; __u32 extendedmode; __u32 readbuffers; __u32 reserved[4]; }; timeperframe字段用于指定想要使用的帧频率,它又是一个结构体:structv4l2...
(struct file *file, void *fh, int buf_type, struct v4l2_fract *aspect); int (*vidioc_g_selection)(struct file *file, void *fh, struct v4l2_selection *s); int (*vidioc_s_selection)(struct file *file, void *fh, struct v4l2_selection *s); int (*vidioc_g_jpegcomp)(struct file ...
对于捕获设备而言,parm.capture字段是要关注的内容,这个结构体如下: struct v4l2_captureparm { __u32 capability; __u32 capturemode; structv4l2_fract timeperframe; __u32 extendedmode; __u32 readbuffers; __u32 reserved[4]; }; timeperframe字段用于指定想要使用的帧频率,它又是一个结构体: ...
structv4l2_fract pixelaspect; }; // 设置缩放 [html]view plaincopy VIDIOC_G_CROP,VIDIOC_S_CROP int ioctl(intfd, int request, struct v4l2_crop *argp); int ioctl(intfd, int request, const struct v4l2_crop *argp); struct v4l2_crop ...
对于输出设备,其结构体如下: struct v4l2_outputparm { __u32 capability; __u32 outputmode; struct v4l2_fract timeperframe; __u32 extendedmode; __u32 writebuffers; __u32 reserved[4]; };capability, timeperframe, 和 extendedmode字段与捕获设备中的意义相同。outputmode和writebuffers与capturemode...
struct v4l2_fract pixelaspect // 定义了图片的宽高比 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 应用程序可以使用 VIDIOC_G_CROP 和 VIDIOC_S_CROP 来获得对这些窗口参数并对其进行设置,也就是所谓的 Scaling Adjustments ,因为硬件可能在这些窗口参数设置上具有很多限制,当需要对...