V4L2 Userspace API -- interfaces
4.1 Video Capture Interface 4.13 Sub-device Interface 4.13.1 Controls 大部分 V4L2 controls 都由 sub-device hardware 实现,drivers 通常会把所有 controls 合并起来,通过 video device nodes 暴露给 userspace。 复杂的设备有时会在不同的硬件中实现相同的 control,例如对比度调整、白平衡。这时可以通过 sub-device 的 node 将 control 暴露出去,区别是通过不同的 sub-device 来实现某个功能的调整。 4.13.3 Pad-level Formats 图像的 format 通常使用 format 和 selection ioctl 在 video capture/output devices 之间协商。driver 负责将 video pipeline 中每个 block 都设置好该配置。 然而对于一些复杂的设备,相同的 pipeline output size 可以通过不同的硬件配置达到。比如图像缩放可以通过 sensor 或者 isp 实现。 sensor 实现缩放一般质量更低,但可以实现更高的帧率。根据应用场景不同 (图像质量 or 速度),pipeline 必须要下不同的配置,app 必须对 pipeline 中的每一个点去下配置。...