本文主要是介绍5 自研rk3566/rk3588+rgbd相机之v4l2-rgb出图框架开发二,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
自研rk3566/rk3588+rgbd相机之v4l2出图框架开发二
- 1 v4l2框架介绍
- 打开视频设备文件节点
- 初始化视频设备:
- 启动视频采集:
- 停止视频采集:
- 关闭视频设备节点:
- 2 linux-v4l2 rgb-sensor出图格式配置
- 配置脚本如下:v4l2-sc2310-cap.sh
- 配置脚本如下:v4l2-gc2093-cap.sh
- 配置脚本如下:v4l2-gc2053-cap.sh
- 3 linux-v4l2 rgb-sensor出图测试程序
1 v4l2框架介绍
v4l2是video for linux two的简写,是用于linux设备从内核空间到用户空间传输图像数据的常用框架,是应用程序从驱动程序接收图像数据的桥梁或媒介,出图中扮演重要角色。其常用功能框架有如下几个部分组成:
打开视频设备文件节点
通常是/dev/video*
初始化视频设备:
取得设备的capability检查是否有视频捕获功能查询当前设备支持的视频格式设置视频捕获格式、获取实际的视频格式帧类型V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE; 初始化内存映射 init_mmap_video(fd);
启动视频采集:
开始采集视频,打开设备视频流ioctl(fd, VIDIOC_STREAMON, &type)
循环采集视频流:
取出FIFO缓存中已经采样的帧缓存
ioctl(fd, VIDIOC_DQBUF,&buf)
//将已经捕获好视频的内存拉出已捕获视频的队列
将刚刚处理完的缓冲重新入队列尾,这样可以循环采集 ioctl(fd, VIDIOC_QBUF, &buf)
停止视频采集:
ioctl(fd, VIDIOC_STREAMOFF, &type)
关闭视频设备节点:
解除映射 munmap(usr_buf_video[i].start, u
这篇关于5 自研rk3566/rk3588+rgbd相机之v4l2-rgb出图框架开发二的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!