DMABUFF
1.DMABUF框架提供了在多设备间共享缓存的通用方法,支持DMABUF的设备驱动可以将一个DMA缓存以文件句柄的方式输出到用户空间(输出
者规则),以文件句柄的方式从用户空间获取一个DMA缓存,这个文件句柄是之前其他或相同的设备所输出的(引入者规则),或都是。
V4L2缓存以DMABUF文件句柄方式进行DMABUF输出。
2.支持I/O流方法的输入和输出设备在通过VIDIOC_QUERYCAP ioctl查询时,返回的struct v4l2_capability中capabilities成员会包含
V4L2_CAP_STREAMING标签。通过DMABUF文件句柄引入DMABUF缓存决定了在调用VIDIOC_REQBUFS时内存类型是否能设定为V4L2_MEMORY_DMABUF。
3.这种I/O方法专用于在不同设备间共享DMA缓存,这些设备可以是V4L设备或是其他视频相关设备(如DRM)。缓存(面)通过应用程序控制
驱动来申请。然后,这些缓存通过使用特殊API以文件句柄的方式输出给应用程序,交换的只有文件句柄。句柄和信息存在于struct v4l2_buffer
(多平面API中是struct v4l2_plane)。在VIDIOC_REQBUFS ioctl执行后驱动必须切换到DMABUF I/O模式中。
4.VIDIOC_STREAMOFF会将所有序列中的缓存都移除,并且解锁。在多任务系统中没有“当前”的概念,所以如果程序需要与其他事件进行同步,
需要通过捕捉或输出缓存的struct v4l2_buffer中的timestamp成员进行。
6.声明了DMABUF流方法的驱动必须支持VIDIOC_REQBUFS,VIDIOC_QBUF,VIDIOC_DQBUF,VIDIOC_STREAMON,VIDIOC_STREAMOFF这些ioctl,
以及select()和poll()函数。
7.尽管缓冲区通常是循环的,但应用程序可以在每个VIDIOC_QBUF调用时传递不同的DMABUF描述符。
参考:http://blog.csdn.net/lg1259156776/article/details/52399571
DMABUFF的更多相关文章
随机推荐
- 使用 Python 的 Socket 模块构建一个 UDP 扫描工具
译文:oschina 英文:bt3gl 当涉及到对一些目标网络的侦察时,出发点无疑是首先发现宿主主机.这个任务还可能包含嗅探和解析网络中数据包的能力. 几周前,我曾经谈到了如何使用Wireshark来 ...
- 【转】ArcGIS API for Silverlight/WPF 2.1学习笔记(四)
七.Editing ArcGIS Server 10提供了: 通过feature service,在Web上编辑Feature layers的geographic data的功能. 通过geome ...
- 20170622xlVBA多部门分类汇总同类合并单元格
Public Sub Basic_CodeFrame() AppSettings On Error GoTo ErrHandler Dim StartTime, UsedTime As Variant ...
- JS-构造函数2
一.如何创建对象 1.对象字面量 var obj1={ name:"吻别", singer:"张学友", type:"流行" } 2.构造函 ...
- linux安装mysqlclient报错
错误信息 Collecting mysqlclient Using cached mysqlclient-1.3.12.tar.gz Complete output from command pyth ...
- ubuntu 用户和root权限转换
1,用户权限要转换为root 输入:sudo su 或者sudo -i 然后按照提示输入相应的密码你就可以转化为root用户了. 2,root权限切换成用户权限 输入:su 如果是服务器那就输 ...
- conv1d UpSampling1D aotoencoder 自编码代码摘录
https://www.quora.com/How-do-I-implement-a-1D-Convolutional-autoencoder-in-Keras-for-numerical-datas ...
- Openwrt Support MINI-PCIE EC20 (6)
1 Scope of Document This document describes MINI PCIE usb hardware design, for EC20 4G module 2 ...
- C++零散知识点
CString strDayofWeek = _T(""); 的意思 1.sComment是自定义的CString类型变量,代表什么意思自己说了算2._T是一个宏,作用是让你的程序 ...
- MyEclipse移动开发教程:迁移HTML5移动项目到PhoneGap(二)
MyEclipse开年钜惠 在线购买低至75折!立即开抢>> [MyEclipse最新版下载] 二.将文件从HTML5项目复制到PhoneGap项目中 1. 在HTML5 app项目的ww ...