2. 媒体设备模型¶
发现设备内部拓扑结构并在运行时对其进行配置是媒体控制器 API 的目标之一。为了实现这个目标,硬件设备和 Linux 内核接口被建模为有向图上的图对象。构成该图的对象类型有:
实体是基本的媒体硬件或软件构建块。它可以对应于各种逻辑块,例如物理硬件设备(例如 CMOS 传感器)、逻辑硬件设备(片上系统图像处理管道中的构建块)、DMA 通道或物理连接器。
接口是 Linux 内核用户空间 API 接口的图表示,例如设备节点或 sysfs 文件,用于控制图中一个或多个实体。
焊盘是数据连接端点,实体可以通过它与其他实体交互。实体产生的数据(不限于视频)从实体的输出流向一个或多个实体输入。焊盘不应与芯片边界上的物理引脚混淆。
数据链路是两个焊盘之间的点对点定向连接,可以位于同一实体上或不同实体上。数据从源焊盘流向接收焊盘。
接口链路是 Linux 内核接口与实体之间的点对点双向控制连接。
辅助链路是指示两个实体形成单个逻辑单元的点对点连接。例如,这可以表示特定的摄像头传感器和镜头控制器形成单个物理模块的事实,这意味着该镜头控制器驱动此摄像头传感器的镜头。