栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何获取Linux(ubuntu)上的视频捕获设备(网络摄像机)列表?(C / C ++)

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何获取Linux(ubuntu)上的视频捕获设备(网络摄像机)列表?(C / C ++)

这是我编写的代码段。大概是一本书。我想您可以遍历所有/ dev / videoN节点并获取信息。

#include <stdio.h>#include <unistd.h>#include <fcntl.h>#include <sys/ioctl.h>#include <linux/videodev.h>int main(){    int fd;    struct video_capability video_cap;    struct video_window     video_win;    struct video_picture   video_pic;    if((fd = open("/dev/video0", O_RDONLY)) == -1){        perror("cam_info: Can't open device");        return 1;    }    if(ioctl(fd, VIDIOCGCAP, &video_cap) == -1)        perror("cam_info: Can't get capabilities");    else {        printf("Name:tt '%s'n", video_cap.name);        printf("Minimum size:t%d x %dn", video_cap.minwidth, video_cap.minheight);        printf("Maximum size:t%d x %dn", video_cap.maxwidth, video_cap.maxheight);    }    if(ioctl(fd, VIDIOCGWIN, &video_win) == -1)        perror("cam_info: Can't get window information");    else        printf("Current size:t%d x %dn", video_win.width, video_win.height);    if(ioctl(fd, VIDIOCGPICT, &video_pic) == -1)        perror("cam_info: Can't get picture information");    else        printf("Current depth:t%dn", video_pic.depth);    close(fd);    return 0;}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/367954.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号