zl程序教程

您现在的位置是:首页 >  硬件

当前栏目

V4L2 获取设备支持的分辨率

设备 获取 支持 分辨率 V4l2
2023-09-14 09:16:11 时间

{//获取摄像头所支持的分辨率

    enum v4l2_buf_type type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
    struct v4l2_fmtdesc fmt_1;
    struct v4l2_frmsizeenum frmsize;
    struct v4l2_frmivalenum frmival;

    fmt_1.index = 0;
    fmt_1.type = type;
    while (ioctl(fd, VIDIOC_ENUM_FMT, &fmt_1) >= 0) {
      frmsize.pixel_format = fmt_1.pixelformat;
      frmsize.index = 0;
      while (ioctl(fd, VIDIOC_ENUM_FRAMESIZES, &frmsize) >= 0){

if(frmsize.type == V4L2_FRMSIZE_TYPE_DISCRETE){
 printf("line:%d %dx%d\n",__LINE__, frmsize.discrete.width, frmsize.discrete.height);
}else if(frmsize.type == V4L2_FRMSIZE_TYPE_STEPWISE){
 printf("line:%d %dx%d\n",__LINE__, frmsize.discrete.width, frmsize.discrete.height);
}

frmsize.index++;
      }

      fmt_1.index++;
    }
  }